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
Practical The One Person Framework
asonas
1
1.8k
Weekly AI Agents News! 8月号 論文のアーカイブ
masatoto
1
220
論文紹介: COSMO: A Large-Scale E-commerce Common Sense Knowledge Generation and Serving System at Amazon (SIGMOD 2024)
ynakano
1
200
さんかくのテスト.pdf
sankaku0724
0
520
文化が形作る音楽推薦の消費と、その逆
kuri8ive
0
200
非ガウス性と非線形性に基づく統計的因果探索
sshimizu2006
0
440
最近のVisual Odometryと Depth Estimation
sgk
1
310
Embers of Autoregression: Understanding Large Language Models Through the Problem They are Trained to Solve
eumesy
PRO
7
1.2k
多様かつ継続的に変化する環境に適応する情報システム/thesis-defense-presentation
monochromegane
1
590
機械学習でヒトの行動を変える
hiromu1996
1
380
Weekly AI Agents News! 10月号 プロダクト/ニュースのアーカイブ
masatoto
1
150
ソフトウェア研究における脅威モデリング
laysakura
0
930
Featured
See All Featured
Mobile First: as difficult as doing things right
swwweet
222
9k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
28
4.4k
RailsConf 2023
tenderlove
29
940
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
2
290
Into the Great Unknown - MozCon
thekraken
33
1.5k
Building Adaptive Systems
keathley
38
2.3k
Faster Mobile Websites
deanohume
305
30k
Statistics for Hackers
jakevdp
796
220k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
48k
The Pragmatic Product Professional
lauravandoore
32
6.3k
GraphQLとの向き合い方2022年版
quramy
44
13k
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