概要
HackPackCTFに参加しました。
自身のチームは381チーム中67位でした。(Top17%ほど?)
クリプトやバイナリ系が弱いと分かったので、もっと頑張ります!
あとWebも。全部じゃん
Cat Me if You Can
There's a flag hiding in plain sight, Our cat has been trying to get it for a while now, but it keeps escaping him at the last moment. Can you help him out? Author: Chika
僕の大好きなBash × Miscの問題です。
アプローチとしては、Catが使えなくなってしまったので、Catを自作してやる必要があります。
┌──(ayato㉿AyatoDesktop)-[~]
└─$ nc cha.hackpack.club 41708
bash-5.1$ ls
flag.txt
bash-5.1$ cat flag.txt
hissssss
cat: flag.txt
bash-5.1$ cat *
hissssss
cat: flag.txt
BashでCatを再実装するには以下のようなコマンドでできます。
alias cat='while IFS= read -r line || [[ -n $line ]]; do echo "$line"; done < '
それではやってみましょう。
bash-5.1$ alias cat='while IFS= read -r line || [[ -n $line ]]; do echo "$line"; done < '
bash: alias: command not found
Aliasが使えないようなので直接読み込ませます。
bash-5.1$ while IFS= read -r line || [[ -n $line ]]; do echo "$line"; done < flag.txt
flag{(^._.^)_m3ow_me0w_(^._.^)}
まとめ
とても面白い問題でした!
やっぱりBashは楽しい。