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
DevSecOps スキームにおいて脆弱性逓減を可能にするOSS ベースの環境調査
Search
SeaOtter (Kentaro Mori)
August 07, 2023
Research
0
120
DevSecOps スキームにおいて脆弱性逓減を可能にするOSS ベースの環境調査
修士課題研究
SeaOtter (Kentaro Mori)
August 07, 2023
Tweet
Share
More Decks by SeaOtter (Kentaro Mori)
See All by SeaOtter (Kentaro Mori)
OSS-based environmental investigations to enable vulnerability mitigation in DevSecOps schemes
moruku36
0
82
就職&転職の話
moruku36
0
110
自己紹介スライド_2023年度版
moruku36
0
510
Microsoft製品・サービスでのChatGPT
moruku36
0
61
Other Decks in Research
See All in Research
12
0325
0
190
文書画像のデータ化における VLM活用 / Use of VLM in document image data conversion
sansan_randd
2
320
Language is primarily a tool for communication rather than thought
ryou0634
4
790
Leveraging LLMs for Unsupervised Dense Retriever Ranking (SIGIR 2024)
kampersanda
2
250
The Fellowship of Trust in AI
tomzimmermann
0
150
メールからの名刺情報抽出におけるLLM活用 / Use of LLM in extracting business card information from e-mails
sansan_randd
2
260
The Relevance of UX for Conversion and Monetisation
itasohaakhib1
0
110
ダイナミックプライシング とその実例
skmr2348
3
480
LLM時代にLabは何をすべきか聞いて回った1年間
hargon24
1
530
[ECCV2024読み会] 衛星画像からの地上画像生成
elith
1
900
クロスセクター効果研究会 熊本都市交通リノベーション~「車1割削減、渋滞半減、公共交通2倍」の実現へ~
trafficbrain
0
290
RSJ2024「基盤モデルの実ロボット応用」チュートリアルA(河原塚)
haraduka
3
700
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
26
1.5k
StorybookのUI Testing Handbookを読んだ
zakiyama
27
5.3k
The Cult of Friendly URLs
andyhume
78
6.1k
Keith and Marios Guide to Fast Websites
keithpitt
410
22k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Practical Orchestrator
shlominoach
186
10k
Typedesign – Prime Four
hannesfritz
40
2.4k
Adopting Sorbet at Scale
ufuk
73
9.1k
Intergalactic Javascript Robots from Outer Space
tanoku
270
27k
[RailsConf 2023] Rails as a piece of cake
palkan
53
5k
Being A Developer After 40
akosma
87
590k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
Transcript
DevSecOps スキームにおいて脆弱性逓減を 可能にするOSS ベースの環境調査 2130022 森 健太郎
目次 1. 研究の背景 2. 脆弱性の逓減手法 3. 検証環境の構築 4. 検証結果への考察 5.
本調査の貢献
研究の背景
1.研究の背景 (1) ・近年、ソフトウェア開発において、 DevOps という開発手法が注目されている ・DevOps とは、開発(Development)と運用(Operations)のチームを融合させ、 迅速な実装と運用を実現する開発手法 ・DevOps 開発では、セキュリティ対策が十分に行われていないという問題が指摘されている
開発 運用 図1: What is DevOps ?
1.研究の背景 (2) ・DevOps にセキュリティ(Security)を組み込んだDevSecOps 開発手法の広がり ・アプリケーションのライフサイクル全体に渡ってセキュリティを確保することを目指す ・DevSecOps 開発 では、開発者や運用者だけでなくセキュリティ担当者も開発に参加し、 ソースコード
/ インフラのセキュリティチェックや脆弱性診断を自動化して実施する 図2: What is DevSecOps ? 運用 開発 セキュリティ
1.研究の背景 (3) ・本調査研究では、DevOps にセキュリティ対応を含めたDevSecOps スキームの元、 OSS ベースの開発環境を構築することで脆弱性の逓減が可能になるか調査を実施し 調査結果に対して考察を行った
脆弱性の逓減手法
2.脆弱性の逓減手法 (1) ・脆弱性とは、アプリケーションやシステムに存在するセキュリティ上の 欠陥や弱点のことで、攻撃者によって悪用される可能性がある ・DevSecOps での脆弱性管理は継続的かつ自動化されたプロセスとして実施される 計画 開発 ビルド リリース
運用 脆弱性 管理 図3: DevSecOps lifecycle stages
2.脆弱性の逓減手法 (2) ・脅威分析 ・・ アプリケーションやシステムに存在する潜在的な脅威や リスクを特定し、評価し、対策するプロセス ・ソースコードキャン・・ソースコードに含まれるクレデンシャル情報や脆弱性を検出 ・脆弱性スキャン ・・既知の脆弱性を検出するために行うスキャニング ・ポリシーチェック
・・満たすべきセキュリティ要件や基準に対して行う、チェックや検証 ・セキュリティテスト・・脆弱性を検出するために行うペネトレーションテスト
検証環境の構築
3.検証環境の構築 - (1) パブリッククラウドサービス Azure 上にOSS 製品を用いてDevSecOps の検証環境を構築し、 サンプルアプリに対し5段階のセキュリティチェックを実施し脆弱性の発生数と種類を確認 <サンプルアプリ>
言語: Python v3.9.6, Node.js v14.17.3, .NET v5.0.8 DB: Redis v6.2.4, Postgres v13.3 コンテナ: Docker v20.10.7 <セキュリティチェック> ① ソースコードスキャン ② コンテナイメージスキャン ③ Kubernetes クラスタースキャン ④ ポリシーチェック ⑤ ペネトレーションテスト 図4: example-voting-app
3.検証環境の構築 - (1-) ① ②コンテナイメージ スキャン ③Kubernetes クラスター スキャン ④ポリシーチェック
⑤ペネトレーションテスト ソースコードス キャン
3.検証環境の構築 - (2) テスト結果 ・GitHub Advanced Security の依存関係診断でNode.js パッケージの脆弱性が指摘 ・Trivy
のイメージスキャンからはホストイメージへのセキュリティパッチが 未対応なものや、使用している言語のセキュリティアップデート問題が検出 ・Kube-hunter の診断ではPod の露出やContainer の露出などの脆弱性が検出 ・OWASP ZAP の脆弱性診断ではセッション管理の問題やセキュリティヘッダーの問題など検出
検証結果への考察
4.検証結果への考察- (1) 構築結果への考察 ・〇 従来セキュリティテストで判明する脆弱性を開発の初期段階で検出することができる ・△ DevSecOps 環境を構築してもアプリケーションの脆弱性を完全に無くすことはできない そのため、SIEM を利用した対策の実施や、セキュリティトリアージの実施が必要になる (後述) ・△ DevSecOps は環境構築自体に時間を要する
本調査では、DevOps 開発経験がある場合でも、今回の検証環境の構築に 40 時間ほどかかる
4.検証結果への考察- (2) セキュリティ対策への考察 < テスト結果から > ・SIEM の導入により、リアルタイムにセキュリティイベントを監視し、異常なパターンを検出する ・脆弱性に対して緊急度や重要度などの指標から優先度を付けてセキュリティトリアージを実施する < ネットワーク周り
> ・開発環境をイントラネット内に構築し、インターネットとの境界に L7 レベルでは WAF を、L4 レベルではFW を設置することで、外部からの攻撃を防ぐことが可能 ・Hub&Spoke のネットワークを構成することでネットワークレベルのセグメンテーションを実施 < スキームの有効な利用 > ・脅威分析の導入により、計画段階からシステムのセキュリティを考慮するチーム体制が必要
本調査の貢献
5.本調査の貢献 ・OSS ベースのDevSecOps 環境の構築により、システムの脆弱性逓減が可能であることを提示 ・OSS を活用したDevSecOps スキームのコスト面、工数面でのメリット、デメリットを明確にした ・開発、運用フェーズ全体を俯瞰したセキュリティ対策手法を示した ・脅威分析を基にしたチーム内のセキュリティスキルを向上させる手法を示した
画像参照 図1: What is DevOps ? https://www.dynatrace.com/news/blog/what-is-devops/ 図2: What is
DevSecOps ? https://www.dynatrace.com/news/blog/what-is-devsecops/ 図3: DevSecOps lifecycle stages https://learn.microsoft.com/en-us/azure/architecture/guide/devsecops/devsecops-on-aks#devsecops-lifecy cle-stages 図4: example-voting-app https://github.com/dockersamples/example-voting-app#architecture