forked from future-architect/vuls
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
add README.md, README.ja.md, img, NOTICE
- Loading branch information
Showing
15 changed files
with
3,265 additions
and
2 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,2 @@ | ||
Vuls Copyright (C) 2016 Future Architect, Inc. Japan. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,112 @@ | ||
|
||
# Vuls: VULnerability Scanner | ||
|
||
Vulnerability scanner for Linux, agentless, written in golang. | ||
|
||
Slackチームは[こちらから](http://goo.gl/forms/xm5KFo35tu)参加できます。(日本語でオッケーです) | ||
|
||
[](https://asciinema.org/a/bazozlxrw1wtxfu9yojyihick) | ||
|
||
 | ||
|
||
|
||
[README in English](https://github.com/future-architect/vuls/blob/master/README.md) | ||
|
||
|
||
---- | ||
|
||
# Abstract | ||
|
||
- 毎日のように発見される脆弱性の調査、ソフトウェアアップデート作業はシステム管理者にとって大変なタスクである | ||
- サービス停止リスクを恐れてパッケージマネージャの自動アップデート機能を使わずに手動で行うケースも多いが、手動での運用には以下の問題がある | ||
- NVDやJVNなどの脆弱性データベースの新着情報をウォッチするのが大変 | ||
- サーバにインストールされているソフトウェアは膨大であり、全てを人が把握するのは困難 | ||
- 特にサーバ台数が多い場合は、新たに発見された脆弱性が自分の管理するどのサーバに該当するのかの調査コストが大きく、また漏れる可能性がある | ||
- 最新情報を見逃したら脆弱性が放置されたままになる | ||
|
||
- Vulsはサーバに存在する脆弱性を自動スキャンし、詳細情報をレポートする | ||
- システムに関係あるもののみ教えてくれる | ||
- その脆弱性に該当するサーバを教えてくれる | ||
- 自動スキャンのため脆弱性対策漏れを防ぐことができる | ||
- CRONなどで定期実行、レポートすることで脆弱性放置を防ぐことできる | ||
|
||
- Vulsはシステム管理者の日々の脆弱性対応を助け、システムをセキュアに保つために有用なツールとなることを目指している | ||
|
||
 | ||
|
||
---- | ||
|
||
# Main Features | ||
|
||
- Linuxサーバに存在する脆弱性をスキャン | ||
- Ubuntu, Debian, CentOS, Amazon Linux, RHELに対応 | ||
- クラウド、オンプレミス、Docker | ||
- OSパッケージ管理対象外のミドルウェアをスキャン | ||
- プログラミング言語のライブラリやフレームワーク、ミドルウェアの脆弱性スキャン | ||
- CPEに登録されているソフトウェアが対象 | ||
- エージェントレスアーキテクチャ | ||
- スキャン対象サーバにSSH接続可能なマシン1台にセットアップするだけで動作 | ||
- 複数のSSH認証方式をサポート | ||
- SSH agent | ||
- SSH public key authentication (with password, empty password) | ||
- Password authentication | ||
- 設定ファイルのテンプレート自動生成 | ||
- CIDRを指定してサーバを自動検出、設定ファイルのテンプレートを生成 | ||
- EmailやSlackで通知可能(日本語でのレポートも可能) | ||
- 付属するTerminal-Based User Interfaceビューアでは、Vim風キーバインドでスキャン結果を参照可能 | ||
|
||
---- | ||
|
||
# レポートの日本語化 | ||
|
||
- JVNから日本語の脆弱性情報を取得 | ||
``` | ||
$ go-cve-dictionary fetchjvn -help | ||
fetchjvn: | ||
fetchjvn [-dump-path=$PWD/cve] [-dpath=$PWD/vuls.sqlite3] [-week] [-month] [-entire] | ||
-dbpath string | ||
/path/to/sqlite3/DBfile (default "$PWD/cve.sqlite3") | ||
-debug | ||
debug mode | ||
-debug-sql | ||
SQL debug mode | ||
-dump-path string | ||
/path/to/dump.json (default "$PWD/cve.json") | ||
-entire | ||
Fetch data for entire period.(This operation is time-consuming) (default: false) | ||
-month | ||
Fetch data in the last month (default: false) | ||
-week | ||
Fetch data in the last week. (default: false) | ||
``` | ||
- すべての期間の脆弱性情報を取得(1時間以上かかる) | ||
``` | ||
$ go-cve-dictionary fetchjvn -entire | ||
``` | ||
- 直近1ヶ月間に更新された脆弱性情報を取得(1分未満) | ||
``` | ||
$ go-cve-dictionary fetchjvn -month | ||
``` | ||
- 直近1週間に更新された脆弱性情報を取得(1分未満) | ||
``` | ||
$ go-cve-dictionary fetchjvn -week | ||
``` | ||
- 脆弱性情報の自動アップデート | ||
Cronなどのジョブスケジューラを用いて実現可能。 | ||
-week オプションを指定して夜間の日次実行を推奨。 | ||
## スキャン実行 | ||
``` | ||
$ vuls scan -lang=ja | ||
``` | ||
Scan時にlang=jaを指定すると脆弱性レポートが日本語になる | ||
slack, emailは日本語対応済み TUIは日本語表示未対応 | ||
Oops, something went wrong.