このページでは、Ubuntu 22.04 LTS (Jammy Jellyfish) をベースとしたNetskope Publisher仮想アプライアンスで脆弱性スキャンを実行するための、標準的かつ信頼できる手法について詳しく説明します。その目的は、脆弱性の正確な評価を保証し、当社のフィールドエンジニアが顧客のCVEレポートに効果的に対処するための正しいツールと知識を提供することです。このプロセスを遵守することは、汎用的なスキャンツールによって頻繁に生成される誤検知と、実際の脅威を区別するのに役立ちます。
Ubuntu OVAL + OpenSCAPが信頼できる手法である理由
Ubuntuの脆弱性を評価する際は、Canonical(Ubuntuのパブリッシャー)が提供する手法とデータを使用することが不可欠です。汎用的なCVEスキャナーを使用したり、CVEデータベースのみに依存したりすると、多くの場合、不正確な結果や誤検知(偽陽性)につながります。
Ubuntu OVAL definitions と OpenSCAP scanner を組み合わせることが正しいアプローチである理由は次のとおりです:
- Official Canonical Source: Ubuntu OVAL定義は、Ubuntuセキュリティチームによって作成および保守されています。これらは、Ubuntuリリースに対する脆弱性の公式評価を表しています。参照: Ubuntu Oval | Security | Ubuntu
- Context-Aware: OVAL定義は、Ubuntu固有のパッケージングおよびパッチ適用方法を認識します。重要な点として、これには backporting が含まれます。ここでは、単に最新のアップストリームバージョンにアップグレードするのではなく、既存のパッケージバージョンにセキュリティ修正が適用されます。汎用的なスキャナではこれを見逃すことが多く、バックポートされた修正が含まれている場合でも、古いバージョンを脆弱であるとフラグ付けしてしまいます。
- Accurate Applicability: OVALチェックは、脆弱性がUbuntu 22.04に存在する特定のパッケージバージョンおよび構成に実際に適用されるかどうかを検証し、アップストリームコードには影響する可能性があるものの特定のUbuntu実装には影響しないCVEによるノイズを低減します。
- Machine Readable Standard: OVAL (Open Vulnerability and Assessment Language) はこの目的のために特別に設計された業界標準であり、OpenSCAPはこれらの定義を解釈するNIST認定スキャナーです。
- Avoids False Positives: 公式のOVAL定義を使用することで、Ubuntuのバックポートやセキュリティサポートモデルを理解せずに、汎用的なCVEデータベースとバージョン番号を照合するだけのツールによって生成される誤検知を回避できます。
その他の方法 (例:認証なしのネットワークスキャン、Ubuntu OVALコンテキストを使用しない汎用CVEチェックのみのスキャナー) を使用すると、Ubuntuベースのアプライアンスに対して不正確な結果が生成される可能性が高くなります。
標準スキャンの実行
公式の脆弱性スキャンを実行するには、Netskope Publisherアプライアンスのインスタンスで以下の手順に従ってください:
- 1. Install Prerequisites & Tools: 必要なツールがインストールされていることを確認してください。
sudo apt update sudo apt install -y libopenscap8 xsltproc wget bzip2 - 2. Download OVAL Definitions: お使いのUbuntuリリースに対応する公式のOVAL定義ファイルをCanonicalから直接取得してください。
wget "https://security-metadata.canonical.com/oval/com.ubuntu.$(lsb_release -cs).usn.oval.xml.bz2" - 3. Uncompress OVAL Definitions:
bunzip2 "com.ubuntu.$(lsb_release -cs).usn.oval.xml.bz2"
(これにより、以下の名前のファイルが作成されます:com.ubuntu.jammy.usn.oval.xmlまたは類似のもの) - 4. Run the OpenSCAP Scan: ダウンロードした定義をローカルシステムに対して評価するには、
oscapコマンドを実行してください。これにより、XML結果ファイル(results.xml)とユーザーフレンドリーなHTMLレポート(report.html)の両方が生成されます。oscap oval eval --results results.xml --report report.html "com.ubuntu.$(lsb_release -cs).usn.oval.xml"
スキャンには数分かかる場合があります。完了すると、現在のディレクトリにresults.xmlとreport.htmlが作成されます。 - 注:CanonicalはCVEベースのフィード(
com.ubuntu.jammy.cve.oval.xml.bz2)も提供していますが、パッチ検証にはここで使用されているUSNフィードが一般的に推奨されます。
標準のOpenSCAP HTMLレポート(report.html)の解釈
report.html ファイルは、スキャンの人間が読める形式の概要を提供します。Webブラウザで開きます。
- Header/Summary: レポートの冒頭には、使用されたOVALファイル、スキャン時刻、評価された定義の集計数(
true、false、errorなどに評価された数を含む)などの一般情報が表示されます。
スキャン概要を示すOpenSCAP HTMLレポートヘッダー。 - Results Table: レポートの主要部分は、評価された各OVAL定義をリスト化した表です。主な列は以下の通りです:
- Definition: OVALチェックの一意のID(例:
oval:com.ubuntu.jammy:def:12341000000)。 - Result: チェックの結果。これは、脆弱性評価において最も重要な列です。
true: 脆弱性の条件が満たされました。この定義に従ったシステム IS VULNERABLE。false: 条件は満たされませんでした。この定義に従ったシステムIS NOT VULNERABLE。これは多くの場合、汎用スキャナーによる「誤検知 (False Positive)」に該当します。error/unknown/not evaluated: チェックを正常に完了できませんでした。ステータスは未確定です。not applicable: このチェックは本システムには適用されません (例:必要なソフトウェアがインストールされていない)。システムは、このチェックを通じてNot Vulnerableされます。- Class: 定義のタイプ(例:
vulnerability、patch)。vulnerabilityに焦点を当てます。 - References: 関連するCVEおよびUSN(Ubuntu Security Notices)へのリンク。
- Title: USNまたはCVE番号を含むことが多い、チェックの人間が読める形式のデスクリプションです。

OpenSCAP HTMLレポートテーブルの行の例。「Result」列に注目してください。 - Focus: レポートで脆弱性を確認する際は、Classが
vulnerabilityであり、かつResultがtrueである行をフィルタリングするか、その行に焦点を当ててください。これらは、公式のUbuntu OVAL定義によって確認された脆弱性を表しています。
サードパーティ製スキャナーのCVEリストの取り扱い(相互参照)
多くの場合、企業はサードパーティの脆弱性スキャナ (Nessus、Qualysなど) を使用して実行しますが、これらはUbuntu固有のOVALチェックを使用していない可能性があります。これにより、バックポートされた修正やその他のUbuntu固有の要因により実際には適用されないCVEがレポートにリストされることがよくあります。
これらのレポートに正確に対処するには、お客様のCVEリストを当社の標準OVALスキャンの結果 (results.xml) と照合する必要があります。
Conclusion
公式のUbuntu OVAL定義でOpenSCAPを使用することが、Netskope Publisherアプライアンスの脆弱性を評価するための標準的かつ最も正確な方法です。これはCanonicalのセキュリティプラクティスに準拠しており、一般的なCVEスキャナーでよくある落とし穴を回避します。

