OnWorksLinuxおよびWindowsオンラインワークステーション

及び

ワークステーションのオンライン無料ホスティング

<前へ | Contents | 次へ>

11.2.1. 脆弱性評価


A 脆弱性 情報システムの機密性、完全性、または可用性を何らかの方法で損なう可能性のある弱点とみなされます。脆弱性評価の目的は、システム内で発見された脆弱性の簡単な一覧を作成することです。 ターゲット環境ターゲット環境という概念は非常に重要です。クライアントのターゲットネットワークと要求された目標の範囲内にとどまるようにする必要があります。評価の範囲外に踏み込むと、サービスの中断、クライアントとの信頼関係の破壊、あるいはあなたや雇用主に対する法的措置につながる可能性があります。

脆弱性テストは比較的シンプルなため、成熟した環境ではデューデリジェンスの一環として定期的に実施されることがよくあります。多くの場合、脆弱性分析ツールのような自動化ツールが役立ちます。7 および Web アプリケーション8 Kali ツール サイトと Kali デスクトップ アプリケーション メニューのカテゴリは、ターゲット環境内のライブ システムを検出し、リスニング サービスを識別し、それらを列挙して、サーバー ソフトウェア、バージョン、プラットフォームなど、可能な限り多くの情報を検出するために使用されます。

次に、この情報に基づいて、潜在的な問題や脆弱性の既知のシグネチャがないか確認します。これらのシグネチャは、既知の問題を表すことを意図したデータポイントの組み合わせで構成されています。複数のデータポイントを使用するのは、使用するデータポイントの数が多いほど、より正確な識別が可能になるためです。潜在的なデータポイントは非常に多く存在し、例えば以下のようなものがありますが、これらに限定されるものではありません。

• オペレーティングシステムのバージョン:あるオペレーティングシステムのバージョンでは脆弱性が存在するものの、別のバージョンでは脆弱性が存在しないというケースは珍しくありません。そのため、スキャナは、対象となるアプリケーションがホストされているオペレーティングシステムのバージョンを可能な限り正確に特定しようとします。

• パッチ レベル: 多くの場合、オペレーティング システムのパッチは、バージョン情報を増やすことなく、脆弱性への対応方法を変更したり、脆弱性を完全に排除したりするためにリリースされます。

• プロセッサ アーキテクチャ: 多くのソフトウェア アプリケーションは、Intel x86、Intel x64、ARM の複数のバージョン、UltraSPARC など、複数のプロセッサ アーキテクチャで利用できます。


画像

5https://en.wikipedia.org/wiki/Executable_space_protection#Windows 6https://en.wikipedia.org/wiki/Address_space_layout_randomization 7http://tools.kali.org/category/vulnerability-analysis 8http://tools.kali.org/category/web-applications‌‌‌

場合によっては、脆弱性は特定のアーキテクチャにのみ存在するため、この情報を知ることは正確な​​署名にとって非常に重要になります。

• ソフトウェア バージョン: 対象となるソフトウェアのバージョンは、脆弱性を識別するために取得する必要がある基本的な項目の 1 つです。

これらとその他多くのデータポイントは、脆弱性スキャンの一環としてシグネチャを作成するために使用されます。当然のことながら、一致するデータポイントが多いほど、シグネチャの精度は高まります。シグネチャの一致を扱う際には、いくつかの異なる結果が考えられます。

• 真陽性:シグネチャが一致し、真の脆弱性を捉えています。これらの結果は、悪意のある人物が組織(またはクライアント)に損害を与えるために悪用する可能性のある項目であるため、フォローアップして修正する必要があります。

• 誤検知:シグネチャは一致しているものの、検出された問題は真の脆弱性ではありません。評価においては、これらはノイズとみなされることが多く、非常に厄介な問題となる可能性があります。真陽性を、より詳細な検証なしに誤検知として却下することは決して避けるべきです。

• 真陰性: シグネチャが一致せず、脆弱性は存在しません。これは理想的なシナリオであり、ターゲットに脆弱性が存在しないことを確認します。

• 偽陰性:シグネチャが一致しないものの、脆弱性が存在します。偽陽性も悪いのですが、偽陰性はさらに悪いです。この場合、問題は存在しますが、スキャナーはそれを検出しなかったため、その存在を示す兆候がありません。

ご想像のとおり、正確な結果を得るには署名の精度が非常に重要です。提供されるデータが多いほど、自動署名ベースのスキャンから正確な結果が得られる可能性が高まります。そのため、認証スキャンは広く普及しています。

認証スキャンでは、スキャンソフトウェアは提供された認証情報を使用してターゲットに認証します。これにより、通常では不可能なほど深いレベルでターゲットを詳細に可視化できます。例えば、通常のスキャンでは、リスニングサービスとその機能から得られるシステム情報しか検出できない場合があります。これは場合によってはかなりの情報量になることもありますが、システムに認証し、インストールされているすべてのソフトウェア、適用されたパッチ、実行中のプロセスなどを包括的に確認した場合に得られるデータのレベルと深さにはかないません。この幅広いデータは、他の方法では発見できなかった可能性のある脆弱性の検出に役立ちます。

適切に実施された脆弱性評価は、組織における潜在的な問題のスナップショットを提示し、経時的な変化を測定する指標を提供します。これは比較的簡素な評価ですが、それでも多くの組織は、サービスの可用性と帯域幅が最も重要となる日中の潜在的な問題を回避するために、営業時間外に定期的に自動脆弱性スキャンを実行します。

前述の通り、脆弱性スキャンでは正確な結果を得るために、多くの異なるデータポイントをチェックする必要があります。これらの様々なチェックは、対象システムに負荷をかけ、帯域幅を消費する可能性があります。残念ながら、対象システムで消費されるリソースの量は、開いているサービスの数や、使用するアプリケーションの種類によって異なるため、正確に把握することは困難です。

これらのサービスに関連するチェックを行います。これはスキャン実行のコストであり、システムリソースを消費します。これらのツールを実行する際には、消費されるリソースと対象システムが許容できる負荷を大まかに把握しておくことが重要です。


スレッドのスキャン ほとんどの脆弱性スキャナには、 スキャンあたりのスレッド数これは、一度に実行される同時チェックの数に相当します。この数を増やすと、評価プラットフォームだけでなく、接続するネットワークやターゲットの負荷にも直接影響します。これらのスキャナーを使用する際には、この点に留意することが重要です。スキャンを高速化するためにスレッド数を増やしたくなるかもしれませんが、そうすることで負荷が大幅に増加することを忘れないでください。

スレッドのスキャン ほとんどの脆弱性スキャナには、 スキャンあたりのスレッド数これは、一度に実行される同時チェックの数に相当します。この数を増やすと、評価プラットフォームだけでなく、接続するネットワークやターゲットの負荷にも直接影響します。これらのスキャナーを使用する際には、この点に留意することが重要です。スキャンを高速化するためにスレッド数を増やしたくなるかもしれませんが、そうすることで負荷が大幅に増加することを忘れないでください。


脆弱性スキャンが完了すると、発見された問題は通常、CVE番号などの業界標準の識別子にリンクされます。9、EDB-ID10、ベンダーのアドバイザリ。この情報と脆弱性CVSSスコア11は、リスク評価を決定するために使用されます。偽陰性(および偽陽性)と並んで、これらの恣意的なリスク評価は、スキャン結果を分析する際に考慮する必要がある一般的な問題です。

自動化ツールはシグネチャのデータベースを用いて脆弱性を検出するため、既知のシグネチャからのわずかな逸脱でも結果が変わり、同様に認識された脆弱性の妥当性も変わる可能性があります。誤検知は存在しない脆弱性を誤って検出し、誤検知は脆弱性を事実上検出せず、報告しません。そのため、スキャナーの性能はシグネチャルールベースの精度に左右されると言われることがよくあります。そのため、多くのベンダーは複数のシグネチャセットを提供しています。1つは個人ユーザーに無料で提供される場合があり、もう1つはより包括的なシグネチャセットで、通常は法人顧客に販売されます。

脆弱性スキャンでよく遭遇するもう一つの問題は、提示されるリスク評価の妥当性です。これらのリスク評価は、権限レベル、ソフトウェアの種類、認証前または認証後など、様々な要因を考慮した上で、一般的な基準で定義されます。環境によっては、これらの評価が適切かどうかは判断できないため、鵜呑みにすべきではありません。システムと脆弱性に精通した専門家だけが、リスク評価を適切に検証できます。

リスク評価については普遍的に定義された合意はないが、NIST特別刊行物800-3012 リスク評価とその正確性を評価するための基準として推奨されます。NIST SP 800-30では、発見された脆弱性の真のリスクを次のように定義しています。 発生の可能性と潜在的な影響の組み合わせ.



9https://cve.mitre.org 10https://www.exploit-db.com/about/ 11https://www.first.org/cvss‌‌‌

12http://csrc.nist.gov/publications/PubsSPs.html#800-30

 

OnWorksのトップOSクラウドコンピューティング: