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
やってみようインシデント分析
Search
hiro
November 06, 2017
Technology
2
1.9k
やってみようインシデント分析
2017/11/06
第11回ゼロから始めるセキュリティ入門勉強会@Weeyble秋葉原
「やってみようインシデント分析」 #WeeybleSecurity
hiro
November 06, 2017
Tweet
Share
More Decks by hiro
See All by hiro
Observe_C2Servers_Phorpiex_Avaddon_-20200630.pdf
ctrl_z3r0
1
1.2k
Observe_C2Servers_via_MonitoringService-20200330.pdf
ctrl_z3r0
2
980
Remove_obfuscation_in_Emotet_PowershellScript-20200129.pdf
ctrl_z3r0
2
2.4k
Honeypot-on-GCP-20191201.pdf
ctrl_z3r0
0
710
HackingDojo_De-Ice_1.110_-20191203.pdf
ctrl_z3r0
5
1.3k
Investigating-Malware-20191030
ctrl_z3r0
4
1.3k
Honeypot_on_GCP-20191006.pdf
ctrl_z3r0
4
1.3k
AntiPortscan-20190925
ctrl_z3r0
2
910
Honeypot on GCE (Google Compute Engine)
ctrl_z3r0
1
870
Other Decks in Technology
See All in Technology
The depthes of profiling Ruby - RubyKaigi 2024
osyoyu
0
140
.NET GraphQL Client のリアル
sansantech
PRO
1
200
NewSQL Landscape
oracle4engineer
PRO
5
3.2k
5分で分かる(かもしれない) Vector engine for OpenSearch Serverless
tsukuboshi
1
400
RubyKaigi 2024 - Make Your Own Regex Engine!
makenowjust
0
140
エンジニアゼロの組織から内製開発の DX をどう実現したのか / How did we achieve DX in in-house development in an organization with zero engineers?
genkiogasawara
7
2.9k
Cloudflare WorkersがPythonに対応したので試してみた
miura55
0
190
Dungeons and Dragons and Rails
joelq
0
230
OPENLOGI Company Profile
hr01
0
45k
本当のガバクラ基礎
toru_kubota
0
310
【TSkaigi】2024/05/11 当日スライド
kimitashoichi
14
3.9k
SLOいつ決めましょう?
abnoumaru
3
180
Featured
See All Featured
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
14
1.5k
What's new in Ruby 2.0
geeforr
338
31k
Designing for Performance
lara
601
67k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
7k
What’s in a name? Adding method to the madness
productmarketing
PRO
17
2.7k
The World Runs on Bad Software
bkeepers
PRO
61
6.7k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
275
13k
The Language of Interfaces
destraynor
151
23k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
1
120
How GitHub (no longer) Works
holman
305
140k
Agile that works and the tools we love
rasmusluckow
325
20k
Transcript
やってみよう! インシデント分析 第11回ゼロから始めるセキュリティ入門勉強会@Weeyble秋葉原 2017/11/06 hiro(@ctrl_z3r0)a.k.a @catnap707
アジェンダ 1 はじめに 2 インシデント対応における基本的なフロー 3 手軽にできるインシデント分析問題 4 やってみよう! 5
まとめ
はじめに 3 ▪CSIRTの訓練をしてみたいけど、、、 ”ログ解析とか出来る気がしない” ”シナリオ作るの面倒くさい” ”CTFは、ちょっとなんか違う” ”Hardeningは、難しすぎ” インシデント分析の 練習問題をご紹介!
ご参考:インシデント対応における基本的なフロー(JPCERT/CC) 4 本日は、この 分析のお話
手軽にできるインシデント分析問題 ▪シナリオ考えられないし、環境も作れない( ˘•ω•˘ ) ⇒Malware-Traffic-AnalysisのTraffic Analysis Exerciseがおススメ! http://www.malware-traffic-analysis.net/training-Exercise.html
動作環境も、お手軽 ▪WireShark(pcapを読める環境)さえあればできるよ(‘ω’)ノ ⇒Linuxではなく、WindowsとNetworkの知識が問われる の知識も不要(バイナリファイル) ▪事前準備 ・WireShark ・テキストエディタ(『Sakuraエディタ』や『秀丸』など) ・SHA256ハッシュツール(『HashMyFiles』、WSLの『sha256sum』など) ★注意点 ・実際のインシデントを想定しており、pcapファイルに含まれるマルウェア
は本物(ハッシュ値をVirutTotalやHybrid-Analysisで照合するため) ・問題のzipに含まれるマルウェアのexeファイルも本物 ⇒zipファイルを展開する場所を、ウイルス対策ソフトから除外設定 ※ただし、C2サーバはすでにテイクダウンされていると思われます
やってみよう!
Traffic Analysis Exercise ① ▪ Traffic Analysis Exercise やってみよう!(=゚ω゚)ノ ①問題を選択したら、関連ファイルをダウンロードし、展開しておく
Traffic Analysis Exercise ② ②シナリオ(SENARIO)を読む(`・ω・´) あなたは、セキュリティアナリストとして、ワールドワイドに展開する企 業に勤めています。 最近、日本にオフィスが開設されました。 2017-06-27(火)、あなたは、2つの異なる侵入検知システム(IDS)か ら、優先度の高いアラートがいくつか表示されているのに気が付きま
した。IDSの一つは、Snortが稼働し、もう一つは、Suricataが稼働して います。 日本のオフィスにあるWindowsコンピュータが感染していることが判明 しました。あなたが調査することを任されました。 あなたの手元には、pcapファイル、SnortアラートとSuricataアラートを 含むテキストファイルがあります。
10 ③設問を確認(‘◇’)ゞ Traffic Analysis Exercise ③ 1 感染したWindowsコンピュータのMACアドレス、IPアドレス、ホスト名 2 そのコンピュータが感染した日時(UTC)は?
3 SnortとSuricataのアラートから、そのコンピュータは何に感染したか? 4 最初の HTTP GETリクエストから、どのように感染したか判断しなさい 5 感染させたと思われるファイルのSHA256ハッシュ値は何か? 6 pcapに含まれる3つのEXEファイルをエクスポートして、それぞれの SHA256ハッシュ値を答えよ。 注意:Suricataアラートの時刻は、元の感染から数時間後に tcpreplay によって生成されたため、正しくありません。
11 ④設問1「感染したWindowsコンピュータのMACアドレス、IPアドレス、ホスト名」 Traffic Analysis Exercise ④ udp.port == 67 のフィルタを設定し、DHCPパケットを絞り込む
12 ④設問1「感染したWindowsコンピュータのMACアドレス、IPアドレス、ホスト名」 Traffic Analysis Exercise ④ 解答1 MACアドレス:00:15:c5:de:c7:3b(Dell_de:c7:3b) IPアドレス:192.168.1.96 ホスト名:FlashGordon-PC
13 ⑤設問2「そのコンピュータが感染した日時(UTC)は?」 Traffic Analysis Exercise ⑤ 注意:Suricataアラートの時刻は、元の感染から数時間後に tcpreplay によって生成されたため、正しくありません。 Suricataではなく、snortとpcapの情報から日時を探す必要あり
Windows(CR+LF)、Linux(LF)で改行コードが異なるので、 改行コードを解釈できるエディタ(秀丸、サクラエディタ)で開くこと。
14 ⑤設問2「そのコンピュータが感染した日時(UTC)は?」 Traffic Analysis Exercise ⑤ ▪Snortアラートログ 06/27-13:38ごろに、119.28.79.207 の80/tcp(HTTP)から EXEファイルがダウンロードされている
15 ⑤設問2「そのコンピュータが感染した日時(UTC)は?」 Traffic Analysis Exercise ⑤ http.request のフィルタを設定し、HTTPのリクエストを絞り込む 【悲報】pcapファイル、日本時間のため9時間進んでる(UTC+9) pcapの22:38は、Snortの13:38(確かに合致している)
▪Snortアラートログ 06/27-13:38ごろに、119.28.79.207 の80/tcp(HTTP)から EXEファイルがダウンロードされている
16 ⑤設問2「そのコンピュータが感染した日時(UTC)は?」 Traffic Analysis Exercise ⑤ 解答2 06/27-13:38ごろに、http://matied.com/gerv.gun にアクセスし、 バイナリデータ(exeファイル)がダウンロードされている。
17 補足:ダウンロード通信を詳しく見てみよう( `ー´)ノ Traffic Analysis Exercise ⑤
18 補足:ダウンロード通信を詳しく見てみよう( `ー´)ノ Traffic Analysis Exercise ⑤ GETリクエストの末尾が.exeではない (ダウンロード後、.exeにリネームされて実行され る)
UAがブラウザではなく、スクリプトから実行されたもの バイナリデータ マルウェアの仕込み日時 6/26 19:05:45 マジックナンバーが、MZ=exeファイル
19 ⑥設問3「SnortとSuricataのアラートから、そのコンピュータは何に感染したか?」 Traffic Analysis Exercise ⑥
20 ⑥設問3「SnortとSuricataのアラートから、そのコンピュータは何に感染したか?」 Traffic Analysis Exercise ⑥ 解答3 Pushdo というトロイの木馬(バックドア)に感染した
21 ⑦設問4「最初の HTTP GETリクエストから、どのように感染したか判断しなさい」 Traffic Analysis Exercise ⑦ 実際の分析の場面では、どこから感染したか推測するのは難しい 脅威情報を基にググる(”http://matied.com/gerv.gun”
を検索)
22 ⑦設問4「最初の HTTP GETリクエストから、どのように感染したか判断しなさい」 Traffic Analysis Exercise ⑦ ダウンローダーに含まれるURL 同じURLにアクセスする
ダウンローダーの検体
23 ⑦設問4「最初の HTTP GETリクエストから、どのように感染したか判断しなさい」 Traffic Analysis Exercise ⑦ がっつり難読化されています( ˘•ω•˘
) Unicode ¥u0000 8進コード ¥000 16進コード ¥x00
24 ⑦設問4「最初の HTTP GETリクエストから、どのように感染したか判断しなさい」 Traffic Analysis Exercise ⑦ URLらしき ものが
見えるお
25 ⑦設問4「最初の HTTP GETリクエストから、どのように感染したか判断しなさい」 Traffic Analysis Exercise ⑦ 文字列ジェネレーターで、URL decode
してみる 文字列の連結 ”+” を 削除 このダウンローダーは、脅威情報にあったURLに アクセスすることを確認できた
26 ⑦設問4「最初の HTTP GETリクエストから、どのように感染したか判断しなさい」 Traffic Analysis Exercise ⑦ 感染元となったと思われる不審メールの例
27 ⑦設問4「最初の HTTP GETリクエストから、どのように感染したか判断しなさい」 Traffic Analysis Exercise ⑦ 解答4 2017.6.21890455543.xls.js
60834d0c9d0602ef18cd65289b0b0fab05bbdb512acd3af0b273b6414883f60e 2017-547805549-231.pdf.js 59727ea201d94d471bdbb353b1281cca3c5bebf5305b140a3c017e52a37be702 DOC0978043-2017.6.doc.js 64ae13592c5d8b289be81ebb50e054cef49b0bdf50ea92dd44ed611dd274150f
28 ⑧設問5「感染させたと思われるファイルのSHA256ハッシュ値は何か?」 Traffic Analysis Exercise ⑧ 06/27-13:38ごろに、http://matied.com/gerv.gun にアクセス… Hybrid-Analysis(HA)で、”gerv.gun”を検索
29 ⑧設問5「感染させたと思われるファイルのSHA256ハッシュ値は何か?」 Traffic Analysis Exercise ⑧ 解答5 gerv.gun 0931537889c35226d00ed26962ecacb140521394279eb2ade7e9d2afcf1a7272
30 ⑨設問6「pcapに含まれる3つのEXEファイルをエクスポートして、それぞれの SHA256ハッシュ値を答えよ。」 Traffic Analysis Exercise ⑨
31 ⑨設問6「pcapに含まれる3つのEXEファイルをエクスポートして、それぞれの SHA256ハッシュ値を答えよ。」 Traffic Analysis Exercise ⑨ なぜか、解答例にある gerv.gun が表示されない
32 ⑨設問6「pcapに含まれる3つのEXEファイルをエクスポートして、それぞれの SHA256ハッシュ値を答えよ。」 Traffic Analysis Exercise ⑨ 保存して、HashMyFilesで読み込み
33 ⑨設問6「pcapに含まれる3つのEXEファイルをエクスポートして、それぞれの SHA256ハッシュ値を答えよ。」 Traffic Analysis Exercise ⑨ 解答6 gerv.gun ⇒
pcapからは取り出せず trow.exe 94a0a09ee6a21526ac34d41eabf4ba603e9a30c26e6a1dc072ff45749dfb1fe1 wp.exe 79d503165d32176842fe386d96c04fb70f6ce1c8a485837957849297e625ea48
34 Traffic Analysis Exercise ⑩ ▪Answerが丁寧なので、英語でも難しくない(*'ω'*)
35 ▪Answerが丁寧なので、英語でも難しくない(*'ω'*) Traffic Analysis Exercise ⑪
36 ▪Answerが丁寧なので、英語でも難しくない(*'ω'*) Traffic Analysis Exercise ⑪
37 まとめ ◆英語にビビるな! (セキュリティ情報は、基本、英語) ◆攻撃と防御を知れば、 食いっぱぐれない(意味深) ◆基礎が大事(NWプロトコル、OS、DB、ツール) ◆サイバー攻撃は、攻撃者が圧倒的有利 (攻撃者の手法を知ろう!) ◆どうやったら防げるか、防御側目線でも見て
みよう
ご清聴ありがとうございました。 質問がありましたらどうぞ! 38