脆弱性(ぜいじゃくせい)とは、コンピューターのOSやソフトウェア、ハードウェアにおいて、プログラムの不具合や設計上のミスによって生じるサイバーセキュリティ上の弱点を指します。これらの脆弱性(セキュリティホールともいう)は、適切に対処されないまま放置されると、トロイの木馬をはじめとするマルウェア(悪意のあるソフトウェア)や攻撃者によるシステム悪用といった重大なリスクを引き起こす可能性があります。そのため、脆弱性を特定し、早期に適切な対策を講じることが必要不可欠です。
サイバー脅威からシステムを保護するための対策の1つが、脆弱性診断です。脆弱性診断は、システム全体に対して網羅的に検査を行い、攻撃のきっかけとなりうる脆弱性を発見することを目的としています。直ちに攻撃につながらないが、セキュリティ上望ましくない点も含めて脆弱性を洗い出すことができるのが特徴です。脆弱性診断を実施することで、セキュリティの現状が確認できます。診断によって検出された脆弱性は、種類(カテゴリ)や危険性(重要度)に応じて、「共通脆弱性評価システム(CVSS)」によるランク付けが行われます。そして、そのスコア値の大きさに応じて脆弱性に関する対策を講じることができます。
脆弱性診断サービスの方法としては、主に手動診断とツール診断の2つに分かれています。手動診断では、セキュリティに詳しい診断実施者が直接システムやアプリケーションを検査します。システムやアプリケーション特有の構成に合わせた診断を実施できるほか、テスト実施者の経験や知識から、ツールでは見つけにくい脆弱性を発見しやすいメリットがあります。一方で、人手を使う検査であることから、それに見合った費用や日程が必要になります。
手動診断とツール診断の違い
手動診断 | ツール診断 | |
---|---|---|
診断の概要 | セキュリティに詳しい診断実施者が直接システムやアプリケーションを調査 | ツールを活用してシステムやアプリケーションの脆弱性を検出 |
特徴 |
|
短時間で効率的に脆弱性診断を実施できる |
デメリット | 人手を使う検査のため、作業に見合った費用、日程が必要 | 未知の脆弱性や複雑なシステムでは、見落としや誤検知のリスクあり |
費用感 | 比較的高い | 比較的安い |
ツールによる脆弱性診断では、ツールを活用してシステムやアプリケーションの脆弱性を検出します。短時間で効率的に脆弱性診断を実施できるのが特徴で、なかにはWebブラウザから使用できるツールもあります。ツール診断は既知の脆弱性を検出するのに有用ですが、未知の脆弱性や複雑なシステムでは、見落としや誤検知のリスクがあります。
また、脆弱性診断は検査する対象によって区別することができます。アプリケーション診断とプラットフォーム診断の2つが主な種類となります。アプリケーション診断は不正アクセスや情報漏洩などのリスクにつながるWebアプリケーションに潜む脆弱性を洗い出します。また、プラットフォーム診断はサーバやネットワーク機器の状態を確認し、脆弱性や設定の不備がないかを診断します。これらネットワーク、Webアプリケーション以外にも、モバイルアプリケーション、クラウド環境と、脆弱性診断の対象はさまざまなものがあり、サービス利用時には求める診断項目を満たしているかを確認する必要があります。
診断を実施して終わりではなく、診断結果を元に問題箇所が確実に改善できるのかを確認し、難しい場合にはパッチマネジメントやセキュアコーディング、セキュリティレビューといった、他のセキュリティプロセスと合わせて実施することが望ましいです。また、脆弱性を未然に防ぐために、ウイルス対策ソフト(EDR)やOS、ソフトウェアの定期的アップデート等も求められてきます。セキュリティリスクを可視化し、包括的な対策を提供するサービスを活用することは大いに有効です。