Column

脆弱性診断(セキュリティ診断)とは?費用やメリット・デメリットを解説

脆弱性診断(セキュリティ診断)とは

脆弱性診断(Vulnerability Assessment)とは、ネットワーク、ソフトウェア、Webアプリケーションなどに潜在している脆弱性がないかをチェックして修正するためのセキュリティ対策の手法です。

脆弱性の種類や深刻度、影響を特定するためには、一般的に専門のセキュリティエンジニアがツールを使った自動診断や主導によるマニュアル診断を行います。これにより修正すべき脆弱性を特定し、優先度をつけて対処することができます。

そもそも脆弱性とは

脆弱性(Vulnerability)とは、Webアプリケーション、OS、ミドルウェア、ネットワークなどに潜む「隙間」や「弱点」のことを指します。これは、システムやアプリケーションが予期せぬ攻撃や悪意のあるアクセスから守られていない状態を示しており、脆弱性が存在すると悪意のある攻撃者によって悪用され、システムやデータへの不正アクセス、改ざん、情報漏洩などのリスクを引き起こす可能性があります。

ペネトレーションテストとの違い

脆弱性診断もペネトレーションテストもどちらもセキュリティを評価する手法ですが、目的は少し異なります。 脆弱性診断はシステム内に潜む問題を網羅的に把握し、問題がどのくらい深刻かを特定します。一方で、ペネトレーションテストは実際のサイバー攻撃を模倣し、攻撃者の目標が達成できるかを確認します。

例えるなら脆弱性診断は「侵入のきっかけになりうる入り口」を探す作業に対し、ペネトレーションテストは「その入り口は本当に侵入できるのか」を試す作業です。どちらもセキュリティ向上に役立ちますが、アプローチが異なります。

なぜ脆弱性診断(セキュリティ診断)が必要なのか?

脆弱性診断(セキュリティ診断)の目的

脆弱性診断の主な目的は、システムやソフトウェア、Webアプリケーションに存在する脆弱性を特定し、評価、報告することです。これにより、悪意ある者がこれらの脆弱性を悪用して情報漏えいやシステムへの不正アクセスなどの侵害を行うセキュリティリスクを軽減します。

脆弱性診断では脆弱性を特定し、それらの深刻度や対策の優先順位を報告します。そして、報告を通じて組織に脆弱性の存在を通知し、対処策を提案します。脆弱性に対して適切な対処を行うことにより悪意ある攻撃からのリスクを最小限に抑えられ、組織のセキュリティが向上します。

脆弱性診断(セキュリティ診断)の必要性

脆弱性診断の必要性は、情報技術が中心となった現代社会においてますます重要となっています。昔と異なり、現在はWebサービスやアプリケーションが個人や企業活動に密接に関わっており、経済や日常生活はネットワークに依存しています。このような状況下で情報セキュリティの確保は第一に考えるべき事案です。

脆弱性診断の重要性は、攻撃者が脆弱性を発見し悪用する前に、それらを特定し修正することで、情報漏えいや不正アクセスといったセキュリティ侵害から情報資産とサービスの安全性を確保する点にあります。脆弱性診断を怠り攻撃者の侵入を許してしまった場合、個人情報や機密データが漏洩し、重要な情報資産が危険にさらされるだけでなく、企業イメージも低下し対処や復旧に膨大なコストがかかる可能性もあります。

脆弱性診断は、データ漏洩やサイバー攻撃のリスクを軽減し、企業の信頼性と顧客信頼を保護するために重要な取り組みとして理解されています。

脆弱性の分類と深刻度評価基準

CVSS(Common Vulnerability Scoring System)による評価

深刻度 CVSSスコア 特徴 対応優先度
Critical 9.0 - 10.0 即座に悪用可能 24時間以内
High 7.0 - 8.9 容易に悪用可能 1週間以内
Medium 4.0 - 6.9 特定の条件下で悪用可能 1ヶ月以内
Low 0.1 - 3.9 限定的な影響 次回更新時
Critical
High
Medium
Low
                  
CVSSスコア 9.0 - 10.0
特徴 即座に悪用可能
対応優先度 24時間以内
CVSSスコア 7.0 - 8.9
特徴 容易に悪用可能
対応優先度 1週間以内
CVSSスコア 4.0 - 6.9
特徴 特定の条件下で悪用可能
対応優先度 1ヶ月以内
CVSSスコア 0.1 - 3.9
特徴 限定的な影響
対応優先度 次回更新時

脆弱性診断(セキュリティ診断)の種類

アプリケーション診断

アプリケーション診断は、ECサイトやゲームアプリ、SNS、ウェブAPIなどウェブ上で提供されるさまざまなソフトウェアやアプリケーションを対象に、潜在するセキュリティリスクを特定する手法です。

Webアプリケーションは、ユーザーとサーバー間でデータの処理を行いますが、このデータには個人情報やクレジットカード情報、パスワード、機密情報などの重要なデータが含まれている可能性があります。この処理に脆弱性が存在していた場合、悪意ある攻撃者によって情報を窃取されたり改ざんされるリスクが生じます。

アプリケーション診断によって脆弱性を特定し、適切な対処を行うことでこれらのセキュリティリスクを最小限に抑えることができます。

プラットフォーム診断

プラットフォーム診断は、システムを運用するために不可欠なネットワーク機器、OS、サーバー、ミドルウェアなどに潜在的なセキュリティリスクや設定上の不備がないかを検査・評価する手法です。

インターネットを介してアクセス可能なネットワーク機器やサーバーなどに対してネットワークスキャナーや設定管理ツールを用いて潜在する脆弱性を検出したり、セキュリティエンジニアが手動で機器の設定状況などを調査します。

特に新しいシステムを導入する企業や、前回実施した診断から時間が経過している企業の場合、プラットフォーム診断を実施することはサービスの信頼性を確保し運用していくうえで重要です。

脆弱性診断(セキュリティ診断)の手法

手動(マニュアル)診断

手動(マニュアル)診断とは、ソフトウェアやアプリケーション、コードなどを対象に経験豊富なセキュリティエンジニアが攻撃者の視点に立ち自らの手で診断を行う手法です。

ツール診断で検出されやすい偽陽性(実際には脆弱性がないにもかかわらず脆弱性と検出されたもの)を減らし本当の脆弱性を特定したり、アプリケーション特有の環境に合わせて柔軟に実施できるのがメリットです。 また手動診断はセキュリティエンジニア本人の経験や洞察力を駆使して実施されるため、自動(ツール)診断に比べて時間とリソースを必要としますが、ツールでは発見できない未知の脆弱性を発見できるなど深く高精度な検証が可能です。

複雑なビジネスロジックや多くのユーザーインタラクションを持つWebアプリケーション、個人情報を取り扱うECサイトなどに手動診断は適しています。

自動(ツール)診断

自動(ツール)診断とは、自動化されたスキャンツールを使うことでスピーディーな診断を行う手法です。

ツール診断は多くのテストケースを自動的に実行し、大規模なアプリケーションであっても比較的迅速にスキャンできるため、広範なセキュリティの脆弱性の早期発見が可能です。 ツール診断は既知の脆弱性を検出するのに有効ですが、未知の脆弱性や複雑なロジックに起因する脆弱性などを特定するのには向いていません。 また、ツール診断には検出すべき事象を検出できない偽陰性、検出する必要の無い事象を誤って検出してしまう偽陽性が存在していることを把握しておく必要があります。

ツール診断による迅速なスキャンで一般的な脆弱性を効率よく洗い出し、セキュリティエンジニアによる手動診断でより深い検証を行うなど、予算や規模をふまえ、自組織にとって最適なアプローチを検討することが重要です。

国際標準とフレームワーク

OWASP(Open Web Application Security Project)

OWASPが発表する「Top 10」は、Webアプリケーションで最も危険とされる脆弱性のランキングです。2021年版では、過去3年間に収集された50万件以上のアプリケーション診断データを基に作成されました。これらの脆弱性を理解し、適切な対策を実装することで、より安全なWebアプリケーションの開発が可能になります。

2021年版OWASP Top10:     
脆弱性カテゴリ 内容
A01:2021 - Broken Access Control アクセス制御の不備により、ユーザーが許可されていないリソースにアクセスできる脆弱性
A02:2021 - Cryptographic Failures 暗号化の失敗や不適切な実装により、機密データが漏洩する脆弱性
A03:2021 - Injection SQLインジェクション、コマンドインジェクションなど、悪意のあるコードが注入される脆弱性
A04:2021 - Insecure Design セキュリティを考慮しない設計により生じる脆弱性
A05:2021 - Security Misconfiguration セキュリティ設定の不備により生じる脆弱性
A06:2021 - Vulnerable and Outdated Components 既知の脆弱性を持つコンポーネントや古いバージョンの使用による脆弱性
A07:2021 - Identification and Authentication Failures 認証・認可機能の不備により、なりすましやセッションハイジャックが可能になる脆弱性
A08:2021 - Software and Data Integrity Failures ソフトウェアやデータの整合性が確保されていない脆弱性
A09:2021 - Security Logging and Monitoring Failures セキュリティログの記録や監視が不十分な脆弱性
A10:2021 - Server-Side Request Forgery (SSRF) サーバーサイドリクエストフォージェリ。アプリケーションが任意のURLにリクエストを送信してしまう脆弱性
関連リンク: OWASP Top 10 - 2021

OWASP ASVS(Application Security Verification Standard)

OWASP Application Security Verification Standard(ASVS)5.0は、ウェブアプリケーションのセキュリティ要件を体系的に定義した国際標準です。2008年の初版から継続的に更新され、現在の最新版はASVS 5.0(2025年5月リリース)となっています。この標準は、安全なアプリケーションの設計・開発・検証を行うすべての関係者にとって重要なガイドラインとなっています。

ASVS 5.0では、アプリケーション、セキュリティ、検証、標準という4つの要素でスコープを定義し、セキュリティ原則を特定する包括的な目標を掲げています。特徴的なのは3つの段階的なセキュリティ検証レベル(L1、L2、L3)を設定していることで、組織が最重要なセキュリティ課題から順次対処し、アプリケーションのリスクレベルに応じて上位レベルへ進行できる構造になっています。

脆弱性診断における3つの検証レベル
ASVS 5.0では、アプリケーションのセキュリティ要件を3つの段階的レベルに分類しています。
  • レベル1(L1):基本的なセキュリティ要件(全要件の約20%)
  • レベル2(L2):標準的なセキュリティ要件(全要件の約50%)
  • レベル3(L3):高度なセキュリティ要件(全要件の約30%)

これらのレベルは、脆弱性診断を実施する際の診断の深さや範囲を決定する重要な基準として機能します。

またASVS 5.0は合計約350の要件を17章に整理し、エンコーディング、認証、セッション管理、認可、暗号化、データ保護など幅広いセキュリティ領域をカバーしています。組織は自社のリスク特性に基づいてドメイン固有のフォークを作成することも推奨されており、セキュリティアーキテクチャガイダンス、開発者トレーニング、自動テスト、セキュアソフトウェア調達など多様な用途で活用できます。

関連リンク: OWASP アプリケーションセキュリティ検証標準 5.0 日本語版

脆弱性のリスクと対策

脆弱性の対処をしないセキュリティリスク

検出された脆弱性を放置しておくと悪意ある攻撃者によって深刻なセキュリティリスクが生じる危険があります。

  • 情報漏洩
    • 攻撃者が脆弱性を悪用しシステムに侵入することで機密情報の漏洩が起こり得ます。これには顧客情報、従業員データ、知的財産、財務情報などが含まれ、企業や顧客に損害をもたらす可能性があります。
  • サービス遮断
    • 攻撃者が脆弱性を利用してシステムに侵入し、システムで動作しているアプリケーションを停止させる可能性があります。これによりサービスの利用不能状態が生じ、企業の信頼性や評判に損害を与えことがあります。
  • 改ざんと破壊
    • 攻撃者はシステム内で不正な変更を加えたり、データを破壊したりすることができます。これによりシステムの不正操作やデータの改ざん、破壊が行われる可能性があります。
  • 法律やコンプライアンスの違反
    • 特定の業界や地域では、データセキュリティやプライバシー保護に関する要件を課しています。脆弱性の放置はこれらの法的要件に違反し、法的な制裁や罰金の対象になる可能性があります。 セキュリティリスクを最小化し、情報資産を守るために脆弱性の発見と迅速な対処が不可欠です。

脆弱性への対策

脆弱性への対策としては、信頼性のあるセキュリティベンダーやIPAなどのセキュリティ機関が提供するガイドラインを参照し、システムやアプリケーションに対してアクセス制御、暗号化、パッチ適用、セキュアコーディングといった適切なセキュリティ対策を実施することが大切です。 さらにシステム、ソフトウェア、ファームウェアを最新の状態に保つことも脆弱性への対策として有効です。ベンダーから提供されるセキュリティアップデートやパッチを定期的に適用することで、既知の脆弱性に対処します。

独自に開発したシステムやアプリケーションについては、セキュアコーディング、定期的な脆弱性診断やペネトレーションテストを実施することで脆弱脆弱性に対処する必要があります。

脆弱性診断(セキュリティ診断)のレポート例

セキュリティ診断のレポート(報告書)は、診断の結果を文書化したものです。内容は診断対象の性質や規模によって異なりますが、一般的には以下のような内容が含まれています。

  • 診断概要
    • 対象となるシステムやアプリケーションに関する情報や診断を実施する目的など。
  • 診断結果
    • 実施したテストやスキャンの内容、方法、結果に関する詳細な説明と発見された脆弱性に関する情報など。
  • リスク評価
    • 検出された各脆弱性についての重要度や危険度の評価と各脆弱性が組織やシステムに及ぼすリスクや潜在的な影響についての評価など。
  • 対策提案
    • 各脆弱性に対する具体的な対策や修正方法、およびそれらの優先順位の提案。

インシデント事例

業界ごとに脅威の内容や利用されるシステム・業務プロセスは異なるため、それに伴い潜在的な脆弱性も異なります。したがって、各業界特有の状況を十分に把握した上で、適切な対策を講じることが重要です。ここでは、主要業界におけるインシデント事例について解説します。

金融業界におけるインシデント事例

バングラデシュ中央銀行SWIFT不正送金事件

2016年2月、バングラデシュ中央銀行のシステムにハッカーがマルウェアを利用して侵入し、SWIFT(国際銀行間通信協会)を通じてニューヨーク連邦準備銀行宛に偽の送金指示を行い、約8,100万ドルの不正送金に成功した史上最大級の金融サイバー攻撃事件です。

この事件では、SWIFT利用者ネットワークのセキュリティ脆弱なホストが突破口として狙われました。攻撃者は銀行の業務の流れを入念に下調べした後、精通した精巧なマルウェアを使用し、複数国にまたがる攻撃を実行しました。

事件後、SWIFTは、すべての利用組織に一定以上のサイバーセキュリティ水準の確保と維持を求めるとともに、コミュニティ全体のセキュリティ強化を目的として「Customer Security Programme(以下、CSP)」を導入しました。

CSPには、「必須セキュリティコントロールの実装」、「不正行為の防止や検知を支援する新サービスの提供」、「将来の攻撃に備えた防御およびコミュニティ全体での情報共有イニシアチブ」などが含まれており、その一部を構成する仕組みが「SWIFT Customer Security Controls Framework(以下、CSF)」です。

SWIFT CSFは、3つの目的、8つのセキュリティ原則、27のコントロールで構成され、そのうち16が必須、11が推奨とされています。利用組織は必須コントロールへの対応状況について毎年自己評価を行い、SWIFTに提出する義務があります。未対応や未提出の場合、SWIFTが金融当局に通知することも可能です。また、セキュリティ水準の透明性を高めるため、各組織は自己評価の結果を他の利用組織のリクエストに応じて開示することができます。これにより、SWIFTコミュニティ全体の信頼性と安全性の確保を目的としています。

関連リンク: 野村総合研究所 バングラデシュ中央銀行事件分析PwC 適用が開始されたSWIFT Customer Security Controls Frameworkについて

医療業界におけるインシデント事例

英国の国民保健サービス(NHS)のランサムウェア感染事例

2017年5月12日、英国の国民保健サービス(NHS)は、「WannaCry」と呼ばれるランサムウェアによる大規模な攻撃を受け、病院や医療機関の主要システムが停止する事態に陥りました。この攻撃により、多くの手術が中止され、医療スタッフは患者記録へのアクセスができないだけでなく、電話回線すら利用できない状況に追い込まれました。NHSイングランドによれば、236軒のNHSトラストのうち約3分の1が被害を受け、患者およびスタッフのプライバシーや健康に深刻な懸念が生じました。

WannaCryは、2017年3月に世界中で感染が拡大したランサムウェアで、ワーム型の性質を持ち、感染したデバイスからネットワークを通じて自動的に拡大するため、短時間で多数のコンピュータを危険にさらす特徴があります。攻撃の根拠となったのは、Windows OSの脆弱性を悪用するエクスプロイト「EternalBlue」で、これはもともとアメリカ国家安全保障局(NSA)が開発したものでしたが、ハッカー集団「The Shadow Brokers」によって流出し、WannaCry作成に利用されました。Microsoftは直ちにパッチを提供しましたが、更新されていないWindows PCでは依然として脆弱性が残っていました。特に、NHS内では多くのコンピュータがパッチ未適用のWindows 7を使用していたため、攻撃は容易にネットワーク全体に拡大しました。

NHSにおける攻撃は特定組織を標的としたものではなく、既知の脆弱性を利用して拡散する一般的な攻撃でしたが、時代遅れのシステムや不十分なセキュリティ管理が被害を拡大させました。感染したトラストの現地ネットワークでは、N3ネットワークを通じて全国の施設に拡大する可能性がありましたが、メールシステムやデータランサムによる支配には至りませんでした。

NHSおよび国家犯罪対策庁によれば、身代金は支払われておらず、損失額は推定で約9,200万ポンド(約1億1,600万ドル)にのぼります。攻撃の拡大は、セキュリティ研究者Marcus Hutchins氏がランサムウェアが自動チェックする未登録ドメインを特定し、キルスイッチを生成することで阻止されました。英国国家サイバーセキュリティセンターも、解読方法が判明するまでの数日間、防御の支援を行いました。この事例は、医療機関における時代遅れのシステムや脆弱性管理不足がもたらす深刻なリスクを示すとともに、迅速な対応と国際的な協力の重要性を強く示しています。

関連リンク: Avast NHS 病院におけるランサムウェア

脆弱性診断(セキュリティ診断)に関するよくある質問とその回答

脆弱性診断とASMの違いは?

脆弱性診断とASM(アタックサーフェスマネージメント)はどちらもアプリケーションやシステムを保護するために使用されますが、アプローチが異なります。 脆弱性診断はツールや手動によって既知または未知の脆弱性を特定するために行いますが、ASMはアプリケーションのサーフェス(外部からアクセス可能な領域)を管理し、不要なエンドポイントやアクセスポイントを削減し、攻撃リスクを低減するためのセキュリティプラクティスの手法を指します。

脆弱性診断で検査する項目は?

脆弱性診断で検査される項目には以下のようなものがあります。

  • SQLインジェクション
    • 攻撃者が不正なSQLクエリをデータベースに挿入する脆弱性。正しく処理されない入力によって発生する可能性があります。
  • クロスサイトスクリプティング (XSS)
    • 攻撃者がスクリプトをWebページに挿入し、ユーザーのブラウザで実行させる脆弱性。セッションハイジャックや情報漏えいにつながることがあります。
  • セッション管理の脆弱性
    • セッション固定攻撃、セッションハイジャック、認証情報の漏洩など、セッションに関連した脆弱性の検査が含まれます。
  • クロスサイトリクエストフォージェリ (CSRF)
    • 攻撃者がユーザーの代わりに意図しない操作を実行する脆弱性。ユーザーが攻撃用Webページに誘導されることで発生します。
  • 認証回避
    • 認証機構が回避できる脆弱性。攻撃者が正当な認証を持たないままアクセスできる場合があります。
  • データベース脆弱性
    • データベースへの不正アクセスやデータベース内のデータ漏洩を防ぐための診断が含まれます。これらは脆弱性診断の一般的な項目の一部であり、実際の診断内容はシステムの種類や診断範囲によって異なります。

診断できない機能は?

脆弱性診断はセキュリティ上の問題を検出するための重要な施策ですが、フィッシングメールによるソーシャルエンジニアリング攻撃といった人間の心理や行動に焦点を当てた攻撃はカバーできません。こういった攻撃に対しては組織内でのセキュリティ教育の実践や意識向上が必要になります。

開発・移動中のシステムの診断はできるか?

開発中または移行中のシステムに対しても脆弱性診断を行うことができます。開発の進捗に合わせて脆弱性診断を実施することで、セキュリティの早期発見と修正が可能となり、脆弱性を抱えたままシステムをリリースしてしまうリスクを軽減できます。

脆弱性診断の導入は義務化されている?

特定の法令や規制において、脆弱性診断の導入が義務化されていることがありますが、すべての場合で義務化されているわけではありません。 例えば、金融機関や医療機関、政府機関など重要な情報を取り扱う機関はセキュリティに関する規制が厳しいことが多く、脆弱性診断の実施が義務化されることがあります。また、特定のセキュリティ規格や認証プログラムを達成するためにも、脆弱性診断が必要とされることがあります。

一方で、一般的な中小企業や個人事業主などでは、脆弱性診断が義務化されていないケースもありますが、セキュリティリスクを最小限に抑えるためにも脆弱性診断を実施することが推奨されています。

脆弱性診断におすすめのツールは?

脆弱性診断におすすめのツールとして、以下のようなものがあります。

  • Burp Suite
    • Burp Suiteは、Webアプリケーションのセキュリティテストに広く使用される統合型のセキュリティツールセットです。HTTPリクエストやレスポンスのキャプチャ、インターセプト、編集、リプレイ、さまざまな攻撃手法の自動化、脆弱性スキャンなど、幅広い機能を備えています。
  • OpenVAS (Open Vulnerability Assessment System)
    • オープンソースの脆弱性スキャナで、無料で利用できます。豊富な脆弱性データベースを利用し、Webアプリケーションやネットワーク機器のスキャンに対応しています。
  • Owasp Zap
    • オープンソースのツールセットで、アクティブスキャン、パッシブスキャン、脆弱性の検出、セキュリティポリシーのテストなど、多くの機能を提供しています。また、プロキシ機能を備えており、HTTPやHTTPSのトラフィックをキャプチャして分析することも可能です。

まとめ

現代社会ではコンピューターシステムやアプリケーションが私たちの生活やビジネスに不可欠ですが、同時に悪意のある者による攻撃やデータ漏洩のリスクも高まっています。

脆弱性診断(セキュリティ診断)によって、コンピューターシステムやソフトウェアアプリケーションに存在する潜在的なセキュリティリスクや脆弱性を特定し、修正することでこれらのリスクを未然に防ぎ、情報の機密性、完全性、可用性を守ることができます。

サイバーディフェンス研究所では高い技術力をもつセキュリティエンジニアが、お客様のシステムの特性とビジネスロジックを深く理解し、ツールでは発見困難な脆弱性を徹底的に洗い出します。まずはお気軽にご相談ください。

脆弱性診断(セキュリティ診断)とは?
費用やメリット・デメリットをわかりやすく解説

診断サービス

ペネトレーションテスト(侵入テスト)とは?
脆弱性診断との違いやメリットをわかりやすく解説

診断サービス

プラットフォーム診断とは?
必要性や費用、メリット、デメリットを解説

診断サービス

お気軽にお問い合わせください

製品やサービスに関するご質問、お見積りのご用命、課題解決のご相談はこちらから
なお、機密性を重視したご依頼は cdiprivacy(at)protonmail.com 宛てのメールでも承ります。
※ (at) は @ に置き換えてください。