yoshikingのがんばる日記

あたまよくないけどがんばります

yoshi-camp 参加記

はじめに

 2日間行われたyoshi-campを無事終了したので、参加記を書きます. 内容としては、angr講座、マルウェア解析・フォレンジック講座を主にしました. 2日目には少々早く終わったので、pwnを解く時間もありました.

事の発端

 僕がセキュキャンに落ちたんですが、なんとptr-yudaiも(チューターに)落ちてました.

 こんな感じから、どっかでやるか!となりました. その会場が運悪く用意できなくて困り果てていたところを、阪大の教授、学生の方々のご厚意という形で部屋を貸していただきました.(ありがとうございますっっっっっ) yoshi-campは9時~18時だったのですが、家が少々遠くて早起きがしんどかったです. 早起きもセキュキャンっぽさがあって、また一興ということでよいとします.

day1 angr講座(シンボリック実行入門)

 yoshi-campの開幕を飾るのは、ふるつきが講師のangr講座でした. この講義では、主にCTFの問題をangrで解ける範囲を増やそうという目的で行われました. 基本的には、angrの機能解説→問題解くの流れでした. 問題はharekazeCTF, InterKosenCTF, angr_ctfの問題を用いて練習しました.

 簡単な使い方や制約のつけ方、アドレスや関数に対してフックする方法を学びました. angrは得意な形かどうかを見極めて使ってあげることが大切ですね.

 今回の講義で生み出された簡単なanti angrをptr-yudaiが公開しているので、そちらもぜひ.

ptr-yudai.hatenablog.com

day1, 2 マルウェア解析・フォレンジック講座

 1日目の後半ちょっと+2日目にかけて行われたのは、ptr-yudaiが講師のマルウェア解析・フォレンジック講座でした. (実際に使われた)マルウェアに感染した疑いのあるマシンのディスクダンプがあるので、重要ファイルの復元、マルウェア抽出、マルウェア挙動解析をすることを目的に行われました.

 vmの容量が足りなくて、10Gのディスクダンプが取れなかったりしましたが、メインのマルウェアの挙動解析は一通りできました.

 ディスクダンプは先頭0x20e00バイト壊されていて、謎の文字(PRINCPES)やごみで埋められています. ファイルの復元には、先頭だけ壊されているので、ファイルの真ん中や後ろにあるメタデータを用いるMetadata Carvingで復元します. その後、マルウェアを抽出する作業に移るのですが、今回は謎の文字でgrepするとマルウェアっぽいexeファイルを見つけることができます.(ここまで1時間くらい)

 このマルウェアを静的解析していくのですが、ひたすらidaさんで読んでいきます. これがまた、CTFのrevと違って読みにくい...(号泣)関数の呼び出しとかが気持ち悪くて、アドレスで呼んでいてidaが認識できないです. そのため、アドレスの先を計算して、ジャンプ、idaに認識させる、という作業をします. これで、idaは関数を認識することができましたが、callが死ぬほど読みにくくて何の関数を読んでるか(ぱっと見では)わからないです. これを解決するため、構造体を定義してidaに定義した名前を認識できるようにしてあげます. idaで構造体を定義して読みやすくするのは、とても勉強になりました.

 そんな感じで、ひたすら変数のrenameやアドレス計算、コメントをつけたりをたくさんしました(白目). 頑張っていくと、MBRパーティションをPRINCPESで埋めたりしているところを見つけ、シャットダウン処理までたどり着きました.

 あと1時間多く解析していれば、頭がもげるところでした.あぶなかった...

extra pwnタイム

 2日目終了の18時まで時間があまったので、pwnの問題を解く会が急遽開催されました. 3,4問あったのですが、そのうち典型的なbuffer overflowとropを使う問題を(ヒントをちょいちょいもらいつつ)解きました.

 ptr-yudaiがいた時期の身内CTF感があって、楽しかったです(マルウェア解析地獄から抜けたので楽しさ100倍).

さいごに

 元同期やWaniHackaseの方( Hi120ki (@hi120ki) | Twitter )、阪大の教授の方、ありがとうございました.また、講師の2人も楽しい(鬼畜)の講義、ありがとうございます. やっぱり、リアルで集まって集中的にやる分には、鬼畜講義の方が盛り上がりますね.

 次回開催も十分可能性としてあるので、楽しみです(次回はzer0ptsでやりたいな~なんて言ってますが...). 来年は、セキュキャン最後の年なので何としても行きたいですが、院死もあるので何とも言えないですね.

 2日間本当にありがとうございました.お疲れ様です.