@toRi

できたてほやほやのエンジニアです。インフラ、セキュリティ系です。ふんわり命がけ(´・ω・)

picoCTF 2018 HEEEEEEERE'S Johnny! - Points: 100

f:id:loveeeeeebird:20200111140131p:plain

nc 2018shell.picoctf.com 35225 に接続してみると、ログインを求められます。

Linuxのetc/passwdとect/shadowの内容が書かれたファイルが問題で与えられているので、それを参考にログインしていく問題です。

passwadファイルの中身を見てみると、ユーザーはrootであることがわかります。 shadowファイルにはパスワードが書かれていますが、ハッシュ化されているので通常解読できません。

johnを使ってパスワードを求めてみます。 最初、CentOSの環境でjohnをyumでインストールしようとしたらできなかったので、英語のサイトを参考にしながらrpmでインストールしようとしたが、、、依存関係やその他もろもろ自分でできる能力がなくできませんでした。。。いつもyumに頼っているつけが。。。

気を取り直してkaliLinuxでjohnをインストールすることにしました。(いや最初からこっちでやれ)

無事インストールができたので、johnを使ってみます。 初めてjohnを使うとき、johnのディレクトリが勝手に作られました。 私はその作られたディレクトリの/.john/下にshadowファイルを置き、以下のように実行しました。

$ john shadow Using default input encoding: UTF-8 Loaded 1 password hash (sha512crypt, crypt(3) $6$ [SHA512 256/256 AVX2 4x]) Cost 1 (iteration count) is 5000 for all loaded hashes Will run 6 OpenMP threads Proceeding with single, rules:Single Press 'q' or Ctrl-C to abort, almost any other key for status Warning: Only 5 candidates buffered for the current salt, minimum 24 needed for performance. Almost done: Processing the remaining buffered candidate passwords, if any. Warning: Only 6 candidates buffered for the current salt, minimum 24 needed for performance. Proceeding with wordlist:/usr/share/john/password.lst, rules:Wordlist hellokitty (root) 1g 0:00:00:01 DONE 2/3 (2020-01-11 12:02) 0.9523g/s 4999p/s 4999c/s 4999C/s keller..karla Use the "--show" option to display all of the cracked passwords reliably Session completed

hellokitty がパスワードのようです。ユーザーもrootと教えてくれました。

これを使ってもう一度ログインに挑戦してみます。

$ nc 2018shell.picoctf.com 35225 Username: root Password: hellokitty picoCTF{J0hn_1$_R1pp3d_99c35524}

フラグがありました。 楽しそうなのでもっとjohnを使ってみたいな。