本機能を利用するためにはスキャナの更新が必要です。
Go言語アプリケーションの脆弱性検知に対応しました。
FutureVulsでは複数の方法でアプリケーション依存ライブラリの脆弱性検知が可能ですが、新たにブラウザにLockFileの内容をペーストしてスキャン可能になりました。
登録されたLockFileに該当する脆弱性が新規公開されたタイミングで継続的に通知されます。 依存ライブラリをバージョンアップしてLockFileの内容が更新された場合は、FutureVulsの画面上からLockFileの内容を更新してください。FutureVulsで検知済みタスクのステータスが「patch_applied」に自動更新されます。
2021年6月18日時点でペーストスキャンがサポートするLockFileは以下の通りです。
Lang | LockFile |
---|---|
Ruby | Gemfile.lock |
Python | Pipfile.lock, poetry.lock |
PHP | composer.lock |
Node.js | package-lock.json, yarn.lock |
Go | go.sum |
Rust | Cargo.lock |
.NET | packages.lock.json |
次に、LockFileを登録する方法を説明します。
またこれまで通り、スキャン対象サーバ上の config.toml
に、サーバ上のlockfileのパスを指定してのスキャンも行えます。
FutureVulsにはアプリケーション依存ライブラリの脆弱性検知の方法が複数存在しますが、下記の理由で複数の方法を併用することをおすすめします。
参考までに、Lockfileペーストスキャンと、GitHub Security Alerts連携の検知数を比較してみました。
※ 2021年6月17日時点のデータです。検証に使ったLockfileのURLも掲載します。
Lang | スキャンしたLockFile | ペーストスキャン検知数 | GitHub Security Alerts検知数 |
---|---|---|---|
Rust | Cargo.lock | 2 | 未サポート |
PHP | composer.lock | 10 | 3 |
Ruby | Gemfile.lock | 54 | 16 |
Node.js | package-lock.json | 25 | 12 |
Node.js | yarn.lock | 38 | 26 |
Python | Pipfile | 14 | 3 |
Go | go.sum | 18 | 未サポート |
2021/6/17時点での上記のLockfileの検知数を見るとGitHub Security AlertsよりもLockFileペーストスキャンの方が多く検知することを確認できました。
ただし、この結果は以下の条件に依存するため、ユーザ各自で実際に試して検討されることをおすすめします。
Trend Micro Cloud One Workload Security連携を強化しました。
FutureVulsで検知した脆弱性に対応するCloud One侵入防御ルールが存在する場合は Available
ステータスのアイコンが表示されます。
高リスクな脆弱性を検知したが、すぐにはアップデートできない状況。一時的な回避策として、Cloud Oneに該当する脆弱性の侵入防御ルールが存在するかを確認したいケースで便利な機能です。
Availableステータスは「グループ設定>Cloud One外部連携」が未設定でもデフォルトで表示されます。また侵入防御ルール有無の情報はFutureVulsサービス側で数時間に一度の間隔で同期されます。
など、さらに高度に連携する場合は、グループ設定>Cloud One連携を設定してください。
CPEスキャン機能は「FutureVuls画面上から登録したCPE」に該当する脆弱性をNVDから検知します。主にOSパッケージ以外の脆弱性検知に利用できます。
これまではCPEの下記の項目のみで比較していました。
今回のリリース以降、他の項目も用いて検知するように変更したため、より正確に検知できるようになりました。
CVE-2017-3160を例に具体的に説明します。
上記NVDのページ下部の「Known Affected Software Configurations」(影響を受けるCPE)には cpe:/a:apache:cordova:::~~~android~~
Up to 6.1.2
が指定されています。
これは CVE-2018-3160
は apacheのcordovaの6.1.2未満のandroid向けプラットフォーム版
が影響を受ける、という意味です。
FutureVulsに cpe:/a:apache:cordova:5.1.1::~~~iphone_os~~
を登録しCPEスキャンするケースを考えます。
これまでの検知ロジックでは cpe:/a:apache:cordova:5.1.1
までを見て a=a && apache == apache && cordova == cordova && 5.1.1 < 6.1.2
が成立するため上記のCVE-2017-3160が誤検知されていました。
今回のリリース以降はバージョン以外の項目で指定されている iphone_os
も比較条件に加わったことで android
と iphone_os
の部分がマッチしなくなり、この例のような誤検知が解消されます。
REST APIにPASTEサーバの作成・更新機能が追加されました。
curl
などを用いて、PASTEサーバを作成・更新いただけます。
詳細は、REST APIマニュアルをご確認ください。
「コンテナイメージ追加」や「擬似サーバ追加」はサーバ一覧から、サーバにスキャナをインストールし脆弱性検知する場合はグループ設定画面の「スキャナ」とサーバ登録の方法が散らばっていました。
今回のアップデートでサーバ一覧に「サーバ追加」ボタンとしてまとめ、サーバの登録方法を一覧化しました。
各種サーバの登録方法と追加ボタンを設置し、「?」マークからヘルプページへ移動できます。
いくつかのバグを修正しました。