毎年開催されているマクニカさんのCTFに今年は会場で参加できなったかたので後から解いてみました。
MNCTF
http://mnctf.info/mnctf2018/
注意 FLAGを白文字で記載していますので、MNCTFに挑戦される方はご注意ください
練習問題
回答をそのまま入力するだけ
FLAG
MNCTF2018
新人奮闘I
与えられたマルウェアのSHA256を答える問題。Windows標準だと以下のコマンドで調査可能
certutil -hashfile <検査するファイル名> SHA256
FLAG
f24f5629be2e0f821adb36fe4d47407937f5a318bf96ae3655b628f833040f29
新人奮闘II
先ほどのマルウェアをより詳しく調査する。MD5、SHA1はSHA256と同じくcertutilコマンドで調査可能。importされている関数、DLLに関してはIDAPro等で読み込ませれば確認できる。
全てを正しく入力すると以下の様に答えが出てくる。
FLAG
d56d9a6036bd18ee98878eb74ae8d663
新人奮闘III
先ほどのマルウェア内で、実行されるコマンドを確認する。
IDAProで逆アセンブラすると以下の部分でコマンド実行されているのが確認できる。
FLAG
cmd /c net user /add /domain vpnadmin P@ssw0rD1!
新人奮闘IV
新人奮闘IIIで得た情報を元にログを調査する。
Ⅲからvpnadminという名前のユーザが追加されたことが分かるので該当ユーザのログイン時刻を調査することで回答できる
FLAG
2018/07/13 15:01
新人奮闘V
新人奮闘IVでvpnadminでログインしてきたIPアドレスが分かるので、そこからwhois等で国が分かる。
FLAG
韓国
種類特定
pcapファイルを渡されて、wiresharkで中を見てみると明らかに怪しい通信が
通信先ホスト kp.mnctfmnctfmnctff.com
GET /images/GnBKaYOtPriW2Gg_2FSL_2/FHKd8Kd5bkW6W/x7j_2FKi/KiqHM_2Fh7GsRCwLf5ChDFa/F2mTob6Gr4/taMEy1pRTdVV2fsR_/2BNvWB7fYock/a7HKjH1Fytf/2yr_2FPVRYv2t_/2FRMCh_2BE_2By_2Bwn6G/GlWu_2FELxZZWd5F/1pmIiRnJqqmRnj7/syJhI_2BUbG/xA.gif
上記の内容を検索してみると、packettotalで解析した結果が出て来るので、MaliciousActivityタブを参照するとマルウェアの種類が特定できる。
FLAG
Ursnif
標的攻撃I
渡されたExcelファイルを「マクロの実行を無効化した」状態で開き、開発者ツールでマクロを確認する。
マクロ内を確認すると、アプリケーションを実行したユーザ名とC6~C11セルに書かれた内容が一致するなら実行すると記載があるのでC6~C11セルを確認して回答する
FLAG
Take Teshigawara
標的攻撃Ⅱ
マクロ内に通信先が記載されているので、そのまま記載。
FLAG
https[:]//gist.githubusercontent.com/Sh1n0g1/3a240ce15fe7f26263ddf1877e5acc38/raw/d1d74601e5f4c94c958130accb16add9bb16e33d/cert
標的攻撃Ⅲ
標的攻撃Ⅱで通信先が分かるので、内容をダウンロードして、コマンドプロンプトでマクロ内で実行されるコマンドでexeを生成して、certutilコマンドで確認する。
FLAG
c4f069d079330cd46e51f9469c27015ed34c6371481df83a323bc098f3b53382
標的攻撃IV
標的攻撃Ⅲで生成したファイルを実行し、wiresharkで通信をキャプチャするとどこに通信したかを確認する。
FLAG
https[:]//shinobotps1.com/download_get.php
感想
今年は一つの問題が次の問題につながっていく内容になっており、実際の標的型攻撃の調査やマルウェア解析がどのように行っているかを簡単では体験できるので面白い内容になったのではないかと思う。
残り3問はまだ解けていないので、余裕がある時に再度挑戦したい
クロスワードパズルがなくなったのは寂しい