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
Kotokaze
December 24, 2020
Technology
530
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
89
Introduction to Git & GitHub
kotokaze
0
240
実は簡単!? AIを攻撃してみよう
kotokaze
0
400
Other Decks in Technology
See All in Technology
なぜ Temporal の大小比較には compare しかないのか / Why Does Temporal Only Have compare() for Comparisons
kazukihayase
1
200
内製AIチャットボット開発で学んだ Datadog Agent Observability活用術
mkdev10
0
130
ソフトウェアサプライチェーンの構造的リスクとコンテナ環境の保護
kyohmizu
5
910
RelayerというPHPのフレームワークを作った
polidog
PRO
0
140
AIに持続⼒を与える 判断の⻑期記憶設計
eiei114
1
690
会社紹介資料 / Sansan Company Profile
sansan33
PRO
24
430k
アクセスキーが漏れた日にやるべきこと- 無効化の先にある本当の対応
kazzpapa3
0
300
ハッカソンで入賞した話 @ Findy LT
asari194617
0
1.5k
MIXIで活躍できるエンジニアを 若手社員目線で考えてみる
mixi_engineers
PRO
0
150
NANDでも描画したい!
nichica906
3
670
同じWAFが、攻撃の“形”は弾く── 正当な“形”の不正は通す
kuroneko13
0
270
Head First モブプログラミング / Head First Mobprogramming
takaking22
10
12k
Featured
See All Featured
Making the Leap to Tech Lead
cromwellryan
135
10k
How to Think Like a Performance Engineer
csswizardry
28
2.7k
<Decoding/> the Language of Devs - We Love SEO 2024
nikkihalliwell
1
300
Paper Plane (Part 1)
katiecoart
PRO
1
10k
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.4k
Java REST API Framework Comparison - PWX 2021
mraible
34
9.7k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
280
Designing Experiences People Love
moore
143
24k
The B2B funnel & how to create a winning content strategy
katarinadahlin
PRO
1
480
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
73
41k
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