Upgrade to Pro — share decks privately, control downloads, hide ads and more …

セキュリティ研修 〜マネジメントパート〜(サイバーエージェント新卒研修2024)

セキュリティ研修 〜マネジメントパート〜(サイバーエージェント新卒研修2024)

CyberAgent

June 05, 2024
Tweet

More Decks by CyberAgent

Other Decks in Technology

Transcript

  1. 18 社会に大きな影響を与える = ネガティブな影響も与えうる
 • 炎上する
 • ユーザーが激減する
 • 法的責任を問われる


    • 今後の新サービスにネガティブな影響を及ぼす など
 
 事業を続けることが困難になりかねない。

  2. 情報セキュリティとは JIS Q 27000:2019の定義
 3.28 
 情報セキュリティ(information security) 
 情報の機密性(3.10)、完全性(3.36)及び可用性(3.7)を


    維持すること。 
 
 さらに,真正性(3.6),責任追跡性,否認防止(3.48),信頼性(3.55)などの特性を維持する ことを含めることもある。

  3. • 機密性(Confidentiality)
 • 完全性(Integrity)
 • 可用性(Availability)
 完全性
 Integrity
 機密性
 Confidentiality


    可用性
 Availability
 情報セキュリティ3要素
 CIA
 これらを脅かすものから情報資産を
 守ることが情報セキュリティの
 基本的な考え方です
 
 情報セキュリティを保つことは、
 ビジネス(事業)を継続するうえで、
 とても大切なポイントになります。
 情報セキュリティとは

  4. まずはそれぞれの定義を確認しましょう
 
 1. 識別
 ◦ ユーザーがシステムに対して自分が誰か宣言すること
 2. 認証
 ◦ システムがそのユーザーが宣言した人物か確認すること


    3. 認可
 ◦ 認証されたユーザーがシステムの特定のリソースにアクセスすることを許可す ること
 
 【参考】 • NIST SP 800-63 • RFC4949
  5. 機密性に関する情報セキュリティ対策の例 ①識別と➁認証を経ても、権限がなければ ③認可で弾かれる
 ①識別 ➁認証 ③認可 パーくんの部屋にはいっちゃえ!
 103号室 以外ダメだよ! え、ちょ、怖いよ!


    契約で部屋を借りる宣 言をする 103号室は ワームくんが使う 鍵を持って マンションに入る 鍵があるから 本人だろう 借主が借りている 部屋に入る
  6. アクセス制御
 
 ビジネス要件およびセキュリティ要件に基づいて、
 情報資産へのアクセスが許可および制限されることを保証する手段 のこと。
 
 
 ビジネス要件とは、ザックリ言ってしまえば 
 「事業や業務を遂行するために必要な要件」です。

    
 
 どんな事業を行うのか、
 その事業ではどんな業務を定義するのか、 
 その業務ではどんな情報を扱うのか 
 これらを整理することで、必要なセキュリティ要件を占えます 
 【機密性】識別・認証・認可とは
  7. 機密性に関する情報セキュリティ対策の例 ①識別 ➁認証 ③認可 MFA (Multi-Factor Authentication) ①~③の各ステップで、様々なアクセス制御方法があります。
 ユーザーを登録する 開発者が登録された

    ユーザー本人か 確認する ID/PASS OKだから本人だろう 許された範囲で アクセスできる 開発環境はOK 本番環境はNG 開発者
 システム ※ ➁はあくまでも「看做している」だけなので、単純な認証方法(例えばID/PASSの組み合わせのみの単要素認証など) では、成りすましによる不正アクセスを招く可能性が跳ね上がります。 
 例えば、MFAの導入などにより、ユーザー本人であることの裏付けを採ることが認証では重要になります。 

  8. 機密性に関する情報セキュリティ対策の例 ①~③の各ステップで、様々なアクセス制御方法があります。
 ①識別 ➁認証 ③認可 RBAC (Role-Based Access Control) ユーザーを登録する

    開発者が登録された ユーザー本人か 確認する ID/PASS OKだから本人だろう 許された範囲で アクセスできる 開発環境はOK 本番環境はNG 開発者
 MFA (Multi-Factor Authentication) システム ※ ③は、不正アクセスをされた場合、被害の範囲を抑える観点でも重要です。 
  例えば、システム内の全てのコンポーネント/データにアクセスできるアカウントが侵害を受けた場合、 
  システムの乗っ取りすら可能になってしまいます。 

  9. 事例2
 
 原因
  ・機能開発におけるシステム設計の考慮漏れ
 
 再発防止策
  ・システム設計時の社内レビュー体制を拡充する
  ・社外・第三者によるレビュー体制を導入する(検討する)
 
 


    サイバーエージェントでは、リリース前、および、
 リリース後も定期的に脆弱性診断を実施しています。
 脆弱性診断後の改修も踏まえて、
 開発スケジュールを立てましょう。
 リスクとは
  10. 事例3
 
 概要
  ソフトウェアフレームワーク「Apache Struts 2」の脆弱性を
  悪用した不正アクセスの事例
 
 
 この脆弱性の悪用は、


    多くの企業に被害を及ぼしました。
 
 ここでは、脆弱性がどのようなスピード感で
 悪用されるのか一例を紹介します。
 リスクとは
  11. 事例3
 
 概要
  ソフトウェアフレームワーク「Apache Struts 2」の脆弱性を
  悪用した不正アクセスの事例
 
 被害
  例えばある企業においては、下記のような被害が発生した。


     ・クレジットカード番号・有効期限・セキュリティコード
  ・メールアドレス等の個人情報の漏えい
 
 ※ この企業では、再発防止委員会の設置、コールセンター設置、
   フォレンジック対応、経済産業省への報告対応、
   PCI DSS再審査対応など 膨大な事後対応も発生した
 リスクとは
  12. 事例3
 
 原因
  Apache Struts 2の脆弱性(S2-045/CVE-2017-5638)対応が遅れたため
 「遅れた」とありますが、、、
 
 当時、US Apache

    Siteで脆弱性情報が公開された翌日には、
 Githubで攻撃コードが公開されています。
 
 そして、攻撃コード公開の翌日には、攻撃が開始されています。
 
 このように、脆弱性が公開されてから攻撃に転用されるまでの
 スピードは、皆さんの想像を超えるレベルで早いものです。
 リスクとは
  13. おさらい
 • リスク=脅威*脆弱性*情報資産
    
 しかし、、、
 リスクアセスメント 脅威 情報資産 脆弱性 リスク

    【参考】 ISO/IEC 27005:2022 Information technology — Security techniques — Information security risk management
  14. 脅威 情報資産 脆弱性 リスク • 情報資産
 • 脅威
 • 脆弱性


    これらを何らかの手段で数値化して、
 リスク値を測定する方法があります
 
  ☛ それぞれの円が大きくなると
  それだけ「リスク」も大きくなる
 リスクアセスメント
  15. 【参考】リスク評価のメソッド例
 • DREAD
 ◦ 5要素を評価し平均値スコアとする
 ▪ Damage Potential(損害の可能性)
 ▪ Reproducibility(再現性)


    ▪ Exploitability(悪用のしやすさ)
 ▪ Affected Users(影響を受けるユーザ)
 ▪ Discoverability(発見のしやすさ)
 リスクアセスメント 【原文】 Microsoft Build Chapter 3 – Threat Modeling
  16. リスクアセスメント • リスク低減
 ◦ 
 • リスク回避
 ◦ 
 •

    リスク移転
 ◦ 
 • リスク保有
 ◦ 
 【参考】ISO 31000:2018 — Risk management
  17. リスクアセスメント • リスク低減
 ◦ 具体的に脆弱性を潰し込むことでリスク値を下げる考え方です
 • リスク回避
 ◦ 情報資産の取り扱いをやめる考え方です
 •

    リスク移転
 ◦ リスク発生を別の組織体と共有する考え方です
 • リスク保有
 ◦ リスクがあると自覚して受け入れる考え方です
 【参考】ISO 31000:2018 — Risk management
  18. リスクアセスメント アプリケーション
 ランタイム
 ミドルウェア
 コンテナ管理機能
 OS
 仮想マシン
 ハードウェア
 アプリケーション
 ランタイム


    ミドルウェア
 コンテナ管理機能
 OS
 仮想マシン
 ハードウェア
 アプリケーション
 ランタイム
 ミドルウェア
 コンテナ管理機能
 OS
 仮想マシン
 ハードウェア
 アプリケーション
 ランタイム
 ミドルウェア
 コンテナ管理機能
 OS
 仮想マシン
 ハードウェア
 オンプレミス
 IaaS
 PaaS
 SaaS
 データ
 アカウント
 データ
 アカウント
 データ
 アカウント
 データ
 アカウント
 クラウドサービスプロバイダの責任 
 クラウドサービスカスタマの責任 
 ▪ クラウド責任共有の例 
 皆さんがクラウドサービスを利用する場合「クラウ ドサービスカスタマ」となります。 
 
 皆さんがクラウドサービスを提供する場合「クラウ ドサービスプロバイダ」となります。 
 
 例えば、AWSやGCPなどを利用して開発をする場 合、クラウドサービスプロバイダ側にセキュリティ に関する対応を委ねることとなります。 
 
 その結果、皆さんは自分の責任を負う範囲に注 力することが可能となります。 

  19. リスクアセスメント • リスク低減
 ◦ 具体的に脆弱性を潰し込むことでリスク値を下げる考え方です
 • リスク回避
 ◦ 情報資産の取り扱いをやめる考え方です
 •

    リスク移転
 ◦ リスク発生を別の組織体と共有する考え方です
 • リスク保有
 ◦ リスクがあると自覚して受け入れる考え方です
 特定・分析したリスクをどのアプローチで
 処理するか定めることを「リスク評価」と称します。

  20. リスクアセスメント 4つのリスク対応を踏まえた、リスク対応のおさらい
 1. 「リスク特定」「リスク分析」により現状を把握する
 a. 情報資産は何で、それはどの程度重要か?
 b. 脅威(CIAを脅かすもの)はどのくらいの頻度で起こり得るか?
 c. その脅威に対して今何をしており、それはどの程度脆弱か?


    
 2. 「リスク評価」でアプローチの方針を定める
 a. 「リスク低減」「リスク回避」「リスク移転」を検討する
 b. 優先度がものは「リスク保有」でリスクを自覚する
 
 3. 「リスク評価」で定めたアプローチの具体案を検討する
 

  21. 法律・ガイドライン 独立行政法人情報処理推進機構(IPA)から
 出されているガイドラインの例
 
 • Web Appliサイバーエージェントtion Firewall 読本
 https://www.ipa.go.jp/archive/security/vuln/waf.html


    • 安全なウェブサイトの作り方
 https://www.ipa.go.jp/security/vuln/websecurity/about.html 
 • ECサイト構築・運用セキュリティガイドライン
 https://www.ipa.go.jp/security/guide/vuln/guideforecsite.html
 ◦ IPAセキュアプログラミング講座
 https://www.ipa.go.jp/archive/security/vuln/programming/index.html

  22. 法律・ガイドライン PCI DSS
 ◦ ロールベースでのアクセス権付与
 ◦ アカウントの厳格な管理
 ◦ 定期的な脆弱性診断/侵入テストの実施 など
 PCI

    DSSは、クレジットカード会員データを
 安全に取り扱う事を目的として策定された、
 クレジットカード業界のセキュリティ基準です
 その要件数は400を超えます。

  23. 法律・ガイドライン 事例4
 X社の
 ECサイト
 敗訴
 欠陥品作りやがって! 損害賠償だ!1億払え! X
 【発注者】
 Y


    【受注者】
 セキュリティの仕様を 指示してないじゃん! 【参考】東京地判平26.1.23判時2221-71 DB
  24. 法律・ガイドライン 事例4
 敗訴
 裁判官
 Yはプロなんでしょ?
 だったら、やるべきことをやる義務があるよね。
 
 IPAとか経産省のガイドラインでも
 「SQLインジェクションの対策は必須」って
 書いているじゃん。


    
 ま~さすがに1億円の責任は無いけど、
 Yはやるべきことやったって言えないから、
 2千万円を損害賠償としてXに支払ってね。
 【参考】東京地判平26.1.23判時2221-71