Skip to main content

効果的なセキュリティリスク管理と優先順位付けの主なアプローチ

著者
Headshot of Shani Gal

Shani Gal

Prioritisation header feature

2020年10月27日

0 分で読めます

100%安全になる簡単な方法はありません。より安全にすることはできますが、その方法は一つではありません。「何もしないのが最も安全」というのはよくある決まり文句ですが、ソフトウェアセキュリティでは、ほとんどの場合そうではありません。最初のコードを1行書いた時点で、その一線はすでに越えています。管理すべきセキュリティリスクが生じているのです。

「リスク管理」は包括的な用語であり、さまざまなアプローチを含みます。私は物事に名前を付けることが大切だと考えています。目標を明確に説明し、測定できれば、より効果的に取り組めるからです。この記事では、主なアプローチをいくつか紹介し、Snykが重視する実践的な視点から、それらを導入する方法もお伝えします。

さまざまなアプローチを見ていく前に、一つ補足しておきます。脆弱性のセキュリティリスクレベルを判断するには、深刻度や悪用可能性、脆弱性の種類、到達可能性、その他の環境要因やビジネス要因など、影響するすべての要素を考慮する必要があります。誤検知を出さずにリスクを正確に算出するのは非常に難しいことですが、この記事ではそれが可能であると仮定します(そうでない場合は、Snykをお使いいただけます)。

セキュリティリスク管理のアプローチ

アプローチA:リスク重視このアプローチでは、リスクを最優先します。リスクが高ければ、どれだけ手間がかかっても、脆弱性をできるだけ早く修正します。リスクが低ければ、必要な作業が少なくても、さほど気にしません。

アプローチB:投資対効果重視重視するのは効率です。時間はお金ですから!対応を決めるときは、「修正にかかる労力」を最も重視します。リスクが中程度でも簡単に修正できるなら、ぜひ対応しましょう。リスクは高くても修正が非常に困難なら、今は見送るかもしれません。少し待てば、修正が容易になる可能性もあります。

アプローチC:全体的な傾向を重視細部よりも、攻撃対象領域全体の傾向を重視します。時間の経過とともに、チームが抱える脆弱性を減らしていきましょう。今週、重大な脆弱性を3件直すか、中程度の脆弱性を4件直すかは、それほど重要ではありません。大切なのは、修正を続けて攻撃対象領域を縮小することです。(極端に考えないでくださいね :) すべての低リスク脆弱性を修正し、重大な脆弱性を無視するという意味ではありません!)

アプローチD:コンプライアンス重視とにかく対応を完了しなければならない場合もあります。コンプライアンスには、第三者による年次セキュリティ監査から、取得したい「認証バッジ」まで、さまざまな形があります。このアプローチは、特定の条件をより厳格に扱う点でアプローチAとは異なります。アプローチAでは重大なリスクだけを気にするとしても、このアプローチでは、トリアージの結果、リスクがない(たとえば、対象の環境では到達不能である)と確信していても、重大な深刻度の脆弱性をすべて修正するよう求められることがあります。

どのセキュリティリスク管理のアプローチ を選びますか?

次の2つの脆弱性があるとしたら、どちらを、なぜ修正しますか?

脆弱性1は修正に多大な労力を要する重大なリスク、脆弱性2は修正にほとんど労力を要しない中程度のリスクであることを示す比較表。

アプローチA:重大なリスクの脆弱性を修正します。中程度のものは、好きなように対応してください。

アプローチB:中程度のものを修正します。重大なものも、いずれ修正しやすくなることを期待しましょう。最終的にはそちらも修正します。

アプローチC:あれこれ考えず、まずどちらかを今修正し、もう一方は後で修正します。重要なのは攻撃対象領域を縮小することです。

アプローチD: がこの2つの脆弱性をどう定義しているか、そして求められる基準値を確認しましょう。

複数のアプローチを使いますか?それとも、「正しいアプローチ」はどれなのか気になっていますか?

間違ったアプローチはありませんが、より安全な状態を実現する方法はいくつもあります。『不思議の国のアリス』のチェシャ猫が言うように、「どこへ行きたいかによって、大きく変わるよ」。

  1. 新しいチームを迎え入れるなら、すぐに成果を出せることを重視するアプローチB(投資対効果重視)がおすすめです。開発者の賛同を得やすく、チームが取り組みに前向きになる前に、負担の大きいことを求めずに済みます。

  2. 経験豊富で人手不足のチームが、時間に追われるタスクに取り組んでいるなら、アプローチAの方が適しているかもしれません。優先順位に沿ってリスクを低減しながら、チームが集中して取り組めるようにするためです。

  3. 年次コンプライアンス監査に備えているなら、アプローチDが役立ちます。何を求められるかはおそらく分かっているので、先回りして対応しておきましょう!

  4. 大企業のCISOであれば、主にアプローチCに関心があるかもしれません(ただし、AppSecチームには別のアプローチが適している可能性があります)。

それぞれに価値があります。最適な方法を選び、その先はSnykにお任せください!

Snykがセキュリティリスク管理を支援する方法

実際には、私たちが話を聞く企業で、一つのアプローチだけにこだわっているところはありません。チームごとに、経験やプロジェクトの種類、業務量などに応じて状況は異なります。CISOとAppSecチームが同じアプローチを取っていても、すべてのチームに一貫して定着させるのは、どの企業にとっても課題です。

Snykは、脆弱性を理論の話にとどめず、チームが実際に対応できるよう支援します。お客様のプロジェクトに関するコンテキストを加えることで、リスクを正確に評価できるようにします。これは、適切な優先順位付けに欠かせません。

Snykの便利な機能をいくつか、手短にご紹介します。

  • 外部から到達できないサービスがありますか?そのサービスに「internal」属性を設定し、Security Policyを使ってDDoSの深刻度を低に再分類できます。

  • SnykのExploit Maturityは、エクスプロイトが存在するかどうかを示します。これは、実際にリスクをもたらす可能性を大きく左右します。

  • Snykは呼び出されるコードパスを評価し、到達可能な脆弱性に該当するかどうかを判断します。

これらは、Snykが優先順位付けを支援するために活用する要素のほんの一部です。どの要素からも優れたデータが得られますが、必要なのはインテリジェンスです。Snykは、比較的新しいSnyk Priority Scoreでそれを提供します。上記の分析に加え、脆弱性が発見されてからの期間や修正プログラムの有無なども考慮し、0〜1000のスコアを算出します。スコアが高いほど、優先して修正する必要があります。これにより、リスク低減の効果が最も高い順にセキュリティ対策を進められます。また、スコアの算出根拠も十分に把握できるため、信頼性を確認できます。

キャプチャー・ザ・フラッグを始めよう

オンデマンドのバーチャル入門ワークショップを視聴して、キャプチャー・ザ・フラッグの課題の解き方を学びましょう。