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
社内データ分析AIエージェントを できるだけ使いやすくする工夫
fufufukakaka
1
900
それ、チームの改善になってますか?ー「チームとは?」から始めた組織の実験ー
hirakawa51
0
670
Thirty Years of Progress in Speech Synthesis: A Personal Perspective on the Past, Present, and Future
ktokuda
0
170
データサイエンティストをめぐる環境の違い2025年版〈一般ビジネスパーソン調査の国際比較〉
datascientistsociety
PRO
0
710
さまざまなAgent FrameworkとAIエージェントの評価
ymd65536
1
420
Aurora Serverless からAurora Serverless v2への課題と知見を論文から読み解く/Understanding the challenges and insights of moving from Aurora Serverless to Aurora Serverless v2 from a paper
bootjp
6
1.5k
AIスーパーコンピュータにおけるLLM学習処理性能の計測と可観測性 / AI Supercomputer LLM Benchmarking and Observability
yuukit
1
660
音声感情認識技術の進展と展望
nagase
0
470
【NICOGRAPH2025】Photographic Conviviality: ボディペイント・ワークショップによる 同時的かつ共生的な写真体験
toremolo72
0
170
R&Dチームを起ち上げる
shibuiwilliam
1
160
データサイエンティストの業務変化
datascientistsociety
PRO
0
220
AWSの耐久性のあるRedis互換KVSのMemoryDBについての論文を読んでみた
bootjp
1
460
Featured
See All Featured
The Invisible Side of Design
smashingmag
302
51k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
470
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.2k
sira's awesome portfolio website redesign presentation
elsirapls
0
150
Lightning Talk: Beautiful Slides for Beginners
inesmontani
PRO
1
440
The State of eCommerce SEO: How to Win in Today's Products SERPs - #SEOweek
aleyda
2
9.6k
Code Review Best Practice
trishagee
74
20k
For a Future-Friendly Web
brad_frost
182
10k
How to make the Groovebox
asonas
2
1.9k
Paper Plane
katiecoart
PRO
0
46k
Making Projects Easy
brettharned
120
6.6k
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
320
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/