MENU

LinuxへのOpenVAS(Greenbone)導入と定期スキャン運用ガイド|脆弱性発見からリスク優先度判定まで情シス1人でも回せる実践手順

「社内サーバーのどのポートに脆弱性が潜んでいるか、定期的に確認できていますか?パッチ適用漏れや設定ミスは、外部から気づかれないまま放置されがちです。本記事では、オープンソースの脆弱性スキャナーOpenVAS(Greenbone)をLinuxに導入し、情シス1人でも定期スキャンを自動化する手順を解説します。

ネットワーク越しに5万件以上の脆弱性テスト(VT)を実行できるOpenVASは、大企業だけでなく中小企業の情シス担当者にも十分使える実用ツールです。CVSSスコアを使った優先度判定からレポートの活用法まで、現場で即使えるレベルで解説します。

LinuxへのOpenVAS(Greenbone)導入と定期スキャン運用ガイド|脆弱性発見からリスク優先度判定まで情シス1人でも回せる実践手順 - 解説

目次

OpenVASとは?ネットワーク脆弱性スキャンが必要な理由

OpenVAS(Open Vulnerability Assessment System)は、Greenbone Networksが開発するオープンソースの脆弱性スキャナーです。現在は「Greenbone Community Edition(GCE)」として無料で公開されており、5万件以上の脆弱性テスト(VT)を使ってネットワーク上のホストをスキャンできます。

脆弱性スキャンには目的に応じてさまざまなツールがあります。それぞれの使い分けを整理しておきましょう。

ツール 主な役割 特徴
nmap ポートスキャン・サービス検出 開いているポートとサービスを高速に把握。脆弱性の特定は限定的
Lynis ローカルホストのセキュリティ監査 対象ホスト上で実行し、OS設定・パッケージ問題を検出。詳細はLynis入門ガイドを参照
OpenVAS ネットワーク越しの脆弱性スキャン CVEベースの脆弱性を5万件以上のVTで外部から検出。複数ホストを一括スキャン可能

OpenVASの最大の強みは、エージェント不要でネットワーク越しに検査できる点です。スキャン対象ホストにインストール作業は必要なく、社内ネットワーク全体を横断的にカバーできます。

脆弱性スキャンの全体的な始め方については、情シス1人でもできる脆弱性スキャン入門もあわせて参照してください。

攻撃者は脆弱なサービスをどう見つけるのか

防御の観点でOpenVASを活用するには、攻撃者が脆弱性を探す手口を理解しておくことが重要です。

攻撃者が外部から組織のシステムを調べる際、最初に行うのはポートスキャンです。nmapなどのツールで開いているポートとサービスを特定し、次にサービスのバナー情報からバージョンを特定します。使用しているミドルウェアのバージョンが公開済み脆弱性のあるものであれば、既存のエクスプロイトコードを使って攻撃を試みます。

OpenVASはまさにこの「攻撃者の偵察と脆弱性特定」を防御者の立場から先取りするツールです。攻撃者より先に自組織のサーバーを検査し、悪用される前にパッチを当てる——このサイクルが重要になります。

・バナー露出: SSH・HTTPのバージョン情報が見えると、攻撃者に使用ソフトウェアを教えてしまう
・放置されたサービス: 使われていないFTP・Telnetなどが動いていると攻撃経路になる
・古いTLSバージョン: TLS 1.0/1.1が有効だと中間者攻撃のリスクが高まる
・デフォルト認証情報: 管理インターフェースのデフォルトID/PWが変更されていないケース

OpenVASはこれらすべてのパターンを網羅的にチェックします。

導入前に確認すべきリソース要件と注意点

OpenVASを導入する前に、動作要件と注意事項を確認しておきましょう。スペック不足で構築すると、セットアップ中や長時間スキャン中にクラッシュが起きやすくなります。

・CPU: 4コア以上推奨(2コアでも動作するが処理速度が低下する)
・RAM: 4GB以上必須。8GB推奨(VTのロードに大量メモリを消費する)
・ストレージ: 20GB以上の空き容量(VTフィードのダウンロードで数GB使用)
・OS: Ubuntu 22.04 LTS / 24.04 LTS または Debian 11/12 推奨
・ネットワーク: スキャンサーバーからターゲットへの通信が許可されていること

【注意】法的確認とスキャン範囲の限定

OpenVASによるスキャンは、対象ホストに大量のプローブパケットを送信します。スキャンしてよいのは、自社が管理・所有するシステムのみです。許可なく他組織のシステムをスキャンすることは、不正アクセス禁止法(正式名称: 不正アクセス行為の禁止等に関する法律)に抵触する可能性があります。詳細は法律の専門家にご確認ください。

また、本番環境をスキャンする際はメンテナンス時間帯を選択するか、スキャン設定で「Full and slow」を選んで負荷を下げることを推奨します。

Ubuntu/Debianへのインストールと初期セットアップ

1. パッケージのインストール

Ubuntu 22.04 LTS / 24.04 LTSでは、公式パッケージリポジトリからインストールできます。

# システムの更新 sudo apt update && sudo apt upgrade -y # GVM(OpenVAS)パッケージのインストール sudo apt install -y gvm # インストール後のバージョン確認 gvm --version

2. 初期セットアップの実行

インストール後はgvm-setupコマンドで初期構成を行います。VTフィードのダウンロードや各種証明書の生成が実行されるため、15~30分程度かかります。完了するとadminユーザーのパスワードが表示されるので、必ず控えておいてください。

# 初期セットアップを実行(管理者パスワードが末尾に表示される) sudo gvm-setup # セットアップが正常に完了したか確認 sudo gvm-check-setup # すべてOKになれば準備完了

gvm-check-setupの出力でエラーが表示された場合は、指示に従って依存パッケージの追加インストールやサービスの再起動を行います。

3. サービス起動とWebUIへのアクセス

サービスを起動してブラウザからWebUI(Greenbone Security Assistant)にアクセスします。デフォルトのポートは9392です。

# GVMサービスの起動 sudo gvm-start # ブラウザからWebUIにアクセス(ローカルの場合) # https://127.0.0.1:9392

リモートサーバーにOpenVASをインストールした場合は、WebポートをインターネットやLANに直接公開するのは避け、SSHトンネル経由でアクセスすることを推奨します。

# SSHトンネルを使ってWebUIに安全アクセス(自分のPCから実行) ssh -L 9392:127.0.0.1:9392 user@your-gvm-server # 接続後、ブラウザで https://127.0.0.1:9392 を開く

最初のスキャンを実施する4ステップ

WebUIにadminユーザーでログイン後、以下の手順でスキャンを実施します。

1. ターゲット(Target)の登録

「Configuration → Targets」から新規ターゲットを登録します。スキャン対象のIPアドレスやCIDR範囲を指定します。

・Name: 管理しやすい名前(例: 「公開Webサーバー 10.0.1.10-20」)
・Hosts: IPアドレス、CIDR範囲(192.168.1.0/24)、ホスト名を改行区切りで複数指定可
・Port List: 「All IANA assigned TCP and UDP」を選択すると全ポートをカバー

2. スキャン設定の選択とタスク作成

「Scans → Tasks」から新規タスクを作成します。Scan Configで実施するスキャンの深度を選択します。

・Full and fast: 速度優先。検証環境や最初の試走に適している
・Full and slow: 精度優先・低負荷。本番環境の深夜スキャンに向いている
・Host Discovery: ホスト存在確認のみ。脆弱性は検出しない

ターゲットとスキャン設定を選択してタスクを保存後、「▶ Start」ボタンで実行します。スキャン進行状況は画面上でリアルタイムに確認できます。10台程度のホストで30分~1時間程度かかります。

3. スキャン結果の確認とエクスポート

スキャン完了後、「Scans → Reports」から対象のレポートを開きます。CVSSスコア順に並べ替えると深刻な脆弱性を優先確認できます。レポートはPDF・XML・CSV形式でエクスポート可能です。

CVSSスコアで脆弱性の優先度を判定する

OpenVASのレポートに表示される脆弱性にはすべてCVSSスコア(Common Vulnerability Scoring System)が付与されています。このスコアを使って修正の優先順位を決めます。

重大度 CVSSスコア 対応目安 主な例
Critical 9.0~10.0 即座に対応(48時間以内) リモートコード実行・認証バイパス
High 7.0~8.9 1週間以内に対応 権限昇格・重要情報漏洩
Medium 4.0~6.9 1ヶ月以内に計画 設定ミス・旧TLSバージョン
Low 0.1~3.9 四半期ごとの定期対応 バナー情報露出・軽微な設定不備

スコアだけでなくAttack Vector(攻撃経路)も確認しましょう。「Network」の脆弱性はインターネット越しに悪用されるリスクが高く、「Local」は物理またはシェルアクセスが前提となり悪用難易度が上がります。インターネット公開サーバーに存在するNetworkベースの脆弱性はスコアが中程度でも優先度を上げて対応することを推奨します。

発見した脆弱性の修正管理には体系的なフローが必要です。脆弱性管理とは?発見・評価・修正・検証の4ステップで全体像を確認しておくと、OpenVASの結果を有効に活かせます。

False Positive(誤検知)の扱い方

スキャン結果には一定数の誤検知が含まれます。バージョン情報のみから判定されるケースで、実際にはすでにパッチが当たっているケースなどです。誤検知と確認した脆弱性はOpenVASの「Override(上書き)」機能でコメントと根拠を記録しておくと、次回以降のレポートが整理されます。ただし、誤検知の判断は慎重に行ってください。実在する脆弱性を誤検知として除外することは、発見を見逃すことと同義です。

中小企業でも今日からできること

1. 公開サーバーに絞って始める

最初から社内ネットワーク全体をスキャンする必要はありません。まずインターネットに直接公開しているサーバー(WebサーバーやVPNゲートウェイ、メールサーバーなど)だけを対象にします。攻撃者が最初に狙う入口であり、脆弱性を早期発見するメリットが最も大きい対象です。

2. 月次スキャンを自動化する

OpenVASには定期スキャンのスケジュール機能があります。「Scans → Schedules」から月次スキャンを設定することで、継続的な脆弱性監視を自動化できます。

# WebUI上でのスケジュール設定 # Scans → Schedules → New Schedule # 推奨設定例 # First Time: 翌月第1月曜日 02:00(業務時間外) # Period: Monthly(月次) # Timezone: Asia/Tokyo

3. レポートを共有して修正を追跡する

スキャン結果はCSV・PDFでエクスポートし、パッチ担当者と共有します。「いつ検出されたか」「いつ修正したか」の記録を残しておくことで、定期的なセキュリティ点検の証跡にもなり、インシデント発生時の対応にも活用できます。

4. VTフィードの自動更新を確認する

OpenVASの検出力はVTフィードの鮮度で決まります。フィードが古いままだと、最新の脆弱性を見逃します。定期的に更新されているか確認しましょう。

# VTフィードの手動更新 sudo greenbone-feed-sync # フィードの更新状態確認(WebUI) # Administration → Feed Status で最終更新日を確認

よくある誤解と注意点

・「OpenVASを入れれば安全」ではない: OpenVASは検出ツールであり、防御ツールではありません。発見した脆弱性にパッチを当てて初めて意味があります
・スキャン結果は「その時点の」スナップショット: 新しい脆弱性は毎日公表されます。定期スキャンを継続しないと、スキャン後に公表された脆弱性を見逃し続けることになります
・スキャンはネットワーク負荷をかける: 本番環境への配慮なしに「Full and fast」で全ポートスキャンを実施すると、一時的な遅延が発生する場合があります。最初はメンテナンス時間帯に試しましょう
・「100%検出」は存在しない: OpenVASで何も検出されなくても、ゼロデイ脆弱性や設定ミスが残っている可能性は常にあります。ログ監視・ファイル整合性確認との多層防御が重要です

ローカルホスト内部の設定ミスや権限問題はOpenVASでは検出しにくいため、Lynisと組み合わせることで外部スキャンと内部監査の両面をカバーできます。

Linuxのコマンドラインでのログ解析やサーバー操作の基礎については、姉妹サイトLinuxMaster.JPで詳しく解説しています。

LinuxへのOpenVAS(Greenbone)導入と定期スキャン運用ガイド|脆弱性発見からリスク優先度判定まで情シス1人でも回せる実践手順 - まとめ

本記事のまとめ

項目 ポイント
OpenVASとは CVEベースのVTを5万件以上備えたオープンソース脆弱性スキャナー(Greenbone Community Edition)
インストール Ubuntu: sudo apt install gvm → sudo gvm-setup(15~30分)
スキャン手順 ターゲット登録 → タスク作成 → スキャン実行 → レポート確認
優先度判定 CVSSスコア9.0以上は48時間以内、7.0以上は1週間以内にパッチ対応
運用のコツ 公開サーバーから始めて月次スキャンを自動化。VTフィードの定期更新を忘れずに
組み合わせ 外部スキャン(OpenVAS)+ローカル監査(Lynis)で多面的なカバレッジを実現

PR

Linuxサーバーセキュリティ徹底入門(中島能和)

OpenVASによるスキャンで発見した脆弱性を修正する際に必要なLinuxサーバーのセキュリティ設定を体系的に学べる一冊。SSH・ファイル権限・SELinux・firewalldまで実務視点でカバーしています。

関連記事をもっと読む

同じテーマの記事をまとめています。あわせて読みたい記事はこちらからご覧いただけます。

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次