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
シフトレフトで挑む セキュリティの生産性向上
Search
Ryosuke Sekido
PRO
July 23, 2024
Technology
0
570
シフトレフトで挑む セキュリティの生産性向上
Developers Summit 2024 Summer 講演資料
https://event.shoeisha.jp/devsumi/20240723/
Ryosuke Sekido
PRO
July 23, 2024
Tweet
Share
More Decks by Ryosuke Sekido
See All by Ryosuke Sekido
先進事例から学ぶ DevSecOpsでセキュリティに取り組むコツ
sekido
PRO
0
350
ライブラリとの上手な付き合い方
sekido
PRO
0
340
Other Decks in Technology
See All in Technology
AWS re:Inventを徹底的に楽しむためのTips / Tips for thoroughly enjoying AWS re:Invent
yuj1osm
0
180
生成AI×マルチテナントSaaSな新規事業を立ち上げる上でテックリードとして気を使った点の紹介
lunastera
0
530
Sidekiq vs Solid Queue
willnet
11
7k
30万人が利用するチャットをFirebase Realtime DatabaseからActionCableへ移行する方法
ryosk7
2
300
omakaseしないための.rubocop.yml のつくりかた / How to Build Your .rubocop.yml to Avoid Omakase #kaigionrails
linkers_tech
3
210
ActiveRecord SQLインジェクションクイズ (Rails 7.1.3.4)
kozy4324
9
2.1k
端末が簡単にリモートから操作されるデモを通じて ソフトウェアサプライチェーン攻撃対策の重要性を理解しよう
kitaji0306
0
150
WINTICKETアプリで実現した高可用性と高速リリースを支えるエコシステム / winticket-eco-system
cyberagentdevelopers
PRO
1
170
「最高のチューニング」をしないために / hack@delta 24.10
fujiwara3
15
2.7k
話題のGraphRAG、その可能性と課題を理解する
hide212131
0
150
Railway Oriented Programming を オニオンアーキテクチャに適用する by kotlin-result / Railway Oriented Programming in Onion Architecture by kotlin-result
yuitosato
2
210
2024-10-30-reInventStandby_StudyGroup_Intro
shinichirokawano
1
230
Featured
See All Featured
Designing Experiences People Love
moore
138
23k
Unsuck your backbone
ammeep
668
57k
Testing 201, or: Great Expectations
jmmastey
38
7k
KATA
mclloyd
29
13k
GraphQLの誤解/rethinking-graphql
sonatard
66
9.9k
The Myth of the Modular Monolith - Day 2 Keynote - Rails World 2024
eileencodes
13
1.9k
Done Done
chrislema
181
16k
Designing Dashboards & Data Visualisations in Web Apps
destraynor
228
52k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
126
18k
How to train your dragon (web standard)
notwaldorf
88
5.6k
What’s in a name? Adding method to the madness
productmarketing
PRO
22
3.1k
Embracing the Ebb and Flow
colly
84
4.4k
Transcript
シフトレフトで挑む セキュリティの生産性向上 Developers Summit 2024 Summer エキスパートセキュリティコンサルタント 関戸 亮介 NRIセキュアテクノロジーズ株式会社
DXセキュリティコンサルティング事業本部 シフトレフトセキュリティ事業部 2024年7月23日
1 シフトレフトで挑む セキュリティの生産性向上 トピック プロダクト開発とセキュリティへの取り組み シフトレフトを支えるソリューション・サービスの紹介 シフトレフト実践のポイント 想定ユーザ 現在プロダクト開発に取り組まれている開発者・マネージャー 今後プロダクト開発への取り組みを予定しているかた
本講演は撮影可・ソーシャルメディア投稿可です 資料はSpeakerdeckで公開済みです https://speakerdeck.com/sekido/20240723-developers-summit-shiftleft
2 発表者について 関戸 亮介 NRIセキュアテクノロジーズ株式会社 DXセキュリティコンサルティング事業本部 シフトレフトセキュリティ事業部 開発チームのシステム開発セキュリティを支援 組織やシステム特性に応じたセキュリティ設計や開発プロセスの策定支援 自動化ツールの評価やCI/CDパイプラインへの組み込み支援
DevSecOpsトレーニングコースの開発および講師
3 会社情報 社 名 NRIセキュアテクノロジーズ株式会社(略称:NRIセキュア) 会 社 所 在 地
本社 :東京都千代田区大手町 東京サンケイビル 横浜ベイオフィス :神奈川県横浜市神奈川区 横浜ダイヤビルディング サイバーセキュリティハブ大阪:大阪府大阪市北区 中之島フェスティバルタワー・ウエスト 北米支社 :米国カリフォルニア州アーバイン 設 立 年 月 日 2000年8月1日 ※サービス提供開始:1995年 資 本 金 4.5億円 株 主 株式会社野村総合研究所 取 締 役 会 長 大元 成和 代 表 取 締 役 社 長 建脇 俊一 専 務 取 締 役 池田 泰徳 常 務 取 締 役 西内 喜一 取 締 役 小林 賢治、 武田 則幸、山口 隆夫、 能勢 幸嗣 監 査 役 桧原 猛 社 員 数 連結:818名、単体:703名 N R I セ キ ュ ア グ ル ー プ 会 社 株式会社ユービーセキュア:東京都中央区 株式会社NDIAS :東京都港区 提 供 実 績 官公庁、金融機関、流通、製造、製薬、通信、マスコミ など 認 証 取 得 ISO/IEC 27001認証取得 野村総合研究所(NRI)グループにおける情報セキュリティ専門の中核企業 (2024年7月1日現在)
4 コンサルティング セキュリティ診断 SOC・マネージド セキュリティサービス セキュリティ 製品・ソリューション セキュリティ 教育・研修 5つの提供サービスカテゴリ
4コア事業 コンサルティング 顧客密着型の問題解決支援 ストラテジーコンサルティング事業本部 マネジメントコンサルティング事業本部 サイバーコンサルティング事業本部 マネージド セキュリティサービス 24時間365日の セキュリティ監視サービス マネージドセキュリティサービス事業本部 マネージドセキュリティサービス開発本部 ソフトウェア 日本市場に合わせた自社開発の セキュリティソリューション ソフトウェア第一事業本部 ソフトウェア第二事業本部 デジタルトランスフォーメーション をセキュリティで支援 DXセキュリティコンサルティング事業本部 DXセキュリティプラットフォーム事業本部 DXセキュリティ 研究開発センター 先進技術の探索・評価、およびサービス開発の推進・統括 戦略ITイノベーション 政策動向やマーケットニーズの洞察によるソリューション創発 戦略ITイノベーションと研究開発 サービス・製品提供体制 社会やニーズの変化、技術動向に応じたサービス・製品を4つのコア事業で提供
5 対外発信活動 アジャイル開発を活かすセキュリティ対策として DevSecOpsやシフトレフトを啓蒙している 外部講演 2015年頃からDevSecOpsに着目し発信した 多数の講演を通じて発信している 2024年 GitLab社主催セミナーでの講演 2023年
金融ISAC アニュアル・カンファレンス2023での講演 IT社会の安全を支える仕事の認知向上のため 『サイバーセキュリティー会社図鑑』を制作 『ITロードマップ2017年版』に DevSecOpsの可能性に着目し執筆 デジタル政策フォーラム主催 『Cybersecurity Awards 2023』優秀賞受賞
SEC Team Servicesのミッション ソフトウェア開発を通じ、 セキュリティから支えることで 価値のある社会づくりに貢献する
プロダクト開発と セキュリティへの取り組み
8 継続的なプロダクト開発を通じ、競争力を高める 継続的にプロダクト開発へ投資する プロダクトの競争力を高める 開発したシステムを次々にリリースする
9 「新しいもの」を作るために試作と評価を繰り返す 「新しいもの」(機能など)を検討し、試作する 試作したものを利用・評価し、次のプロダクト開発に活かす 明確になった要件から順次着手する 「アジャイル開発プロセス」と相性が良い リリースした機能へのフィードバックにも迅速に対応できる 要件定義 開発 テスト
リリース ウォーター フォール型開発 アジャイル開発 開発 リリース 4カ月で1回リリースできても、 2週間ごとのリリースでは 8回リリースできる
10 「セキュリティ」はリスクを特定・管理・対策を講じる 目標像と現在の状況を把握する リスクを管理して、対応をとる スコープを 設定する リスクを特定する範囲を設定する 守るべき情報資産を明確にする リスクを 特定する
設定したスコープ内のリスクを特定する 脅威分析やソリューションによる分析などがある リスクを 評価し管理する 特定したリスクを評価し優先度を決定する リスクへの 対策を検討する リスクへ対処する場合、具体的な方法を検討し決定する セキュリティソリューションによる軽減策などがある
11 具体的なセキュリティ施策に当てはめると... Webアプリ 診断サービス 完成した Webアプリ 診断サービス にて実施する 診断サービスの 報告書を確認する
アプリ修正 or 他の方法 スコープを 設定する リスクを 特定する リスクを 評価し管理する リスクへの 対策を検討する ソースコード検査 (SAST) ソースコード ツールで検査する ツールの結果を 確認する アプリ修正 or 他の方法 脅威モデリング システム設計 リスクを洗い出す リスクを評価し 優先度を決定する 設計変更 or 他の方法 例えば…
12 セキュリティの生産性を向上させる2つの取り組み シフトレフト より前の工程でセキュリティリスクを管理し対策を講じること それぞれの工程に適した手法を用いる セキュリティ・バイ・デザイン 「設計」としてセキュリティを作り込むこと 安全な設計に基づき開発したシステムは安全であること
13 セキュリティの生産性向上例 開発者 スクラムチーム 開発プロセス 策定支援・ セキュリティ 設計支援 勉強会・ よろず相談
変更差分 コードレビュー ・セキュリティ 設計評価 リポジトリ CI/CD パイプライン 脆弱性対応 セキュリティ ソリューション 導入/運用支援 運用支援 セキュリティコンサルタント 検査ツール セキュリティ・バイ・デザ イン:セキュリティを確保 したプロセスづくり シフトレフト:より前の工 程でセキュリティリスクを 管理し対策を講じること
14 事例①開発プロセスにおけるセキュリティバイデザイン 担当者に依存しないセキュリティの仕組みを確立した シフトレフト 上流工程でのセキュリティ対策 セキュリティ・バイ・デザイン 「システム間接続」「処理フロー」 「求められる対策」をガイド化した 「セキュリティ設計資料」を受領し 確認する仕組み
セキュリティ品質の向上と、 リリース遅延およびコスト増の リスク減少を感じる 本事例の取り組み「セキュリティ・バイ・デザインに基づく セキュリティ強化スキームの構築」に関して、 MS&ADホールディングス様、MS&ADシステムズ様とともに、 第41回IT賞「IT奨励賞(マネジメント領域)」を受賞しました。
シフトレフトを支える ソリューションの紹介
16 ソースコード管理 共働作業を効率的に行うため中央リポジトリで管理する ソースコード類は分散管理のgitを使った開発が主流 変更管理やCI/CDで利用するパイプライン機能が統合されているものがある https://aslead.nri.co.jp/partner/gitlab.html 野村総合研究所は「GitLab認定プロ フェッショナルサービスパートナー (PSP )」に認定されております
17 SCA(ソフトウェア構成解析) ソフトウェアが依存するライブラリを管理する ソフトウェアが利用(依存)しているライブラリを管理し、既知の脆弱性を把握できる 高機能なものは独自の脆弱性DBをもち、更にライブラリの更新ができる ソフトウェアのパッケージ管理システムにより対応有無が分かれること、 また間接的に利用しているライブラリをどこまで多段で把握できるか ※ リポジトリとSnykを接続するとライブラリの把握が可能 ※
SASTなど、SCA以外の機能も有している
18 SAST(静的アプリケーションセキュリティテスト) 主にソースコードの脆弱性を検査する ファイルを検査するので比較的短時間で検査できる 高機能なものはコード間の呼出関係を考慮した精度の高い検査ができる 開発言語により対応有無があり、誤検知がでやすい https://sig-product-docs.synopsys.com/bundle/bridge/page/documentation/t_gitlab-polaris-cli-quickstart.html polaris: stage: polaris
image: golang:1.22.3 #golangが実行可能な任意の環境 before_script: - apt-get update - apt-get install -y curl unzip script: # polarisのインストール - curl -fLsS -o bridge.zip https://sig-repo.synopsys.com/ artifactory/bds-integrations-release/com/synopsys/integration/ synopsys-bridge/latest/synopsys-bridge-linux64.zip ¥ && unzip -qo -d /tmp bridge.zip && rm -f bridge.zip - chmod +x synopsys-bridge/synopsys-bridge # polarisの実行 - synopsys-bridge/synopsys-bridge --stage polaris --input input.json
19 DAST(動的アプリケーションセキュリティテスト) 起動したアプリケーションの外部挙動から脆弱性を検査する 実際の攻撃者と同じ視点で検査でき、開発言語によらず検査ができる 模擬攻撃リクエストを試行するため、独立した環境を用意し検査に時間がかかる vex: script: - vex-cli scan
-w -r -wg audit_simple_20240509 -p 1234 --report-failure-level High timeout: 10m artifacts: paths: - ./scan_report.xml when: always
自動でラクラク診断 セキュリティの専門知識は不要です。 ツールにお任せで自動的にサイトを解析し、診 断を実施します。 1 修正までしっかりフォロー 脆弱性は見つけてからが本番です。 診断結果をわかりやすく管理、担当者やステー タスを変更しながら修正までフォローできます。 2
大量サイトも手間なく管理 対象サイトごとに権限を分けて担当を付けたり、 全サイトの結果をダッシュボードで確認するなど、 大規模な運用にも対応できます。 3 脆弱性診断をより身近に、簡単に はじめての診断から 大規模な運用まで幅広く対応! 20
21 IAST(対話型アプリケーションセキュリティテスト) 起動したアプリケーションの内部挙動から脆弱性をエージェントが検査する 正常系フローの実行でも、脆弱性の検出ができる 開発言語に依存して対応有無があり、 自動テストなどアプリ実行の仕組みと組み合わせる必要がある contrastAssess: image: ghcr.io/contrast-security-oss/integration-verify:latest stage:
security_gate script: - /usr/bin/env python3 /verify.py allow_failure: true https://support.contrastsecurity.com/hc/en-us/articles/5129761990548-How-to-integrate-Contrast-in-a-GitLab-pipeline
コンサルティングサービス紹介
23 SEC Team Services 貴社開発者 貴社開発者 リリース・ 運用 テスト 実装
設計 要件定義 企画 よろず相談 ベスト プラクティス 回答 よろず相談 セキュア コーディング、 サンプル コード提示 ⚫ セキュリティ観点を踏まえた 設計を行うために、当社のコ ンサルタントが設計業務を支 援します ⚫ セキュアコーディングに関す る質問に対して、当社のコン サルタントがサンプルコード を提示します 支援内容例 課題例 ⚫ 設計の段階でセキュアな設計 になっているか分からない ⚫ 開発者のセキュリティ知識が 不足しており、セキュアコー ディングが行われていない (対策が十分であるか確認で きない) システム開発を理解したセキュリティ コンサルタントが開発チームに寄り添って シフトレフトを支援するコンサルティングサービス
24 報告書の作成 セキュリティ設計評価サービス セキュリティ設計評価ではセキュリティバイデザインを支援します。 お客様で作成された設計内容に関してセキュリティ観点からレビューを行い、報告書を作成 して今後の方針等を報告会で提案します。 頂いた情報をもとに 設計内容のレビュー を行い、報告書にま とめます。
報告会の実施 報告会を行い、レ ビューした内容や今 後の改善方針につい てご報告と提案を行 います。 設計書・設計内容のレビュー 設計書類(概要設計・方式設計・外部設計等)を提供いただき、 分析を行います。追加で確認が必要な部分はヒアリングシートを 使って確認します。 お客様社内のレビュー会議など、打ち合わせの場に同席し、ヒア リングシートを用いながらセキュリティ観点の状況を確認します。 ※ ご要望に応じて、ドキュメントレビュー形式と会議同席形式を組みあわせることも可能です。 ドキュメントレビュー形式の場合 会議同席形式の場合
25 セキュリティ診断サービス 完成したシステムに対し、弊社診断員が脆弱性の有無を検査します。 Webアプリ・プラットフォーム、ソースコードなど多様な観点で診断します。 既存システムなど、検査結果の精査を省力化できます。 リモート診断 オンサイト診断 お預かり診断 インターネットより診断を実施 ✓
インターネット経由の脅威を想定 イントラネットより診断を実施 デバイスをお預かりして診断を実施 Internet Internet Internet ✓ 内部セグメントで生じる脅威を想定 ✓ IoTデバイス ✓ スマートフォンアプリ
26 セキュリティ研修:セキュアEggs(DevSecOps) DevSecOpsとしてDevOpsやアジャイル開発の速度や文化に適した セキュリティの考え方やツールについて、講義と演習で学びます。 • DevOps、DevSecOpsを今後実践していく、またその意欲のあるエンジニア • DevSecOpsの具体的な意義や関わる技術について理解したいマネジメント層の方 • DevSecOpsについて全体像を把握できる
• プロセスの設計・ツールの選定を行い、DevSecOpsを開始できるようになる 内容 対象者 効果 前提 条件 • システム開発や運用の経験がある • 手順に沿ってLinuxのCLIの操作ができる (以下は推奨スキル) • gitコマンドを使ったことがある、手順に沿ってLinuxのCLIの操作ができる アジャイル開発・DevOpsの知識を有する
27 事例②共通組織としてセキュリティチームを組織 デジタル化による急速な市場変化への対応能力を獲得する アジャイル開発に取り組み、共通組織としてセキュリティチームを置いた Two-pizza teams (10人程度)の アプリチームがシステムを担当する 開発チームを支援する共通機能として 「QA」「SRE」「アーキテクチャ」
そして「セキュリティ」を置いた セキュリティチームは各チームに対し 質問対応やセキュリティ勉強会、 セキュリティ診断を実施している 生産性の高いプロダクト開発を 実践し、開発の規模が拡大している
シフトレフト実践のポイント
29 シフトレフト実践のポイント 解決したい課題と期待値を明らかにする ソースコード、プラットフォーム、サービス仕様、etc... チーム成熟度とツール機能のバランス 開発プロセスのどこで何を使うか? (エディタ統合で何を見るか、検査結果の何を見るか、など) 解決策を広く調査し、机上で評価・比較する コンサルティングを依頼する ソリューションを導入する
スモールスタートで使ってみる 各ソリューションにPoCを申し込む 多くの実プロジェクトで評価する(開発言語や環境により、結果が変わることがある)
30 最新情報を入手するために ブログ 弊社コンサルタントが執筆している https://www.nri-secure.co.jp/blog メールマガジン ブログの新着記事やイベント情報を得られる https://www.nri-secure.co.jp/mail セミナー(オンライン型・会場型) セキュリティに関する各種セミナー情報を得られる
https://www.nri-secure.co.jp/seminar 導入事例 課題解決のため製品やサービスの活用例を得られる https://www.nri-secure.co.jp/service/case
31 迷ったときはコンサルタントをご活用ください 弊社コンサルタントはお客様の状況を踏まえ、 幅広い視点と最新動向を踏まえ助言をします 『SEC Team Services』は プロダクト開発の生産性向上に貢献します
まとめ
33 まとめ プロダクト開発では試行錯誤を繰り返して、プロダクトを成長させる 明確になった要件から順次着手する「アジャイル開発」が一般に適している 「シフトレフト」(より前の工程でセキュリティに取り組む)と 「セキュリティ・バイ・デザイン」(設計でセキュリティを作り込む)により セキュリティの生産性を向上する ソリューションやコンサルティングを活用する プロダクト開発に注力し、競争力を高められる PoCを含め、スモールスタートで自らの環境にあっているか確認する
34 明日から始めるシフトレフトの実践例 今日 NRIセキュアの講演についてレポートを作成し、自社に報告をする。 ブログやウェビナー(オンデマンド)を視聴し、自社での活用をイメージする。 10月 25年度のプロダクト開発について計画を立て始める。 NRIセキュアの支援事例ウェビナーを視聴し、具体的な活用イメージをもつ。 NRIセキュアにコンタクトを取り、開発体制を相談する。 25年1月
プロジェクト始動に先立ち、NRIセキュアに『セキュア開発基盤の構築支援』を依頼する。 NRIセキュアから『開発ガイドライン』を購入し、『開発者向け勉強会』を実施する。 4月 プロジェクト始動にあわせて、 NRIセキュアの『SEC Team Services』を活用して、 開発チームに対するセキュリティの支援体制を構築して、開発に着手する。 9月 計画通りに初期リリースを済ませる。 7月 NRIセキュアに、初期リリースの『各種診断』を実施してもらう。 10月 開発チームのスキル定着を確認し、NRIセキュアと来期の開発体制を計画する。
None