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
OWT2017JP - OWASP SAMM
Search
OWASP Japan
September 30, 2017
Technology
7
4.8k
OWT2017JP - OWASP SAMM
#OWT2017JP
OWASP SAMM by 伊藤彰嗣, サイボウズ
OWASP Japan
September 30, 2017
Tweet
Share
More Decks by OWASP Japan
See All by OWASP Japan
OWASP Night 2019.03 Tokyo
owaspjapan
0
320
OWASP SAMMを活用したセキュア開発の推進
owaspjapan
0
930
20190107_AbuseCaseCheatSheet
owaspjapan
0
150
セキュリティ要求定義で使える非機能要求グレードとASVS
owaspjapan
5
880
AWSクラスタに捧ぐウェブを衛っていく方法論と死なない程度の修羅場の価値
owaspjapan
9
3.1k
Shifting Left Like a Boss
owaspjapan
2
270
OWASP Top 10 and Your Web Apps
owaspjapan
2
360
OWASP Japan Proposal: Encouraging Japanese Translation
owaspjapan
1
220
elegance_of_OWASP_Top10_2017
owaspjapan
2
500
Other Decks in Technology
See All in Technology
生成AIが変えるデータ分析の全体像
ishikawa_satoru
0
170
DynamoDB でスロットリングが発生したとき_大盛りver/when_throttling_occurs_in_dynamodb_long
emiki
1
440
ノーコードデータ分析ツールで体験する時系列データ分析超入門
negi111111
0
420
Security-JAWS【第35回】勉強会クラウドにおけるマルウェアやコンテンツ改ざんへの対策
4su_para
0
180
適材適所の技術選定 〜GraphQL・REST API・tRPC〜 / Optimal Technology Selection
kakehashi
1
700
初心者向けAWS Securityの勉強会mini Security-JAWSを9ヶ月ぐらい実施してきての近況
cmusudakeisuke
0
130
【Pycon mini 東海 2024】Google Colaboratoryで試すVLM
kazuhitotakahashi
2
540
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
0
110
日経電子版のStoreKit2フルリニューアル
shimastripe
1
140
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
データプロダクトの定義からはじめる、データコントラクト駆動なデータ基盤
chanyou0311
2
330
なぜ今 AI Agent なのか _近藤憲児
kenjikondobai
4
1.4k
Featured
See All Featured
Building Adaptive Systems
keathley
38
2.3k
Speed Design
sergeychernyshev
25
620
YesSQL, Process and Tooling at Scale
rocio
169
14k
5 minutes of I Can Smell Your CMS
philhawksworth
202
19k
What's in a price? How to price your products and services
michaelherold
243
12k
Ruby is Unlike a Banana
tanoku
97
11k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.1k
Building an army of robots
kneath
302
43k
Code Reviewing Like a Champion
maltzj
520
39k
Six Lessons from altMBA
skipperchong
27
3.5k
The Power of CSS Pseudo Elements
geoffreycrofte
73
5.3k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
246
1.3M
Transcript
開発プロジェクトの現状を 把握する OWASP SAMM の活用 Akitsugu Ito(@springmoon6)
自己紹介 • Akitsugu Ito(@springmoon6) • サイボウズ株式会社 CSIRT PoC • OWASP
関連のスライド Management for Security Life Cycle https://speakerdeck.com/owaspjapan/management-for-security-life- cycle-number-appsecapac2014 OWASP Project 使ってみた https://www.slideshare.net/akitsuguito/owasp-project
Agenda • OWASP SAMM って? • 12のセキュリティ対策と OWASP 成果物 •
適用事例 • まとめ
OWASP SAMM って?
要件定義 設計・開発 テスト 運用・保守 ① 要件定義 OWASP Top 10 Project
② 設計・開発 OWASP Proactive Controls OWASP Application Security Verification Standard (ASVS) OWASP Cheat Sheet Series OWASP Security Shepherd ③ テスト OWASP Zed Attack Proxy OWASP Testing Project(OWASP Testing Guide etc..) OWASP Offensive Web Testing Framework (OWTF) ④ 運用・保守 OWASP ModSecurity Core Rule Set Project OWASP APPSensor OWASP CSRFGuard Project OWASP Dependency Check
要件定義 設計・開発 テスト 運用・保守 ① 要件定義 OWASP Top 10 Project
② 設計・開発 OWASP Proactive Controls OWASP Application Security Verification Standard (ASVS) OWASP Cheat Sheet Series OWASP Security Shepherd ③ テスト OWASP Zed Attack Proxy OWASP Testing Project(OWASP Testing Guide etc..) OWASP Offensive Web Testing Framework (OWTF) ④ 運用・保守 OWASP ModSecurity Core Rule Set Project OWASP APPSensor OWASP CSRFGuard Project OWASP Dependency Check 開発ライフサイクルをよりセキュアにすること (OWASP SAMM)
OWASP SAMM • OWASP Software Assurance Maturity Model • より成熟したセキュア開発を行うことを
支援するドキュメント https://www.jpcert.or.jp/securecoding_materials.html(日本語:v1.0) https://www.owasp.org/index.php/OWASP_SAMM_Project (英語:v1.5)
特徴 – 定量化・可視化 開発プロジェクトのセキュリティ成熟度を 定量化・可視化し現状を把握できる NISTIR-8151 Dramatically Reducing Software Vulnerabilities
3.2 Software Assurance: The Object of Software Measures http://nvlpubs.nist.gov/nistpubs/ir/2016/NIST.IR.8151.pdf A=f(p, s, e) A: ソフトウェアセキュリティ保証の価値 p: 開発プロセス s: セキュリティテスト e: 実行環境
特徴 – 継続改善 現状把握 目標設定 計画立案 実施 一定の期間ごとに上記を繰り返すことで セキュリティ品質の改善に繋がる
文書構成
プロジェクトメンバー Developers Business Owners QA Testers Architects Managers Security Auditor
Support / Operators
ビジネス機能 開発プロセスにおける主要なビジネス機能を 4つに整理 ガバナンス 構築(設計・開発) 検証 運用
セキュリティ対策 ビジネス機能ごとに3つのセキュリティ対策を定義 戦略・指標 ポリシー・コンプライアンス 教育・指導 脅威の査定 セキュリティ要件 セキュアなアーキテクチャ 設計レビュー 実装レビュー
セキュリティテスト 課題管理 環境の堅牢化 運用体制のセキュリティ対応
セキュリティ対策の例 定量的な指標の例 期待結果 コスト
現状把握 - アセスメント Tool-box の活用 ヒアリング計画を立てることが重要 プロジェクト体制を把握し、ヒアリング項目・対象を決める
アセスメント項目 ガバナンス 構築 検証 運用 Manager 18 19 19 19
Architect 20 14 19 13 Security Auditor 12 19 17 8 Business Owners 16 17 8 11 Developers 11 10 19 10 QA Testers 7 7 Support Operators 14
成熟度の可視化(1)
成熟度の可視化(2)
目標設定~実施
12のセキュリティ対策と OWASP 成果物
セキュリティ対策 ビジネス機能ごとに3つのセキュリティ対策を定義 戦略・指標 ポリシー・コンプライアンス 教育・指導 脅威の査定 セキュリティ要件 セキュアなアーキテクチャ 設計レビュー 実装レビュー
セキュリティテスト 課題管理 環境の堅牢化 運用体制のセキュリティ対応
OWASP 成果物への参照 • セキュリティ対策を推進するうえで 役に立つ OWASP ドキュメントへの参照が OWASP SAMM の中には記載されていない
• 下記の条件で成果物への導線をまとめる – OWASP Project Inventory に登録されている 公式プロジェクト – 日本のローカルチャプターから公開されている 成果物
戦略・指標(SM) 組織内でセキュリティ保証プログラムを確立する OWASP SAMM を活用すること ロードマップの 策定 リスク評価の 実施 セキュリティ
支出の算出
ポリシー・コンプライアンス(PC) 組織のビジネス目的に合致した方法でコンプライアンスを確保 Policy Frameworks(OWASP Guide Project / OWASP Developer Guide)
https://www.owasp.org/index.php/Policy_Frameworks (旧) https://github.com/OWASP/DevGuide/blob/master/01- Foundations/02-Policies%2C%20Standards%20and%20Guidelines.md ガバナンスと コンプライアンス ベースラインの 確立 セキュリティ 監査の実施
教育・指導(EG) ソフトウェアライフサイクルに携わる人材を育成する OWASP Education Project https://www.owasp.org/index.php/Category:OWASP_Educ ation_Project 教育の機会 資料の提供 セキュリティ
教育の実施 習熟度を 認証する
脅威の査定(TA) Application Threat Modeling (OWASP Guide Project / Cheat Sheet
) https://www.owasp.org/index.php/Application_Threat_Modeling(旧) https://www.owasp.org/index.php/Threat_Modeling_Cheat_Sheet ソフトウェアの機能と特性に基づきプロジェクトのリスクを把握 脅威・攻撃者 の理解・文書化 脅威分析 脅威と保護機能 の関連付け
セキュリティ要件(SR) OWASP ASVS https://www.owasp.org/index.php/Category:OWASP_Application_Security_Verificatio n_Standard_Project Webシステム/Webアプリケーションセキュリティ要件書 2.0 https://github.com/ueno1000/secreq ソフトウェアのセキュリティ要件を策定する 要件検討から
セキュリティを 考慮 リスク分析に 応じて要件を 調整 セキュリティ要件 の監査
セキュアなアーキテクチャ(SA) OWASP Proactive Controls https://www.owasp.org/index.php/OWASP_Proactive_Controls プロアクティブに安全なソフトウェアを構築するための仕組み 設計プロセスに セキュリティを 組み込む 設計パターンを
プロジェクトに 提供 再利用可能な コンポーネントの 利用と検査
デザインレビュー(DR) Application Security Architecture Cheat Sheet https://www.owasp.org/index.php/Application_Security_A rchitecture_Cheat_Sheet セキュリティ問題に対するソフトウェアとアーキテクチャの評価 レビュープロセス
にセキュリティを 組み込む 設計レビュー プロセスの策定 レビュープロセス に従った アセスメント実施
実装レビュー(IR) OWASP Code Review Project https://www.owasp.org/index.php/Category:OWASP_Code_Review_Project Secure Coding Cheat Sheet
https://www.owasp.org/index.php/Secure_Coding_Cheat_Sheet ソフトウェアのセキュリティをソースコードと構成レベルで検査 コードレビューの 実施 自動コード解析 ツールの利用 コードレビュー 合格基準の策定
セキュリティテスト(ST) 脆弱性診断士スキルマッププロジェクト https://www.owasp.org/index.php/Category:OWASP_Applicatio n_Security_Verification_Standard_Project ランタイム環境におけるソフトウェアのセキュリティテスト テスト実施 プロセスの構築 自動テスト ツールの利用 アプリケーション
固有のテスト実施
課題管理(IM) OWASP Incident Response Project https://www.owasp.org/index.php/OWASP_Incident_Resp onse_Project インシデント報告や対応に関する組織内のプロセス 報告窓口や インシデント対応
チームの理解 インシデント対応 プロセスの理解 定量データを 用いたプロセス改善
環境の堅牢化(EH) OWASP Dependency Check https://www.owasp.org/index.php/OWASP_Dependency_Check OWASP Security Operations Center (SOC)
Framework Project https://www.owasp.org/index.php/OWASP_Security_Operations_Center_ (SOC)_Framework_Project ソフトウェアが稼働する運用基盤をセキュアに構築する 運用環境の ベースラインを 理解 運用の堅牢化 自動化の推進 ベストプラクティスを 用いて運用環境を検証
運用体制のセキュリティ対応(OE) OWASP SAMM のアセスメント項目を Cheat sheet として活用 良いプロジェクトがあれば教えてください! ソフトウェアのセキュリティ情報を収集し情報発信する 開発・運用間の
連絡体制の構築 手順書の伝達と 変更管理 運用環境の検証
活用事例
OWASP SAMM との出会い • OWASP Japan Local Chapter Meeting –
https://owasp.doorkeeper.jp/events/58340 https://www.slideshare.net/okdt/owasp-samm
None
活用例 アドバイス集 作成 情報提供 プロジェクトの 可視化 工数小 工数大
アドバイス集の作成 アセスメント項目ごとに参考になるドキュメントを収集
タイムリーな情報提供(1) Web ページを作成する際の JavaScript 利用に関するルールを緩和したい。 利便性を維持しながらリスクを軽減できるように 議論させてください。こんな資料があります。 安全な Web サイトの作り方
3rd Party Javascript Management Cheat Sheet
タイムリーな情報提供(2) お客様から質問を受けています。 開発活動は文書化されたセキュアなシステム開発手法 (セキュリティ要件の定義およびテストを含む)に基づき、 遂行されていますか? OWASP ASVS を用いてサービスのセキュリティ 要件を精査し、セキュリティ要件に関する標準 への適合性確認を進めています。
https://www.slideshare.net/akitsuguito/owasp-project
新規プロジェクトへの情報提供 新たにサービスをリリースするチームが 認証を取得するにあたり事前準備が必要となる 項目を具体的な活動内容と併せて伝達 戦略・指標 セキュリティ要件 セキュリティテスト 課題管理 運用体制のセキュリティ対応
情報提供例(運用) • 日時確認タスクの実施方法(ログの監視など) • パッチの適用プロセス(全社基準との差異など) • 自動適用の有無(パッチマネージャーの利用など) • 追加のセキュリティ緩和策の有無(WAF /
IDS etc..) • 外部監査の実施頻度(運用環境) • 変更管理データベースの運用 • リハーサルについて(実施基準とコミュニケーション) • 鍵管理について
情報提供例(開発) • 機能一覧に関する文書 • セキュリティ機能一覧に関する文書 • 運用基盤以外に利用しているサードパーティ コンポーネントの把握 • コードレビューの実施状況
• ログ管理の実装状況 • 監視すべきアラートやエラーに関する文書 • 文書の更新体制
開発プロジェクトの定量化の試み 作成したツールキットのアウトプットを元に、 現在のプロジェクトの状況を可視化 現在の課題の把握と今後の目標について議論
あるプロジェクトの現状(Pros) これまで PSIRT が力を入れてきた領域や、 オペレーションチームが対応してきた領域は成熟している
あるプロジェクトの現状(cons) プロジェクト間を横断して統一された観点に基づいた セキュリティ対策を導入する点に課題がある
ロードマップテンプレートの活用 業種別にロードマップ策定用の テンプレートが存在 ソフトウェアベンダー(独立系) サービスプロバイダ 金融サービス 政府組織 テンプレートを元に各組織に適合するように カスタマイズすることでロードマップ作成時のコスト削減
まとめ
OWASP SAMM • 成熟したセキュア開発を行うことを支援 • 7つのプロジェクト関係者を定義 • 4つのビジネス機能、12のセキュリティ対策で構成 ソフトウェアセキュリティ保証成熟度モデル •
プロジェクトへの情報提供 • 開発プロジェクトの定量化 活用事例 様々なプロジェクトに参加しませんか!