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
OWASP Top 10 をベースとした自社最適なセキュアコーディングガイドの作成 / Cre...
Search
okuken
August 19, 2019
Technology
1.1k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
OWASP Top 10 をベースとした自社最適なセキュアコーディングガイドの作成 / Creating a secure coding guide for our company based on OWASP Top 10
自社最適なセキュアコーディングガイドを作成した経緯と、作成の際に考えた事、実運用についてご紹介します。
okuken
August 19, 2019
More Decks by okuken
See All by okuken
全集中Burp extension ISTE勉強会 第1回 / Burp ISTE study 01
okuken
0
500
全集中Burp extension ISTE v0.5.0 ー Request chain の躍進 / Burp extension ISTE v050
okuken
0
450
DOM Invader - prototype pollution対応の衝撃 - / DOM Invader - prototype pollution
okuken
0
870
npm Security ー サプライチェーン攻撃の観点から ー
okuken
1
700
全集中 Burp extension ISTE リリース1周年記念 - 振り返り - / Burp extension ISTE 1st Anniversary
okuken
0
570
Dangerous usage of JNDI
okuken
0
480
全集中 Burp extension ISTE v0.4リリース / Burp extension ISTE v0.4
okuken
0
500
Web Messaging のセキュリティ - DOM Invaderを添えて - / Web Messaging Security
okuken
0
2.9k
DOM Invader - Burp Suiteの新機能でJavaScriptに立ち向かう - / DOM Invader
okuken
0
1.7k
Other Decks in Technology
See All in Technology
product engineering with qa
nealle
0
140
GitHub Copilot運用のリアル ~AI Credit時代にどう向き合うか~
takafumisu2uk1
0
620
次世代ランサムウェア対策の考察 / 20260704 Mitsutoshi Matsuo
shift_evolve
PRO
5
1.7k
勉強会企画をアプリで構造化してみた 〜そこで見えた、AIとの付き合い方〜 / I've structured a study group plan using an app.
pauli
0
290
Mastraエージェント、どのクラウドにデプロイする?
minorun365
PRO
2
140
背中から、背中へ /paying forward to community
naitosatoshi
0
210
FinOps X 2026 Recap from Engineer Side #JapanFinOps
chacco38
0
240
「ビジネスがわかるエンジニア」とは何か?
ryooob
0
490
AIをフル活用してオンコール機能のプロトタイプを2日で作った話 / Building an AI-Powered On-Call Prototype in Just Two Days
nari_ex
0
170
グローバルチームと挑むプロダクト開発
sansantech
PRO
1
150
感情と身体を置き去りにしない、エンジニアの生きのこり方 ──いまから、ここから「自分の状態」を扱うという選択
saorimurooka
1
460
“ID沼入口” - 基本とセキュリティから始める、考え続けるためのID管理技術勉強会 告知&イントロ
ritou
0
380
Featured
See All Featured
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
360
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
380
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
1
370
BBQ
matthewcrist
89
10k
Effective software design: The role of men in debugging patriarchy in IT @ Voxxed Days AMS
baasie
0
440
How to Grow Your eCommerce with AI & Automation
katarinadahlin
PRO
1
220
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
250
The Impact of AI in SEO - AI Overviews June 2024 Edition
aleyda
5
1.1k
Reality Check: Gamification 10 Years Later
codingconduct
0
2.2k
End of SEO as We Know It (SMX Advanced Version)
ipullrank
3
4.2k
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
320
Automating Front-end Workflow
addyosmani
1370
210k
Transcript
OWASP Top 10 をベースとした 自社最適なセキュアコーディングガイドの作成 奥野 健一 @okuken3 2019.08.19 WASNight
2019 Summer = OWASP x WASForum Night
Agenda 1. 自己紹介 2. 背景 3. セキュアコーディングガイドの作成 4. セキュアコーディングガイドの運用 5.
まとめ
奥野 健一 @okuken3 株式会社ウエディングパーク プロダクトセキュリティチーム(2018年12月に立上げ) 情報処理安全確保支援士 登録申請中 自己紹介
✓ 主要部分は概ねPHP/Laravelで実装
2. 背景
プロダクトセキュリティ チーム立上げ 脆弱性診断一部内製化 運用開始 2018.12 2019.01 02 03 04
05 06 07 08 プロダクトセキュリティチームの経過 Vuls運用開始 新卒向け プロダクトセキュリティ研修 セキュアコーディング ガイド作成・運用開始 脆弱性情報共有 定例会議開始 プロダクトセキュリティ 社内ポータルサイト開始 RISS試験合格 (奥野)
開発フロー上の課題点 企画 設計 実装 単体 テスト 総合 テスト 脆弱性 診断
リリース ✓ ブラックボックス診断であり脆弱性発見の網羅性に限界がある ✓ このタイミングの脆弱性発見では手戻りの影響が大きい ✓ セキュアコーディングガイドを全社開発標準として組み込むことで、 設計・実装のタイミングで脆弱性の混入を防止する ✓ 脆弱性診断は開発フローの最後の砦 ✓ 「脆弱性診断では指摘ゼロが当たり前」を全開発者に意識づけ
3. セキュアコーディングガイドの作成
HTTP Server PHP Application DB 設計書 一般的なセキュアコーディングガイド
HTTP Server PHP Application DB 設計書 Prepared Statements を使いましょう ユーザー入力をウェブページ
に出力する場合はエスケープ 処理を施しましょう 認証機能を設けましょう 一般的なセキュアコーディングガイド
HTTP Server PHP Laravel Middleware Controller Model View HTTP Server
PHP Application DB DB 自社最適なセキュアコーディングガイド
HTTP Server PHP Laravel Middleware Controller Model View DB Blade(ViewFW)
での実装例がな いと曖昧になる Eloquent(ORM) での実装例がな いと曖昧になる HTTP Server PHP Application DB 認証認可は middlewareでの 実装例がないと 曖昧になる HTTP Serverで各種 HTTPヘッダを付与し ている事実を前提に しないと曖昧になる 自社最適なセキュアコーディングガイド
自社最適なセキュアコーディングガイド DBアクセスの 改修あり? 【SQLインジェクション防止のルール内容を確認】 Eloquent(ORM)を適切に使用する 実装イメージ 湧かない? 次のルールへ 【実装のOK例/NG例を確認】 OK例:User::where(“name”,
$name)->get(); NG例:User::whereRaw("name='" . $name . "'")->get(); ルール順守を確認 次のルールへ ✓ こんな感じのルールが ✓ 表形式で ✓ 重要度順に過多でない分量で 一覧化されたガイドが望ましい。 (静的チェック自動化は追々)
攻撃 可能性 診断指摘 ゼロ 何をベースとするか 適度な 分量 ✓ 実績を基にした重大リスクトップ 10であり、
✓ 脆弱性診断の観点にも含まれている、 OWASP Top 10 をベースとすることで、 直接的に要件を満たすガイドを作成する。
いかにしてガイドに落とし込むか https://www.owasp.org/images/2/23/OWASP_Top_10-2017%28ja%29.pdf OWAST Top 10 (2017, 2013) の各リスクを主軸とし、 下記資料等を参考に、セキュアコーディングルールに落とし込み。
✓ OWASP Top 10 の「防止方法」「参考資料」の項(右図赤枠) ✓ Webアプリケーション脆弱性診断ガイドライン (OWASP Pentester Skillmap Project JP) ✓ OWASP Cheat Sheet Series ✓ 安全なウェブサイトの作り方 (IPA) ✓ Laravel Documentation ✓ 自社サービスのソースコード、インフラの設定
4. セキュアコーディングガイドの運用
✓ 全社開発標準に組み込み ✓ まずはセルフチェックをルール化 ✓ 開発者からの質問・要望の受付窓口設置(Slackチャンネル) ✓ 追記すべき事柄があれば随時追記・周知
✓ セキュアコーディングガイド勉強会の開催 セキュアコーディングガイドの運用
まとめ ✓ OWASP Top 10 をベースとした、自社最適なセキュアコーディングガイドを作成 ✓ 全社開発標準に組み込み、まずはセルフチェックによる運用から開始
✓ 質問・要望の受付窓口を設置し、現場の声を吸い上げ ✓ 現場の声や、最新のセキュリティ知見を取り入れ、継続的に改善
ご清聴ありがとうございました