Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Edomae 2015 - マルウェアを解析してみよう
Search
Satoshi MIMURA
January 24, 2015
Research
0
51
Edomae 2015 - マルウェアを解析してみよう
江戸前セキュリティ勉強会 - マルウェアを解析してみよう
Satoshi MIMURA
January 24, 2015
Tweet
Share
More Decks by Satoshi MIMURA
See All by Satoshi MIMURA
Inside wsl
mimura1133
0
21
Windows でも TeX 編集がしたい!
mimura1133
0
18
3本指ジェスチャの仮想デスクトップ機能を Windows に実装した話
mimura1133
0
24
Windows のカーネルモードドライバで填まった話
mimura1133
0
24
APASEC 2013 - ROP/JIT を使わずに DEP/ASLR を回避する手法を見てみた。
mimura1133
0
16
マシン語によるコード実行
mimura1133
0
12
Iron python と c sharp
mimura1133
0
18
Unix と windows 世界の融合
mimura1133
0
19
Windows Phone 7 と XNA の世界
mimura1133
0
16
Other Decks in Research
See All in Research
学習型データ構造:機械学習を内包する新しいデータ構造の設計と解析
matsui_528
5
2.5k
高畑鬼界ヶ島と重文・称名寺本薬師如来像の来歴を追って/kikaigashima
kochizufan
0
110
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
270
Pythonでジオを使い倒そう! 〜それとFOSS4G Hiroshima 2026のご紹介を少し〜
wata909
0
1.2k
AI in Enterprises - Java and Open Source to the Rescue
ivargrimstad
0
1.1k
Sat2City:3D City Generation from A Single Satellite Image with Cascaded Latent Diffusion
satai
4
490
AIスパコン「さくらONE」の オブザーバビリティ / Observability for AI Supercomputer SAKURAONE
yuukit
2
1.1k
J-RAGBench: 日本語RAGにおける Generator評価ベンチマークの構築
koki_itai
0
1.1k
"主観で終わらせない"定性データ活用 ― プロダクトディスカバリーを加速させるインサイトマネジメント / Utilizing qualitative data that "doesn't end with subjectivity" - Insight management that accelerates product discovery
kaminashi
15
18k
LLM-jp-3 and beyond: Training Large Language Models
odashi
1
740
Mamba-in-Mamba: Centralized Mamba-Cross-Scan in Tokenized Mamba Model for Hyperspectral Image Classification
satai
3
430
LLM-Assisted Semantic Guidance for Sparsely Annotated Remote Sensing Object Detection
satai
3
300
Featured
See All Featured
Efficient Content Optimization with Google Search Console & Apps Script
katarinadahlin
PRO
0
280
30 Presentation Tips
portentint
PRO
1
180
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
130
More Than Pixels: Becoming A User Experience Designer
marktimemedia
2
280
SEOcharity - Dark patterns in SEO and UX: How to avoid them and build a more ethical web
sarafernandez
0
100
Code Review Best Practice
trishagee
74
19k
Mind Mapping
helmedeiros
PRO
0
45
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.2k
Designing for Performance
lara
610
70k
Testing 201, or: Great Expectations
jmmastey
46
7.8k
Transcript
マルウェアを 解析してみよう 三村 聡志 / みむら (@MIMURA1133)
自己紹介 • 三村 聡志 a.k.a. 親方 (@mimura1133) • Twitter :
@mimura1133 • http://mimumimu.net/ • http://www.windowsinternals.moe/ • 普通の大学生やってます。 • CTF 入門者向け勉強会 “CTF for Beginners” やってます。 ( http://2014.seccon.jp ) • 絶賛就活生(M1) です。
マルウェア解析?
テーマを決めるに当たって まっちゃさん、今度の江戸前で 「マルウェア解析」って やっても大丈夫ですか ええんちゃう、 なんもないで。
解析手法 • 動的解析 • マルウェアを「動」かして解析する方法 • サンドボックス上で動かして眺めたり。 • Keyword: Cuckoo
Sandbox, QEMU, etc… • 静的解析 • マルウェアを動かさずに解析する方法 • 逆アセンブルして眺めたり。 • Keyword: IDA Pro, objdump, 逆アセンブル, etc…
解析準備
解析に必要なもの(今回使用したもの) • Windows 7 x86, x64 – Service Pack 1
• 環境によって動くモノと動かないモノが出るので合わせる • IDA Pro 6.7 • Pro 版は買うと世界が広がります。おすすめ。 • VMware Workstation • 基本的には仮想マシン上で。潤沢なメモリと一緒に。 • 折れない心 • マルウェアの解析とプレゼン作成は昨日の深夜から。
解析をする環境 • 基本的には「仮想マシンの上で」 • 静的解析なら大丈夫? → その解析ソフトの脆弱性を突かれたらどうするの • 何がおすすめ? •
個人的に楽なのは Microsoft Hyper-V. • よりもっと入りたいなら QEMU. • でも VMware Workstation がベター。
解析する環境 • 参考までに・・。私はこんな感じです。 • IDA Pro / Windbg / Ollydbg
• Wireshark / Fiddler • API Monitor • MinGW • MAP → なお、CTF4b の実習環境は 私の解析環境の構成がベースで組まれてます。
さぁ解析してみよう
基本的な解析の流れ • 私の場合は IDA Pro でやってます。 • 静的解析でさっと眺め (複雑な場合は動的から) •
動的で詳しいところの挙動をブラックボックス で見て、静的で追いかける。
基本的な解析の流れ • 最初は分からないことだらけ • 分かったときにメモを 書いていく
解析をする場合の注意点 • ネットワークは切りましょう。 • ネットワーク通信して・・というのを観察したい → グローバルIP アドレスを別のモノに。空き IP アドレス等を。
• VM 上でやるならば、万全の状態を作った上で 「スナップショット」を作りましょう • 汚した後、スナップショットに戻して ネットワークなりが戻ってしまった例をよく見ます・・。
解析をする場合の注意点 • 解析ツールの検知や VM 検知をするマル ウェアがあります。
解析をする場合の注意点 • これ以外にも BIOS の名前を見て “Oracle” “Vmware” “QEMU” 等の文字列を見てい る事があります。
→ ただ Hyper-V の検知は、ほとんど見ない。
今回使用したもの
今回使用したもの • 2014年11月25日に発生した Sony Pictures Entertainment に対して 行われたマルウェアを使用しました。 • 紹介するのは下の4検体
• 760c35a80d758f032d02cf4db12d3e55 • E1864a55d5ccb76af4bf7a0ae16279ba • b80aa583591eaf758fd95ab4ea7afe39
各検体がどういう動きをするか • Piyokango さんのまとめが詳しいです。 • http://d.hatena.ne.jp/Kango/20141228/141978778 1 • なぞるのは面白くないと思うので 先ほどのマルウェアを見ながら
面白そうなところだけを見ていきます。
760c35a80d758f032d 02cf4db12d3e55 この検体だけは速度を落としてゆっくりと。
760c35a80d758f032d02cf4db12d3e55 -i, -k, -m, -d, -w が引数として取れる • -i :
自身をサービスとして登録する • -k : (サービスとして呼び出された際に実行) → サービスとしての main() を実行 → 自身を taskhost??.exe としてコピーし それらを –w, -m, -d を付けてそれぞれ起動 → かつ MSExchangeIS サービスを停止する
760c35a80d758f032d02cf4db12d3e55 • -w : usbdrbv32.sys を産み落として MBR を消す • -d
: (ハードディスクをワイプするらしいですが) 該当部分の実装がないので、何もせず • -m : iissvr.exe を産み落として実行(後述) → termservice も止める
760c35a80d758f032d02cf4db12d3e55 • コードは簡単に strings 等で特定出来ないよう になっている • これ、何がしたいか分かりますか?
760c35a80d758f032d02cf4db12d3e55 • 面白そうなところ • 今のユーザ権限でシャットダウンできるかどうかを ちゃんと判断して処理している
760c35a80d758f032d02cf4db12d3e55 • 面白そうなところ • ブートセクタをちゃんと読む処理がある(ライブラリ使用か)
760c35a80d758f032d02cf4db12d3e55 • 面白そうなところ • こいつ・・・もしかして Windows 9x 対応か・・
b80aa583591eaf758f d95ab4ea7afe39
b80aa583591eaf758fd95ab4ea7afe39 • 基本的には 760c35a80d758f032d02cf4db12d3e55 と近いコード(1つめの検体) • -n : 壁紙を書き換える
None
b80aa583591eaf758fd95ab4ea7afe39 • 壁紙の変更まで・・ • 別スレッドを作って 0x493E0 分 Sleep →その後 壁紙変更
b80aa583591eaf758fd95ab4ea7afe39 • Sleep(0x493E0)? → 300,000 ms. → 300 sec. →
5 minutes. その後、自身のリソースから walls.bmp を作り、 SystemParametersInfoW を使って 壁紙を変更する。
E1864a55d5ccb76af4 bf7a0ae16279ba
E1864a55d5ccb76af4bf7a0ae16279ba • iissvr.exe という名前で実行 • TCP 2332 でバックドアとして動作 • ブラウザに警告のページを出す
家に帰って 解析したい人へ
家に帰って解析したい人へ • VirusTotal にモノは上がってます。 • MD5 の値で照合可能 • ネットワークに繋いだ状態でやると 何がおきるか分からないのでご注意を。
• このマルウェアではないですが、 VirusShare とかでもマルウェアは手に入ります • http://virusshare.com/
マルウェアを 解析してみよう 三村 聡志 / みむら (@MIMURA1133)
ささやかな宣伝
宣伝 • CTF for Beginners やりまぁす! • CTF for ビギナーズ2015横浜
with mochigoma- Beginners(2月15日) • CTF for Beginners 2015 in Hiroshima (2月21日) • 横浜の募集は月曜日から開始する予定です。 • http://2014.seccon.jp/