Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
ファイルレスマルウェアの実態と対策
Search
Kotokaze
December 24, 2020
Technology
540
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
ファイルレスマルウェアの実態と対策
Kotokaze
December 24, 2020
More Decks by Kotokaze
See All by Kotokaze
Stack&Heep
kotokaze
0
90
Introduction to Git & GitHub
kotokaze
0
250
実は簡単!? AIを攻撃してみよう
kotokaze
0
410
Other Decks in Technology
See All in Technology
すぐできる衛星通信対応 あとは山奥に行くだけ
tatetate55
0
140
その Lambda、8分で 管理者権限まで奪われます
k1nakayama
7
3.5k
AIは推し活である。
kurazuuuuuu
1
940
え、こんなに早く改修できるの?──新人エンジニアとスクラムマスターの2人が語る、AI×アジャイル開発の現場
ysasago
2
650
アプリをもっと"iOSアプリっぽく"する小さな工夫 / Small Touches That Make Your App Feel More Like an iOS App
matsuji
2
1k
人間はどの意思決定を手放せるのか
kawasima
15
7.9k
技術的負債から考える、AI時代のエンジニアリング投資 — ビズリーチの技術的負債と向き合った経験から、変更し続けられるソフトウェアを考える/ technical-debt-con2026
visional_engineering_and_design
4
3.6k
アプリログインとWeb認証基盤をつなぐ ASWebAuthenticationSession 作法
shimastripe
1
380
Slack上でインフラをトラブルシュートする! Agentic Platform Engineeringの第一歩
teru0x1
5
1.8k
AIエージェントの権限管理 3: Agentic RAG の Fine grained access control 編
ren8k
0
190
C#コードの結合を可視化する Roslyn解析による設計改善と リファクタリング判断
dora56
0
330
安心して変更できるWebフロントエンドの作り方
pirosikick
5
2.9k
Featured
See All Featured
Unsuck your backbone
ammeep
672
58k
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
910
Test your architecture with Archunit
thirion
2
2.4k
Done Done
chrislema
186
17k
ラッコキーワード サービス紹介資料
rakko
1
5M
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.6k
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
670
Unlocking the hidden potential of vector embeddings in international SEO
frankvandijk
0
940
The Language of Interfaces
destraynor
162
27k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
37
6.6k
Digital Projects Gone Horribly Wrong (And the UX Pros Who Still Save the Day) - Dean Schuster
uxyall
1
3k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
240
Transcript
ファイルレス・ マルウェアの 実態と対策 @Kotokaze__R
ファイルレス・マルウェアとは … • 名前の通り、ファイルの無いマルウェア のこと • 厳密には、実行ファイルをストレージ上 に書き込みしないマルウェア • 従来のように、`.exe`ファイルを裏で実行
させる必要がないからバレにくい • マルウェア業界では最近のトレンドとか @Kotokaze__R 1
攻撃手法は … スパムメール フィッシングメール 埋め込まれた 不正コード Power Shell ウィルス配布 サイトへ
① インストール用ファイルをDLさせる • 添付ファイルとしてマクロ付き文書や、`.lnk`ファイルを取り込ませる ② そのファイルを基点に、パワーシェルを介してマルウェア配布サーバに繋ぐ ③ メモリ上にプログラムを展開 ④ インストール用ファイルを削除 注) `.lnk` ファイルは、ショートカットに使われるもの @Kotokaze__R 2
ここが厄介 ファイルレス・マルウェア • `.lnk` ファイルを使用している → 本来はショートカットとして使うファイルなので、従来のウィルス対策ソフト では、監査対象外ファイルに設定されていた 最近は、対応を進めている?らしいが詳細は不明 •
(実行) ファイルが無い → 従来のシグネチャベース・セキュリティ対策ソフトでは無理 ※そもそも、実行ファイルが無ければシグネチャなんて無い • ビルトイン機能が悪用されている → パワーシェルや、WMI (Windows Management Instrumentation) のような正規ソフトで 実行されるため、故意か、ウィルスによるものか判別が困難 • 難読化されたスクリプトが使われている (場合が多い) @Kotokaze__R 3
難読化の手法は … • 値がnullな変数の挿入 • URLの間に、偽のURLを挿入 • エンコーディング ( Unicode・Bese64・Hex・Dec
…) @Kotokaze__R • 文字列の連結 • 無意味な演算の挿入 • 文字列の反転 • 無意味な文字(列)の挿入 • 不要なコメントの挿入 これらを自動で行うソフトもネットで出回っている 4
難読化例:SecCamp Dトラック応募課題 @Kotokaze__R 5 解説は次スライドから
応募課題に学ぶ難読化 • `${}` は、変数を表す • ここでは `-` (変数ハイフン) • 一行で書かれていたが、
実際は短いコマンドの集合 • 改行を挟んだものが下画像 • `char` は、ASCIIコード → 文 字列の変換を行う (コメントアウト参照) • 最初に生成した変数に、ひ と文字ずつインクリメント @Kotokaze__R 6 コードはこちら → https://github.com/Kotokaze/seccamp/blob/master/seccamp.ps1
応募課題に学ぶ難読化 - 2 • 先ほどの一行に長く書かれていた 部分は、実はまとめると三行分 でしかない • `iex` は、`Invoke-Expression`の
エイリアス(難読化の常套手段 としてよく使われる模様) • `${-}` は、ただの文字列でしか 無いため、`Invoke-Expression` に パイプラインで渡して、式と認識 させていた @Kotokaze__R `${-}` に入っていたもの 元コード (抜粋) 7
できる対策 • ウィルス対策ソフトを契約するなら EDR 製品にしよう • EDR: Endpoint Detection and
Response ↑ シグネチャではなく、プログラムの動作パターンで脅威度を判定する • 添付ファイルは、なるべく触らないでおこう • Office のマクロ実行は、なるべく無効化しておこう • セキュリティの勉強してるならシェルのログを録って、まめに見よう @Kotokaze__R 8
結論 • ファイルレス・マルウェアは、実行ファイルがないマルウェア • インストールは、シェルなどのビルトイン機能を介して行われる • 正規機能がゆえに、マルウェアによるアクセスか判別困難 • プログラムはメモリ上に展開されるため、感染しても気づけない •
難読化されたスクリプトが使用されている場合が多い • 対策法は確立されていない • コマンド実行ログを見る・マクロ実行無効化・添付ファイルに気を付ける @Kotokaze__R 9
レファレンス・リンク集 • セキュリティ対策ソフトも見つけにくい「ファイルレスマルウェア」とは!? (ASCII.jp) • https://ascii.jp/elem/000/002/007/2007121/ • MacAfee Labs 脅威レポート
2017 • https://www.mcafee.com/enterprise/ja-jp/assets/reports/rp-quarterly-threats-sept-2017.pdf • セキュリティキャンプ全国大会 Dトラック 応募課題 • https://www.ipa.go.jp/files/000084566.txt • https://gist.githubusercontent.com/Sh1n0g1/e42100f2a8e7d767706b4e2c88a2c45d/raw/b02088c51a4639671bf796d9f60 ca56645c35146/obf.ps1 @Kotokaze__R 10