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
Remove_obfuscation_in_Emotet_PowershellScript-2...
Search
hiro
January 29, 2020
Technology
2.7k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Remove_obfuscation_in_Emotet_PowershellScript-20200129.pdf
hiro
January 29, 2020
More Decks by hiro
See All by hiro
Observe_C2Servers_Phorpiex_Avaddon_-20200630.pdf
ctrl_z3r0
1
1.5k
Observe_C2Servers_via_MonitoringService-20200330.pdf
ctrl_z3r0
2
1.2k
Honeypot-on-GCP-20191201.pdf
ctrl_z3r0
0
910
HackingDojo_De-Ice_1.110_-20191203.pdf
ctrl_z3r0
5
1.5k
Investigating-Malware-20191030
ctrl_z3r0
4
1.6k
Honeypot_on_GCP-20191006.pdf
ctrl_z3r0
4
1.6k
AntiPortscan-20190925
ctrl_z3r0
2
1.3k
Honeypot on GCE (Google Compute Engine)
ctrl_z3r0
1
1.1k
Authentication-and-7pay-case.pdf
ctrl_z3r0
6
1.4k
Other Decks in Technology
See All in Technology
DatabricksにおけるMCPソリューション
taka_aki
1
180
事業価値を⽣み出すSREへ SREが担うべき意思決定の5層
kenta_hi
2
3.2k
[2026-07-15] AI Ready なはずだったアーキテクチャと、見えてきた課題・次に目指す状態
wxyzzz
4
1.9k
ゼロをイチにする仕事が終わったあと
smasato
0
330
AI Agent SaaS を支える自社仮想化基盤への挑戦と実運用 / ai-agent-saas-virtualization
flatt_security
2
3.6k
NDIAS CTF 2026 問題解説会資料
bata_24
0
180
貴方はどのエンジニアリングを磨くのか
hatyibei
0
110
Foxgloveについて 実際にExtensionを開発して公開するまでの話 / About Foxglove: The Story of Developing and Releasing an Extension
ry0_ka
0
190
キャリアの中で本を作る / Making a Book During Your Career
ak1210
0
130
なぜ私たちのSREプラクティスはなかなか機能しないのか 〜システムより先に組織を見る〜 / Why our SRE practices aren't really working
vtryo
3
3.4k
小さいから、全部わかる。— 常駐AI "xangi" のすすめ
sugupoko
0
290
プロダクトだけじゃない、社内プロセスにおける自動化・省力化ノススメ
kakehashi
PRO
1
3.4k
Featured
See All Featured
Utilizing Notion as your number one productivity tool
mfonobong
4
360
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
190
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.2k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.1k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
62
44k
Amusing Abliteration
ianozsvald
1
220
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Visualization
eitanlees
152
17k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.4k
Transcript
EmotetのPowerShell難読化解除 〜Any.RunとCyberChefの使い方〜 第34回ゼロから始めるセキュリティ入門 勉強会 2020/01/29 hiro(@ctrl_z3r0) a.k.a ねこさん⚡(@catnap707)
自己紹介
アジェンダ 1 最近の不審メールの傾向 2 不審メール情報の収集 3 マルウェアの調査 4 ANY.RUNの歩き方 5 Emotet Maldocの調査 6 Emotet⇒WScript(Javascript)の調査 ▪参考情報 ・VirusTotal.com
https://virustotal.com/gui/home/upload ・Hybrid-Analysis.com https://hybrid-analysis.com/ ・Any Run https://app.any.run/
1 最近の不審メールの傾向 4
不審メールの分類 ※添付されるファイルは、ダウンローダが主流(PowerShellやVBAを含む) 悪意(Malicios)のあるドキュメント(Document)で、Maldoc(マルドック)と呼ばれる 不審メール メールの形態 目的 ばらまき型メール (返信型メール) マルウェア(ダウンローダ)
を含む添付ファイル 金銭目的(バンキングトロージャンか、 ランサムウェアがほとんど) 不審なリンクを含むメール フィッシング(アカウント情報、 クレジットカード情報の窃取) 出会い系サイトやアダルトサイトへの 誘導(迷惑メール、SPAMメール) メールアドレスの死活確認 標的型攻撃メール RAT(リモートアクセスツ ール)を含む添付ファイル 特定組織が保有する秘密情報の窃取 ランサムウェアのダウン ローダを含む添付ファイル 標的型ランサムウェア(Ryuku、 Sodinokibi、RobinHood) BEC (ビジネスメール詐欺) テキスト 攻撃者が用意した口座への振込み 5
6 現在主流のマルウェア感染手法 4年ほど前までは実行ファイル(.exe、.scr等)が添付されていたが、 現在は、Officeドキュメントに仕込まれたVBAマクロや PowerShell スク リプトがダウンローダ(ドロッパー)として添付されている。 ダウンローダーのアクセス先URLや、ペイロードが通信するC&Cサーバ (C2サーバ)の通信先などの脅威情報(IoC:Indicator of
Compromise) が判明すれば、通信制限することで被害を最小限にできる。 C&Cサーバ ペイロード (マルウェア本体) 接続を制限 ▪参考情報 ・防ぎきれない攻撃を検知するため利用が広がるIoC、課題や限界を踏まえた上での利用が不可欠 https://www.cybernet.co.jp/carbonblack/tips/06.html
7 Emotetの概要 ▪参考情報 ・マルウエア Emotet の感染活動について(2019-12-02) https://www.jpcert.or.jp/newsflash/2019112701.html ▪2019年10月ごろから日本をターゲットにしたEmotetが流行
2 不審メール情報の収集 8
9 不審メール情報 (1/2) ・JC3 (日本サイバー犯罪対策センター) https://www.jc3.or.jp/topics/virusmail.html Cutwail-A(マクロ付きxls)、 Cutwail-B(主にメール内リンク)の情報 ※Emotet情報なし。
10 不審メール情報 (2/2) ・ITC PORTAL(電気通信大学 情報基盤センター) https://www.cc.uec.ac.jp/blogs/news/cat62/ ※Emotetの検体のハッシュ値の情報あり
11 ご参考:RSSリーダーによる情報収集 ・RSSリーダー(Feedly、InoReader)による情報収集
3 マルウェアの調査 12
13 マルウェアの解析方法 (1)解析方法 解析 概要 解析時間 難易度 表層解析 ハッシュ値、ファイルタイプ、文字列抽出など から得られた情報など、表面的な情報から解
析する手法。 短い 易しい 動的解析 実際にマルウェアを動作させて、その挙動(通 信先、ファイル変更、レジストリ変更等)を調べ る解析手法。ブラックボックス解析。 静的解析 マルウェアの実行ファイルをデバッガを使用し てプログラムコードを分析する解析手法。 ホワイトボックス解析。 長い 難しい ※ハッシュ値 一方向関数によって得られる固定長の不可逆な文字列。ハッシュ値から元の 入力データを生成することはできない。入力データが同じであればハッシュ値 も同じとなる。ファイル名が異なっていても中身が同じであれば、同じハッシュ 値となるためマルウェアの調査でよく利用される。(SHA256、MD5)
14 調査に便利なサイト サイト名、URL ハッシュ検 索 ファイル名 検索 動的 解析 最近の
検体 URL 解析 IPアドレス、 ドメイン名 URL調査 PCAP 解析 virustotal.com ウイルストータル ◎ × - × 〇 ◎ - hybrid-analysis.com ハイブリッドアナリシス 〇 △ ◎ 〇 〇 △ - app.any.run エニーラン 〇 - △ 〇 △ △ - joesandbox.com ジョーサンドボックス 〇 〇 △ ◦ 〇 〇 - cape.contextis.com ケープ 〇 〇 △ 〇 〇 〇 〇 packettotal.com パケットトータル 〇 - - 〇 - 〇 ◎ 凡例 ◎おすすめ、〇可能、×有償オプション、△要ユーザ登録、-機能なし (以下、VirusTotalをVT、Hybrid-AnalysisをHA、JoeSanboxをJOEという。) virustotal.com ウイルストータル ◎ × - × 〇 ◎ - hybrid-analysis.com ハイブリッドアナリシス 〇 △ ◎ 〇 〇 △ - app.any.run エニーラン ◦ - △ ◎ △ △ -
4 ANY.RUNの歩き方
16 Any.Run とは ▪Any.Runの特徴 ・マルウェア解析用のWindowsサンドボックスをインタラクティブに操作 できるのが特徴
Behavior similar to spam SPAMに似た動作の可能性あり Process was added
to the startup プロセスをスタートアップに登録 Application downloaded the executable file アプリケーションが実行ファイルをダウンロード Executable file was dropped 実行ファイルがダウンロードされた Task contains several apps running 数種のアプリを起動するタスク 17 Any.Runで表示されるアイコン ▪アイコンの概要 URLからダウンロードされた検体 ブラウザがプロセスの起点となる検体 ファイルを開くことが起点となる検体 Emotetをペイロードとしてダウンロードする Maldoc(マルドック)には、このEXEのアイコン が表示されています。
18 Analysis Results(分析結果)画面(1/4) 参考:How I use Any.Run | Network Security
Ninja https://netsecninja.github.io/how-to/2019/04/01/how-I-use-any.run.html ▪HTTP REQUESTS HTTPレスポンス コード どのプロセスから どこ(URL)へ 国コード、ファイルサイズ、 種類(テキスト/バイナリ) ▪CONNECTIONS どのプロセスから どこ(IP、URL)へ ASN ポート番号
19 Analysis Results(分析結果)画面(2/4) ▪THREATS 脅威の概要 Suricataベースの検知内容 ▪FILES MODIFICATION 変更・作成されたファイル
20 Analysis Results(分析結果)画面(3/4) ▪PROCESS Powershell.exeをクリックすると・・・ PROCESS DETAILSが表示される
21 Analysis Results(分析結果)画面(4/4) ▪ADVANCED DETAILS OF PROCESS 難読化されたPowershellスクリプトが表示 される インターネットから実行ファイルを
ダウンロードするから危ないよとい う警告 WMI経由で、PowerShellスクリプト が実行された
5 Emotet Maldocの調査 ~ペイロードの取得先を解析してみよう~
Emotet Maldocの調査 ① ▪ Any.Runで、Emotet-docを検索 1.「https://app.any.run/」をブラウザで開く 2. 左メニューの「Public tasks」をクリック 20
Emotet Maldocの調査 ① ▪ Any.Runで、Emotet-docを検索 1.「https://app.any.run/」をブラウザで開く 2. 左メニューの「Public tasks」をクリック 3.
検索フォームでハッシュ値「79B68D5F08C058CCB9852656FDA6F81E」を検索 (以下の例では「emotet-doc」を検索) 20 を含む検体がおすすめ
25 Emotet Maldocの調査 ② ▪会議への招待.doc (MD5: 79B68D5F08C058CCB9852656FDA6F81E) ペイロード取得先のURLは、 ここにあるのでOK?
↓ PowerShellスクリプトには 複数設定されています!
26 Emotet Maldocの調査 ③ ▪Powershellスクリプトを見てみよう Powershell.exeをクリック More Infoをクリック 文字列を選択するか、コピーの アイコン をクリックしてクリップ
ボードにコピーしておく。
27 Emotet Maldocの調査 ④ ▪CyberChefで難読化を解除 1.「https://gchq.github.io/CyberChef/」をブラウザで開く 2. 右上の「Input」に、先ほどコピーしたPowershellスクリプトをペースト 3. ランダムな文字列の前の「Powershell
-w hidden -en 」を削除
28 Emotet Maldocの調査 ⑤ ▪PowershellスクリプトをBase64でデコード 4.左側のメニューから「From Base64」を選択して、真ん中の「Recipe」にドロップ 5.左側のメニューから「Decode text」を選択して、真ん中の「Recipe」にドロップ 6.「Decode
text」のEncodingから、「UTF-16 LE(1200)」を選択
29 Emotet Maldocの調査 ⑥ ▪不要な文字(シングルクォートとアスタリスク)を改行に変更 7.左側のメニューから「Split」を選択して、真ん中の「Recipe」にドロップ 8.「Split delimiter」を「,」(カンマ)から「*」(アスタリスク)に修正
30 Emotet Maldocの調査 ⑦ ▪得られたURLをdefang(デファング:牙を取り除く) 10.左側のメニューから「Extract URLs」を選択して、真ん中の「Recipe」にドロップ 9.左側のメニューから「Find / Replace」を選択し、「Find」
に「[()+’]」を設定
31 Emotet Maldocの調査 ⑧ ▪得られたURLをdefang(デファング:牙を取り除く) 11.左側のメニューから「Defang URL」を選択して、真ん中の「Recipe」にドロップ 12.http⇒hxxp、.⇒[.]等の文字列変換が行われる
6 Emotet⇒WScript(Javascript)の調査 ~WScriptの場合~
Emotet⇒WScript(Javascript)の調査 ① ▪ Any.Runで、Emotet-docを検索 1.「https://app.any.run/」をブラウザで開く 2. 左メニューの「Public tasks」をクリック 3. 検索フォームでハッシュ値「61B15153F8B5408CAB55475F43C6786F」を検索
(以下の例では「emotet-doc」を検索) 20 を含む検体がおすすめ
34 Emotet⇒WScript(Javascript)の調査 ② ▪heoIvNqQw_ypqKyLkxz.docm (MD5: 61B15153F8B5408CAB55475F43C6786F) 2020年1月30日ごろから、WScript.exeが *.jse(Javascript) を読み込む検体が確認されました。
35 Emotet⇒WScript(Javascript)の調査 ③ ▪WScript(Javascript)スクリプトを見てみよう WINWORD.EXEをクリック More Infoをクリック
36 Emotet⇒WScript(Javascript)の調査 ④ ▪WScript(Javascript)スクリプトを見てみよう .jse ファイルをクリック
37 Emotet⇒WScript(Javascript)の調査 ⑤ ▪WScript(Javascript)スクリプトを見てみよう マウスで選択してコピー
38 Emotet⇒WScript(Javascript)の調査 ⑥ ▪CyberChefで難読化を解除 1.「https://gchq.github.io/CyberChef/」をブラウザで開く 2. 右上の「Input」に、先ほどコピーしたJavascriptをペースト
39 Emotet⇒WScript(Javascript)の調査 ⑦ ▪CyberChefで難読化を解除 3.左側のメニューから「Split」を選択して、真ん中の「Recipe」にドロップ 4.「Split delimiter」を「,」(カンマ)から「’」(シングルクォート)に修正 5.もう一つ「Split」を追加し、「Splot delimiter」 に「;」(セミコロン)を設定
40 Emotet⇒WScript(Javascript)の調査 ⑧ ▪得られたURLをdefang(デファング:牙を取り除く) 6.左側のメニューから「Extract URLs」を選択して、真ん中の「Recipe」にドロップ
41 Emotet⇒WScript(Javascript)の調査 ⑧ ▪得られたURLをdefang(デファング:牙を取り除く) 7.左側のメニューから「Defang URL」を選択して、真ん中の「Recipe」にドロップ 8.http⇒hxxp、.⇒[.]等の文字列変換が行われる 6.左側のメニューから「Extract URLs」を選択して、真ん中の「Recipe」にドロップ
42 まとめ ◆サイバー攻撃は、攻撃者が圧倒的有利 (攻撃者の手法を知ろう!) ◆どうやったら防げるか、防御側目線でも見てみよう ◆セキュリティ情報は積極的に情報共有しましょう
ご清聴ありがとうございました。 43 フォロー待ってるニャ! @catnap707
44