自社プロダクトのセキュリティを高めるために脆弱性診断を行いたいが、どのタイミングで行うのが適切なのか判断が難しいという開発者の方は多いのではないでしょうか。実際に、判断基準は多岐にわたり「いついかなる場合でもこのタイミングに行うのがベスト」というものはありません。しかしそのタイミングを見極める基準をゼロから構築するのも一定の根拠などがなければ難しいと思います。今回は「プロダクトの脆弱性診断をいつどのように行うと効果が高いのか」を弊社にご依頼いただいたお客様の事例を交えながらお伝えします。
まずは脆弱性診断を依頼しようとしたときに、どのような悩みがあるのかを整理します。悩みの例を並べてみると、以下のようなものでしょうか。
これらについてお答えします。
こちらについては様々な判断基準があり、技術的な面だけでは適切なタイミングを見計らうのは難しいです。依頼タイミングの判断を他社がどのように行っているのかについて、弊社のお客様の事例を見てみましょう。
まず、大前提として新規プロダクトのリリースや機能追加のタイミングでの実施は多く、最も適切なタイミングであると言えます。 弊社の公開事例では下記のようなお客様がいらっしゃいます。
また、顧客数が一定の基準を超えたタイミングなど、ビジネス規模が拡大してきたタイミングにセキュリティ強化を行う方も多いといえます。上場や資金調達、他社のサービスを買収した等のビジネス上の明確なきっかけが存在することもあります。
前項で紹介したように、基本的には新規プロダクトやその機能の一部を新たにリリースする前に行うことを推奨しています。プロダクトのテストフェーズと並行して行う会社が多い様です。
しかし、必ずそういったタイミングでなくとも、開発や予算の都合の良いタイミングで行ったり、「3ヶ月や半年に1回は行う」のような時期による判断を行ったりするのも良いと思います。
というのも、昨今のSaaSを始めとするWebプロダクトやスマホアプリの増加で脆弱性診断は需要が過多で、診断ベンダー側がリソース不足となり、必ずしも顧客側の希望するタイミングで行えないケースもあるのです。
また、顧客側の専門的な要件や、AWS・GCP・Azureなどのパブリッククラウド、Firebase等のモダンな技術に対応出来るベンダーが見つからず、診断を実施したくてもできていないというケースも増えてきているようです。
診断を行う予定が立ったらまずは一度診断ベンダーに連絡を行い、相談してみるのが良いでしょう。
脆弱性診断はプロダクトの品質を高めるためのものですので、なるべく高頻度で行うことが望ましいです。しかし、例えば「3ヶ月に一度プロダクト全体に脆弱性診断を実施する」というのは時間的にも金銭的にも現実的ではありません。
そこで、プロダクト全体の診断では無く、優先度の高いエンドポイントに診断対象を絞って実施する方法もあります。 弊社としましては、「大きなプロダクトの診断も優先度順に、複数回に分けて診断する」「重要な機能のリリース前にその部分だけ診断する」など診断対象を弊社も協力をしてスコープし、柔軟なご提案をさせていただくことで、期間・予算内での効果最大化がされた診断を提供しております。
ただ、診断対象のスコープは「診断を行わない範囲が存在する」ことになるので、デメリットもあることは意識しなければいけません。あくまで、限られた期間・予算の中での効果の最大化です。
脆弱性診断は開発の終盤に行うため多くの脆弱性が検出された場合、その改修に時間がかかりリリースに影響を与えるケースがあります。そのため、できるだけ早く診断を実施することや、脆弱性を作り込まないようにセキュリティを考慮した設計や開発を行うことが重要です。
その上で脆弱性診断を行うことで開発スケジュールが遅延しないことは、もちろん皆様のご尽力や入念なプロジェクトマネジメントの賜物によるところもありますが、診断が一般的な検証環境などを用いて行えるものだからということもあります。
多くのお客様はステージング環境、検証環境と呼ばれるようなテストフェーズに用いる環境を流用して脆弱性診断を行っています。リリース前のプロダクトであれば本番環境でそのような検証を行っている場合もあると思いますが、脆弱性診断も同様に行っています。ただしリリース後の本番環境における診断は、十分に注意をして診断を実施したとしてもプロダクトが正常に動作しなくなるなどビジネスへの影響が生じる可能性があります。そのためケースによっては診断を実施できないこともあります。
また、診断実施後に発見された脆弱性に対する改修に不安をお持ちの方も多いかと思います。 発見された脆弱性に対して何からどのように改修していけばよいか、考える部分にも時間がかかることがあります。この負担を軽減するために弊社では脆弱性を改修しやすい報告書の作成を心がけています。
独自指標「攻撃成立の可能性」を報告書に含めたり、脆弱性の再現方法や発生原因を明確に記載したりすることで、短時間で改修の優先度を判断し対応を行えるようにしており、ご評価をいただいています。
今回の記事では脆弱性診断の依頼を行うタイミングや頻度、スケジュールへの影響について事例を交えて紹介しました。
脆弱性診断のご依頼を考えている場合は弊社にご相談いただければ、どのタイミングでどのような部分に対して診断を行うのか、サービスの特性などを見極めながら実施計画からのお手伝いも可能ですので、ぜひお気軽にお問い合わせください。
Internet Explorerをお使いの場合など、お問い合わせフォームが表示されない場合は別ページからお問い合わせください。