コンテンツにスキップ

スキャンモードの設定#

設定ファイル(config.toml)にて、スキャナの動作を指定できます。

Linuxでの設定#

FutureVulsではスキャナのインストール時に以下の設定が可能です。

設定項目 変数名 説明
スキャンモード VULS_SCAN_MODE スキャン実行権限の違い
スキャンオフライン VULS_SCAN_OFFLINE スキャン実行時のインターネット接続の有無
スキャナの自動更新 AUTO_REFRESH_BINARY 各スキャン時のスキャナ更新の有無
プロキシ設定 VULS_PROXY プロキシ環境下でのプロキシサーバの設定

スキャンモード#

スキャン実行時に Root 権限が必要かどうかを選択します。 プロセス起動状況などトリアージに役に立つ情報を取得可能な fast-root でスキャンすることをオススメしています。

スキャンモード 説明
Fast-Rootスキャン(デフォルト) スキャナプログラム実行時にRoot権限が必要なモードであり、以下の情報も取得可能
・プロセスの起動状況やポートの開放状況
・次回アップデート時に影響のあるプロセス
・パッケージアップデートしたが再起動を忘れているサービス
Fastスキャン 取得できる情報に制限があるが、スキャナプログラム実行時にRoot権限が必要ないモード

スキャンモードの設定は config.toml 内の scanMode で編集可能です。

#Fast-Rootスキャンの場合
scanMode = ["fast-root"]

#Fastスキャンの場合
scanMode = ["fast"]

Fast スキャンモードを利用する場合は、 /etc/sudoers.d/vuls-saas の設定は不要となるので削除してください。

スキャンオフライン#

offline を指定すると、スキャン対象サーバがインターネットに接続できない環境でもスキャンできます。 これは一部の OS で対応しています。対応状況については「OSSドキュメント」を参照してください。

スキャンオフラインの設定は config.toml 内の scanMode で編集可能です。

# offline スキャンモードを利用する場合は以下のように追記(Fastスキャンモードも同様)
scanMode = ["fast-root", "offline"]

スキャンモジュール#

以下のように、環境や用途に合わせてスキャナの動作を柔軟に制御できます。

  • WordPressの脆弱性は検知したいがOSパッケージの脆弱性は検知したくない
  • サーバに配備されているライブラリの脆弱性のみ検知したい
  • ポート接続チェックはしたくない

scanModuleには以下を指定可能です。

scanModules = ["ospkg", "wordpress", "lockfile", "port"]
名前 説明
ospkg OSのパッケージリストを取得する
lockfile プログラミング言語ライブラリのロックファイルを取得する。詳細
wordpress WordPressのCore, Plugin, Themeのリストを取得する。詳細
port サーバがListenしているPortに対して、Scannerから接続チェックする

デフォルトでは scanModules は省略されていて、このとき ospkgwordpresslockfileport の4つのモジュールが全て有効化されます。 ただし、wordpresslockfile のスキャンは、config.toml 上で対応する設定(WordPress の設定パス、Lockfile の配置パス 等)が記載されている場合にのみ実行されます。

設定が存在しない状態では、モジュールを有効化しても該当スキャンは実際に走りません。

各種パスの設定方法につきましては以下をご確認ください。

Trivyでの設定#

通常版のTrivyスキャンでは、/opt/vuls-trivy-saas/config.toml ファイルを用いて指定可能なオプションがあります。

コンテナイメージの場合#

項目 説明 必須
[] の中 images.<hoge> (<hoge> の中は <imageName>:<tag> と一致している必要はありません。)
imageName スキャン対象のコンテナイメージの名前
tag スキャン対象のコンテナイメージのタグ
uuid uuidgen 等により生成した uuid

ライブラリの場合#

項目 説明 必須
[] の中 libraries.<hoge> (<hoge> の中は targetPath と一致している必要はありません。)
targetPath スキャン対象ディレクトリ
uuid uuidgen 等により生成した uuid

config.toml の例#

[saas]
  GroupID = XXX
  Token = "xxxxxxxx"
  Proxy = 'http://name:pass@proxy:port'

[scanner]
  refreshScanner = true

  [images.myApp:latest]
    imageName = "myApp"
    tag = "latest"
    uuid = "xxxxxxxx"

  [libraries./xxx/xxx]
    targetPath = "/xxx/xxx"
    uuid = "xxxxxxxx"