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

脆弱性診断の内製化と外注

Misaki Makino
September 08, 2023

 脆弱性診断の内製化と外注

2023/09/07 Cyber-sec+ MeetUp vol.1
で発表した内容です。

Misaki Makino

September 08, 2023
Tweet

More Decks by Misaki Makino

Other Decks in Programming

Transcript

  1. 脆弱性診断の内製化と外注
    2023/09/07 Cyber-sec+ MeetUp vol.1
    牧野 美咲

    View Slide

  2. 自己紹介
    名前
    経歴
    牧野 美咲(Misaki Makino)
    ● 2017/04 某IT企業 新卒入社
    ● 2017/06 プロダクト開発部 開発エンジニア
    ● 2019/07 セキュリティ室 セキュリティエンジニア
    ○ 未経験からスタート
    ○ 脆弱性診断、規程作りを主に担当
    ● 2023/03 株式会社3Sunny セキュリティ何でも屋
    ○ 会社noteでセキュリティマガジン始めました
    \ Follow Me! /

    View Slide

  3. 本日のテーマ
    ● 脆弱性診断の内製化ってどんな感じ?
    ● 脆弱性診断の外注ってどんな感じ?
    ● 内製と外注でどんな違いがあるの?
    脆弱性診断の内製化と外注
    牧野が前職で経験したことをお話させていただきます!

    View Slide

  4. 本日のゴール
    内製化や外注について、少しでも参考になれば幸いです!
    うちの会社ではこうだな...
    うちの会社ではこうしてみよう!
    何らかの気づきを得られている状態

    View Slide

  5. アジェンダ
    1. 内製化について
    2. 外注について
    3. 内製と外注の比較
    4. 重要だと思っていること
    5. まとめ

    View Slide

  6. 内製化について

    View Slide

  7. 内製化の歩み
    2019年 (異動直後)
    先輩が1人在籍
    ←こんな感じ
    脆弱性を報告して
    も是正されない
    日々...
    2023年 (退職直前)
    脆弱性診断士4人
    チームに!
    放置される脆弱性
    がゼロに!
    4年間でどのように内製化していったのでしょうか?

    View Slide

  8. ボトムアップとトップダウン
    脆弱性是正を促進するための草の根活動
    ● ガイドラインを作成、勉強会実施
    ● 診断後に脆弱性を説明するMTG実施
    社内規程の大幅リニューアル
    ● 脆弱性是正プロセスを会社のルールとして明示
    ● 是正計画期間を設定
    ボトム
    アップ
    トップ
    ダウン

    View Slide

  9. 外注について

    View Slide

  10. 2種類のベンダーを利用
    ベンダーA
    ● 日本の会社
    ● Slack, zoomでやりとり
    ベンダーB
    ● 海外の会社
    ● メールでやりとり

    View Slide

  11. 脆弱性診断スタイルが異なる
    ベンダーA
    ● 診断は1~2名が専任
    ● APIベースで診断
    ● レポートとして脆弱性共有
    ベンダーB
    ● 診断士の人数は不明
    ● バグバウンティで自由に診断
    ● 専用のサイトで脆弱性共有

    View Slide

  12. 内製と外注の比較

    View Slide

  13. 脆弱性診断の流れの比較
    診断前MTG 診断準備 診断実施
    レポート
    作成と提出
    診断後MTG 是正確認
    内製
    診断前MTG
    診断準備
    サポート
    診断実施
    サポート
    レポート
    作成と提出
    診断後MTG 是正確認
    外注
    外注では、ベンダーが準備や実施をうまくできない時に、
    開発部に確認してサポートします

    View Slide

  14. 良かったこと 大変だったこと
    内製
    外注
    良かったこと 大変だったこと
    ● 臨機応変にスポット診断ができる
    ● コミュニケーションコストが低い
    ● 診断時間を他の業務に使える
    ● 計画通りに進められる
    ● 採用コストがかかる
    ● 計画通りに進まない
    ● 外注コストがかかる
    ● コミュニケーションコストが高い

    View Slide

  15. 比較すると
    どちらがいいというのは言い切れません...
    お金 時間 コミュニケーション
    バランスを鑑みながら、自社の環境に合わせて検討してみてください!

    View Slide

  16. 重要だと思っていること

    View Slide

  17. 内製でも外注でも
    診断前MTG 診断準備 診断実施
    レポート
    作成と提出
    診断後MTG 是正確認
    内製
    診断前MTG
    診断準備
    サポート
    診断実施
    サポート
    レポート
    作成と提出
    診断後MTG 是正確認
    外注
    診断後MTGが最重要だと思っています!

    View Slide

  18. セキュリティ室:ミクロな視点
    攻撃者の気持ちになって
    リスクシナリオを考える
    開発部:マクロな視点
    プロダクト環境全体を
    俯瞰して考える
    開発部と共にリスクレベル評価
    両者が揃うことでより正確な評価ができるようになります!

    View Slide

  19. プロダクト全体としての「優先順位付け」がしやすくなります!
    正確なリスクレベル評価ができると
    開発部との信頼関係構築へ!
    脆弱性A是正
    新規機能開発
    機能修正
    1
    脆弱性B是正
    3
    2
    4

    View Slide

  20. まとめ

    View Slide

  21. まとめ
    内製 外注
    脆弱性診断の流れの違い
    メリットとデメリット比較
    どちらでも重要なのは診断後MTG
    開発部と共に
    リスクレベル評価を行う
    ご清聴ありがとうございました!

    View Slide

  22. LiveQにお寄せいただいた
    質問への回答

    View Slide

  23. 質問1
    牧野さんの登壇での質問 ボトムアップでの施策で、ガイドラインや勉強会
    とありましたが、具体的にどのようなことをやられたのでしょうか?
    ご質問ありがとうございました😊
    ガイドラインや勉強会について、具体的な取り組みを次ページでご紹介さ
    せていただきます👉
    Q.
    A.

    View Slide

  24. ガイドラインについて
    規程に書いてある内容について、「なぜそれをするのか?」
    「具体的にどう実装するのか?」を詳しく書きました。
    ルール1. 〇〇すること
    〜〜〜というリスクがあるため、〜〜〜をします。
    〜〜〜のために、〜〜〜をします。
    【具体的な実装例】
    ・hogehoge
    ・hogehoge
    こんな感じのフォーマットで
    作成していました〜😃

    View Slide

  25. 勉強会について
    2パターン開催していました!
    ガイドライン改善会
    ガイドラインの内容について
    わかりにくい表現がないか?実装例は適切か?
    ヒアリングするパターン
    ガイドライン輪読会
    エンジニアの皆さんが自主的に開いて下さった
    輪読会にアドバイザーとして参加するパターン

    View Slide

  26. 質問2
    ベンダーBさんって料金形態どうなっていたんでしょう?
    (ちゃんとやってくれてるのかも謎...?)
    ご質問ありがとうございました😊
    料金形態は「1サービスにつきいくら」といった形でした。おっしゃる通
    り、進捗状況はブラックボックスなので、どこまで実施しているのかはわ
    かりませんでした。(ちゃんと実施して下さってたとは思います!)
    Q.
    A.

    View Slide

  27. 質問3
    是正計画期間はどのくらいを定めていましたか。また、脆弱性の重大度に
    よる是正の優先度はどのように定義つけていましたか。
    ご質問ありがとうございました😊
    是正計画期間はリスクレベルに応じて、即日〜数ヶ月で定めていました。
    リスクレベルに応じた是正期間は定義しておりましたが、脆弱性の重大度
    による是正の優先度は定義しておりませんでした。
    Q.
    A.

    View Slide

  28. 質問4
    内製と外注の診断の品質の差が気になります。内製でも専門業者と同じく
    らいの品質で診断できるのでしょうか。
    ご質問ありがとうございました😊
    私たちのチームは、前職で専門業者を経験された方が数名在籍しており、
    チームみんなでナレッジ共有、レポート提出前のレビューを行っておりま
    したので、品質に大きな差はなかったと思います!
    Q.
    A.

    View Slide

  29. 質問5
    内製化の診断範囲と外注した診断範囲は同じですか? 差があればどう区別
    したのか教えていただきたいです。同じ場合は二重で行うメリットを教え
    ていただきたいです。
    ご質問ありがとうございました😊
    内製は主にスポット診断をメインに、外注では年に一度の定期脆弱性診断
    をお願いしておりました!
    Q.
    A.

    View Slide

  30. 質問6
    脆弱性診断士の教育はどのようにされていたのでしょうか。教育に工夫し
    ていたことなどありましたら、教えていただけますと幸いです。
    ご質問ありがとうございました😊 工夫した点は2つございます。
    1つ目は、脆弱性の検出方法を録画するようにしたことです。
    これは元々レポート提出の際に、少しでもわかりやすいようにと始めたの
    ですが、この動画を見ることで、経験の浅い診断士の方々のキャッチアッ
    プも向上しました!もう1つ目は次ページで解説します👉
    Q.
    A.

    View Slide

  31. 脆弱性スターターキットの作成
    オンボーディング用に脆弱性診断スターターキットを作成し、
    まず最初にこのキットで診断業務を体験していただきました!
    \noteでマガジン公開中です/

    View Slide

  32. 質問7
    仕様が開示された上で診断するのか、開示せずに攻撃を試行させるのとど
    ちらのスタイルになりますか?
    ご質問ありがとうございました😊
    スタイルはケースバイケースでした!新規機能のリリース前の診断では、
    開発部から仕様の説明を受けた上で診断していましたが、定期診断では開
    示なしで攻撃をしていました。
    Q.
    A.

    View Slide

  33. 質問8
    どれくらいの規模およびサービス数だった際のお話なのでしょうか。範囲
    としてはWebでしょうか
    ご質問ありがとうございました😊
    サービス数はだいたい15プロダクトくらいのお話です。
    範囲としてはwebとスマホアプリの診断をしていました!
    Q.
    A.

    View Slide

  34. 質問9
    「脆弱性を放置されない」とありましたが、この場合の放置されない、は
    どういった意味でしょうか。修正まで含むのでしょうか
    ご質問ありがとうございました😊
    はい、修正まで含んだ意味となります。
    「全プロダクトの検出状況・是正計画状況・是正状況をモニタリングでき
    ている状態」を指しておりました!
    Q.
    A.

    View Slide

  35. 質問10
    内製と外注を同時進行しているのでしょうか? 同じ脆弱性診断を外注に頼んで
    内製でも実施しているのか 外注していない製品を内製で実施しているのかがわ
    からず、、 お手数ですがご教授のほどよろしくお願いいたします。 また、も
    し、外注と内製で同じ脆弱性診断を同時に実施している場合、何かメリットが
    ありましたらご教授をお願いします。
    ご質問ありがとうございました😊
    内製と外注を同時進行していました!たくさんのプロダクトがございましたの
    で、プロダクトAの定期診断は外注、プロダクトBの定期診断は内製、といった
    使い分けをしておりました。同じ診断を同時に実施したことはございません。
    Q.
    A.

    View Slide

  36. 質問11
    内製した人員ですが、常に診断業務をおこなっているのでしょうか
    ご質問ありがとうございました😊
    はい、常に診断業務をおこなっていました!
    診断業務だけではなく、他の業務も並行しておこなっていました。
    (私の場合は規程作りや教育活動)
    Q.
    A.

    View Slide

  37. ご質問
    ありがとうございました!

    View Slide