fairy (Challenge 9)
割と解いた人が少なかった問題でした。
We need to access a thin client to get trade secret of rival company.
However the client needs to be unlocked at boot sequence. Can you unlock?
This file may help you.
% file 250d3a31dee7f62d57ea3d17f544b5e4750e8039 250d3a31dee7f62d57ea3d17f544b5e4750e8039: tcpdump capture file (little-endian) - version 2.4 (Ethernet, capture length 65535)
Wiresharkで開いてみたところ、TFTPでinitrd.gzとかを送信しているみたいです。
pxelinux.config/defaultにパスワードのハッシュがありました。
default menu.c32 label debian menu passwd $4$OVtcFw7z$9S2RpE0jMdbV1Z/+daXh2RGQtDM$ kernel linux append initrd=initrd.gz
あとはjohn the ripperに投げるだけですが、このままの形では無理なのでうまく整形します。
use strict; use warnings; use utf8; use MIME::Base64; my $flag = '$4$OVtcFw7z$9S2RpE0jMdbV1Z/+daXh2RGQtDM$'; my ($salt, $hash) = $flag =~ /\$4\$(.+)\$(.+)\$/; $hash = decode_base64($hash); $hash = unpack 'H*', $hash; print "\$SHA1p\$$salt\$$hash";
% john --format=sha1-gen --show password.john ?:goodluck 1 password hash cracked, 0 left
となるので、goodluckがflagでした。