Upload
riotaro-okada
View
465
Download
0
Embed Size (px)
Citation preview
The Shift left path成長するサービスのセキュリティを実現する3つの視点とシフトレフト
岡⽥良太郎
OWASP JAPAN 代表
アスタリスク・リサーチ代表取締役
シフトレフトエヴァンジェリスト
@okdt
EnablingSecurity ©AsteriskResearch,Inc. 3http://www.lefigaro.fr/secteur/high-tech/2017/01/30/32001-20170130ARTFIG00169-un-virus-informatique-paralyse-un-hotel-de-luxe-en-autriche.php
CSIRT数は増加。
http://itpro.nikkeibp.co.jp/atclact/active/16/092700102/092700001/
2017年、243
“可燃物”を放置したまま消防団を結成?
3 enemies
• “セキュリティ投資”• OSS• 脆弱性対応
「カエサルの死」(ヴィンチェンツォ・カムッチーニ)
アプリケーション
プレゼンテーション
セッション
トランスポート
ネットワーク
データリンク
物理層
アプリ
バックエンド
Webservice
Apple/Google/Amazon
ソフトウェア
ソフトウェア
ソフトウェア
ソフトウェア
ソフトウェア
ソフトウェア
ソフトウェア
問題はどこで起きているのか
ソフトウェア
セキュリティ投資はリスクに見合っているか
% of Attacks
90%
脅威
95% 92%
脆弱性報告の92%はアプリケーション
95%アプリケーションに深刻な脆弱性
NIST
教育、テスト、ツールには費やされていない
セキュリティ関連支出の大半がネットワーク
、箱物、パッケージに消費されている
Network
Applications% of Dollars
対策
10%
90%
Report
NRISecureInformationSecurityReport2015
Report
NRISecureInformationSecurityReport2015
2017年「いかにアプリを構築し、実装するか、新たな議論が巻き起こる」
• 11thingswethinkwillhappeninbusinesstechnologyin2017
• “Anewdebateinhowtobuildandshipapplications.”
BusinessInsider誌,Jan.2,2017
3enemies
• 脆弱性対応
• OSS• セキュリティ投資
「カエサルの死」(ヴィンチェンツォ・カムッチーニ)
自作アプリケーションとサードパーティ
©2015AsteriskResearch,Inc. 17
2016/11リリースNISTIR-8151DramaticallyReducingSoftwareVulnerabilitiesReporttotheWhiteHouseOfficeofScienceandTechnologyPolicy
Dramatic業界平均 1-25errorsper1000linesofcode.
これを 2.5errorsper10000linesofcodeにできるプロセスとメソドロジをリサーチ
Linesofcode
• WordPress:423,759• PHP:3,617,916• Apache:1,832,007• Linux:18,963,973
「OSSを使いこなす」とは
1. 組織のソフトウェア資産目録の作成
2. 新しく発見された脆弱性およびセキュリティ・パッチの識別
3. 優先的なパッチの適用
4. 組織に特有のパッチ・データベースの作成
5. パッチ・テスト
6. パッチおよび脆弱情報の配布
7. ネットワークおよびホスト脆弱性スキャンによるパッチ適用の確認
8. 脆弱性データベースを利用したシステム管理のトレーニング
9. パッチの自動適用
+10.適切なOSSモジュールの選択
IPA「オープンソース・ソフトウェアのセキュリティ確保に関する調査報告書」part4
OSS利用のポイント
• 要件定義の段階でシステム・セキュリティの優先順位を決定する。
• 設計チームは利用可能な適切なOSSリストを持ち、そこから安全につくりやすい・継続的にメンテしやすいコンポーネントリストを実装チームに提供する。
• 実装チームは、外部モジュールの利用を独断しない。ただし、いつでも相談できる。
• 運用チームは、OSSセキュリティ脆弱性をアプリケーションのログから管理し、開発・設計チームへのフィードバックはどれほどあるか
©AsteriskResearch,Inc. 20
NISTIR8151said
• Aはソフトウェアセキュリティ保証の価値:
• p=開発プロセス• s=セキュリティテスト• e=実行環境
•A=f(p,s,e)
21
3enemies
• セキュリティ投資
• OSS• 脆弱性対応
「カエサルの死」(ヴィンチェンツォ・カムッチーニ)
「教養として、セキュアプログラミングが一番足りない」
23http://itpro.nikkeibp.co.jp/atcl/interview/14/262522/090700192/
奈良先端科学技術大学院大学 山口英教授
WebInterfaceに主眼のある脆弱性ガイドOWASPTop10
©2016AsteriskResearch,Inc. 24
出典:SANSInstitute (2015)
テスト(DAST)
直す 隠す無視・あきらめ
テスト(SAST)開発サイドの悩み
アプリケーションセキュリティスキルとツールの不足
予算配分管理の欠如
デリバリー再優先
セキュリティチームの悩み
全アプリケーション資産の把握ができていない
開発、セキュリティ、事業部のサイロ化によるコミュニケーションコスト増
脆弱性修正すると動かなくなることへの恐れ
出典:SANSInstitute (2015)Q.“TopChallengesforBuildersandDefenders”
?
「リリース間際のセキュリティテストは実施しています!」
しかも高額。
本当に重点を置くべきところはリリース直前ではない
|EnablingSecurity| ©AsteriskResearch,Inc. 26
フェーズ Percent企画・要件定義フェーズ 53.4%設計フェーズ 16.5%開発中 14.6%コードのチェックイン 4.9%リリース前 8.7%Other 1.9%
出典:SANSInstitute (2015)
負のバリューチェイン
楽観的で
薄めの
現状認識
牧歌的な要件
正常機能偏重の
設計
無頓着なコード
ありえないぜい弱な
システム
攻撃成立
=インシデント
ビジネスインパクト
負のバリューチェインはシフトレフトチェインで断ち切れる
楽観的で
薄めの
現状認識
牧歌的な要件
正常機能偏重の
設計
無頓着なコード
ありえないぜい弱な
システム
攻撃成立
=インシデント
ビジネスインパクト
SHIFTLEFTSHIFTLEFTSHIFTLEFT教育
侵害ケース
リスクプロファイリング
脅威分析セキュリティアーキテクチャ
開発時コードレビュー
静的解析
SAST
動的解析
DASTRASP/
RedTeaming
システムのセキュリティ問題原因の85%は構築。
©AsteriskResearch,Inc. 29
0
10
20
30
40
50
60
70
80
90
100
設計 構築 検証 運用
1 6.5 15
対応コスト 100
SHIFTLEFT
自動車の場合:「何をどのように作るか」が重要
プレス 溶接 塗装 組立 検査
開発 生産技術 生産
OWASPTop10のアンサードキュメント:OWASPProactiveControls – “事前のリスク制御”
EnablingSecurity ©2016AsteriskResearch,Inc. 31
1: 早期に、繰り返しセキュリティを検証する2: クエリーのパラメータ化3: データのエンコーディング4: すべての⼊⼒値を検証する5: アイデンティティと認証管理の実装6: 適切なアクセス制御の実装7: データの保護8: ロギングと侵⼊検知の実装9: セキュリティフレームワークやライブラリの活⽤10: エラー処理と例外処理
原因と結果の対応を見れば効果は歴然としている。正しい構築手法とプロセス→複数の脆弱性を激減させる。大半が設計・コーディングの方式。
©2016AsteriskResearch,Inc. 32
OWASP Top 10
1: イ
ンジ
ェク
ショ
ン
2: 認
証と
セッ
ショ
ン管
理の
不備
3: ク
ロス
サイ
トス
クリ
プテ
ィン
グ
4: 安
全で
ない
オブ
ジェ
クト
直接
参照
5: セ
キュ
リテ
ィ設
定の
ミス
6: 機
密デ
ータ
の露
出
7: 機
能レ
ベル
のア
クセ
ス制
御の
⽋落
8:ク
ロス
サイ
トリ
クエ
スト
フォ
ージ
ェリ
9: 既
知の
脆弱
性を
持つ
コン
ポー
ネン
トの
使⽤ 10
:未
検証
のリ
ダイ
レク
トと
フォ
ワー
ド
Proa
ctiv
e Co
ntro
ls
1: 早期に、繰り返しセキュリティを検証する ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
2: クエリーのパラメータ化 ✔
3: データのエンコーディング ✔ ✔
4: すべての⼊⼒値を検証する ✔ ✔ ✔
5: アイデンティティと認証管理の実装 ✔
6: 適切なアクセス制御の実装 ✔ ✔
7: データの保護 ✔
8: ロギングと侵⼊検知の実装 ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
9: セキュリティフレームワークやライブラリの活⽤ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
10: エラー処理と例外処理 ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔ ✔
OWASP Top 10 x Proactive ControlsMAPPING
「ムラ」の問題
• 均質に開発しにくい
ムラをなくす EnterpriseSecurityAPI
設計段階でできることは実装に貢献する
©AsteriskResearch,Inc. 35
0
10
20
30
40
50
60
70
80
90
100
設計 構築 検証 運用
1 6.5 15
対応コスト 100
SHIFTLEFTSHIFTLEFT
IEEEソフトウェア設計における欠陥トップ10を避ける方法
ソフトウェアのセキュリティ設計における欠陥を、いかにして回避するか記述したドキュメント1. 信頼2. 認証メカニズム3. 認証と認可4. データと制御命令の分離5. すべてのデータの明示的検証6. 暗号化7. 機密データ識別と取り扱い8. ユーザ9. 外部コンポーネントの統合とアタックサーフィス10.オブジェクトやアクタの将来的変化
https://cybersecurity.ieee.org/blog/2015/11/13/avoiding-the-top-10-security-flaws/
Security-JAWS 36
“SHIFTLEFT TESTING”
https://en.wikipedia.org/wiki/Shift_left_testing
“SHIFTLEFTTESTING”- DevOps
https://en.wikipedia.org/wiki/Shift_left_testing
コードレビューピアレビュー+自動化
テスト自動化何時間もかかるSASTテスト?
デリバリー自動化CI/CDとイシュートラッカー
NISTIR8151said
• Aはソフトウェアセキュリティ保証の価値:
• p=開発プロセス• s=セキュリティテスト• e=実行環境
•A=f(p,s,e)
39
OWASPSAMMソフトウェアセキュリティ保証成熟度モデル
©2015AsteriskResearch,Inc. 40
グローバルのOWASPコミュニティが策定 ・日本語訳は経済産業省のプロジェクトで翻訳
レベル1 アドホックレベル2方針化レベル3組織的取り組み
X「ガバナンス」「実装」「検証」「デプロイ」
まさに A=f(p,s,e)
©2015AsteriskResearch,Inc.41
ソフトウェア開発
ガバナンス 構築 検証 デプロイ
戦略&指標
ポリシー&コンプライアンス
教育&指導
脅威の査定
セキュリティー要件
セキュアなアーキテクチャ
設計レビュー
コードレビュー
セキュリティテスト
脆弱性管理
環境の堅牢化
運用体制のセキュリティ対応
ep s
Case
©AsteriskResearch,Inc. 42s
e
p
Buildyourstrategy!
43s
e
p
SHIFTLEFTKPI
• 運用管理チームは脆弱性やアプリケーションのログを管理し、開発・設計チームへのフィードバックを提供しよう
• 実装チームは、どうすればセキュアなのかを確信できる方法を構築しよう。それをすぐに手早く検証できる手段を整備しよう
• 設計チームは、つくりやすい・メンテしやすい・壊されにくいコンポーネントや、アーキテクチャの選択、攻撃面の認識、リスクベーステスト計画を。
• 要件定義の段階でセキュリティ品質・施策の優先順位を決定しているか。コンプライアンスの影響はどこにあるか。
• 開発・運用イニシアチブとして、情報・教育・ツールを備えよう。そして、更新しよう。
44
SHIFT LEFT
46EnablingSecurity©AsteriskResearch,Inc.
98%or68%がん患者の生存率比較
47EnablingSecurity©AsteriskResearch,Inc.
青森県の平均寿命は、男女ともに全国最下位ですがんによる死亡率が高いことが、平均寿命に大きく影響しています。
http://gan-info.pref.aomori.jp/public/index.php/ct05/a51.html
改善率→
死亡率→
49EnablingSecurity©AsteriskResearch,Inc.
・向き合うキャンペーン・がん検診・がん登録・がん対策推進企業連携協定の締結企業・診療連携
Who is OWASP?
OWASP NAGOYA 2017 坂梨功典、村井剛
OWASP NATORI 2017 佐藤将太OWASP FUKUSHIMA 2016 金子正人・山寺純OWASP OKINAWA 2016 淵上真一・又吉伸穂OWASP SENDAI 2015 小笠貴晴・佐藤ようすけ
OWASP KYUSHU 2015 服部祐一・花田智洋OWASP KANSAI 2014 長谷川陽介・三木剛OWASP JAPAN 2011 岡田良太郎・上野宣
OWASPCommunityinJapan
HardeningProjectIPAセキュリティ10大脅威,JPCERT/CC,総務省サイバー演習CYDER,SECON,
沖縄サイバーセキュリティネットワーク,SecurityCamp,IoT xHealthcareHackathon
16Years of community service
25Academic Supporters
68Paid Corporate Memberships
93Active Projects
129+Government & Industry Citations!
IoTのセキュリティ設計IoTのセキュリティガイドIoTシステムにおける脅威分析と対策検討の実施例IoTセキュリティの根幹を⽀える暗号技術
OWASP IoT Projectを詳述!
276Active Chapters
55,000+participants mailing lists
2,005,000owasp.org page views (per month)
2017.9.30#OWASP#OWT2017JP
Security iseveryone’s
responsibility
SHIFT LEFT
「30秒の確認と3時間のやり直し、どっちがいい?」
@某社ベテラン技術者
SHIFT LEFT「 過ちを気に病むことはない。
ただ認めて、次への糧とすればいい。それが、大人の特権だ」
@フル・フロンタル
「セキュリティ被害で平均30日も業務が止まるんだって。今日終わるアップデート、やっとこっか😘✨」
#シフトレフト#月例セキュリティアップデートの日
#シフトレフトタグ
絶賛啓発中@kazuhach
SHIFT LEFT「仕入れと仕込みを学ぶことが大事ってことだ」
@築地の板前
SHIFT LEFT#シフトレフト
あなたにとっては?
SHIFT LEFT
#シフトレフト
みなさんのシフトレフトをここに!
71
JOIN OWASP
OWASPJapan