CaptureTheFlagイベントの質問に答えることができませんでしたが、質問はまだ私を悩ませます。ここで質問を共有したいと思います。解決策を知っている場合は私を助けてください。
質問:Linuxマシンのシャドウファイルがあります。管理者パスワードを見つけてください。そして、シャドウファイルの内容は
root:*:17277:0:99999:7:::
daemon:*:17272:0:99999:7:::
bin:*:17272:0:99999:7:::
sys:*:17272:0:99999:7:::
sync:*:17272:0:99999:7:::
games:*:17272:0:99999:7:::
man:*:17272:0:99999:7:::
lp:*:17272:0:99999:7:::
mail:*:17272:0:99999:7:::
news:*:17272:0:99999:7:::
uucp:*:17272:0:99999:7:::
proxy:*:17272:0:99999:7:::
www-data:*:17272:0:99999:7:::
backup:*:17272:0:99999:7:::
list:*:17272:0:99999:7:::
irc:*:17272:0:99999:7:::
gnats:*:17272:0:99999:7:::
nobody:*:17272:0:99999:7:::
avahi:*:17272:0:99999:7:::
sshd:*:17272:0:99999:7:::
admin:$6$/iIQV39h$ZpQpavCJ5xo2GshqMtkSMsBxaGA9WBwqmtBwyszeE9zdy9546eBb45LdqKyF9/BE3nAS.w/26dJBZ74mDB2Kl/:17401:0:99999:7:::
入手可能な情報から、パスワードはSHA512とソルトを使用してハッシュされていることがわかりました。
SHA512は非常に強力な一方向ハッシュアルゴリズムであるため、パスワードをリバースエンジニアリングする方法がわかりません。
(他の一部のイベント参加者が正しく回答したため、この質問には正しい回答が必要です。)
[〜#〜] jtr [〜#〜] を使用したブルートフォース攻撃では、パスワードはqwertyuiopとして表示されます。
root@pro5:~/hack# john file.txt
Loaded 1 password hash (crypt, generic crypt(3) [?/32])
Press 'q' or Ctrl-C to abort, almost any other key for status
0g 0:00:00:14 40% 1/3 0g/s 67.89p/s 67.89c/s 67.89C/s :99999..DrAdmin
qwertyuiop (admin)
1g 0:00:01:15 100% 2/3 0.01325g/s 68.11p/s 68.11c/s 68.11C/s samsung..britney
Use the "--show" option to display all of the cracked passwords reliably
Session completed
root@proc5:~/hack#
それは弱いパスワードであるため、私の古いPcで5分未満でパスワードをクラックしました。パスワードが強力な場合、解読に時間がかかります。
この課題は、パスワードを総当たり攻撃することに関するもののようです。おそらく、Wordのリストを実行して、すべてのパスワードを特定のソルトでハッシュし、それをハッシュと比較する必要があります。
例えば。 mkpasswd -m sha-512 PASSWORD SALT
そして、これをすべてのパスワードでループし、一致するものがあるかどうかを確認します。