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
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
SeaOtter (Kentaro Mori)
August 07, 2023
Research
190
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
DevSecOps スキームにおいて脆弱性逓減を可能にするOSS ベースの環境調査
修士課題研究
SeaOtter (Kentaro Mori)
August 07, 2023
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
130
就職&転職の話
moruku36
0
160
自己紹介スライド_2023年度版
moruku36
1
1.4k
Microsoft製品・サービスでのChatGPT
moruku36
0
100
Other Decks in Research
See All in Research
【中間報告】国会議員の立法・政策実務を支える環境を巡る現状と課題
polipoli
0
540
SOTAのさらに先へ:厳しい推論制約下での高性能モデルのPost-Training
analokmaus
0
1.5k
The story of RefactoringMiner. Slow research, long-term impact
tsantalis
0
140
HAKARI-Bench - 実運用視点での情報検索モデル評価ベンチマーク
hotchpotch
1
720
Spatial Active Noise Control Based onSound Field Interpolation Incorporating Physical Constraints
skoyamalab
0
180
Claude Code × autoresearch 実践
mathbullet
0
260
IA for theory
gpeyre
1
400
ハードウェア研究で国際トップ会議を目指す!IROS 2027での論文採択を目指して
ayatokanada
6
3.4k
J-STAGEの現況と全文XML登載必須化について
xspa2012
0
190
データサイエンティストの就労意識~2015 → 2026 一般(個人)会員アンケートより
datascientistsociety
PRO
0
750
Research Engineerという仕事 / Research Engineering: Bridging Research and Business
chck
1
290
【ローカルAIに向き合う展示会vol.2】液体時間定数型モジュールを用いた オリジナルの双方向エンコーダーモデルNexteraBERT 推論速度向上検討並びにダウンストリーム評価
rikkabotan7
0
190
Featured
See All Featured
Believing is Seeing
oripsolob
1
210
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
230
Designing for Timeless Needs
cassininazir
1
470
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
430
Testing 201, or: Great Expectations
jmmastey
46
8.3k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.3k
Music & Morning Musume
bryan
47
7.4k
Building an army of robots
kneath
306
46k
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
220
Primal Persuasion: How to Engage the Brain for Learning That Lasts
tmiket
0
440
Crafting Experiences
bethany
1
280
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
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