The Wayback Machine - https://web.archive.org/web/20190604062159/https://github.com/future-architect/vuls
Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Agent-less vulnerability scanner for Linux/FreeBSD/WordPress/Programming language libraries/Network devices
Branch: master
Clone or download
shigechika and kotakanbe fix(report): WordPress(WPVULNDB API) 429 Too Many Requests (#826)
* fix(report): WordPress(WPVULNDB API) 429 Too Many Requests

* fix(report): WordPress(WPVULNDB API) 429 Too Many Requests
Latest commit 64cdd5a Jun 4, 2019
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Change GitHub templates Jul 19, 2018
alert add alert data to result json (#747) Dec 5, 2018
cache feat(scan): WordPress Vulnerability Scan (core, plugin, theme) (#769) Apr 8, 2019
commands Updated config.toml reference url (#809) May 9, 2019
config Bump up version Apr 8, 2019
contrib/owasp-dependency-check/parser feat(scan): WordPress Vulnerability Scan (core, plugin, theme) (#769) Apr 8, 2019
cwe v0.5.0 (no backwards compatibility) (#478) Aug 27, 2018
errof Implement Vuls's own error code (#812) May 15, 2019
exploit feat(scan): WordPress Vulnerability Scan (core, plugin, theme) (#769) Apr 8, 2019
github Implement Vuls's own error code (#812) May 15, 2019
gost fix(report-redhat): fix false negative of `affected` vulns #827 (#828) Jun 4, 2019
img Add news to readme Apr 8, 2019
models fix(scan): a bug of kernel Vulns detection on Ubuntu18 (#818) May 23, 2019
oval fix(report): warning only if the kernel version is unknown (#822) May 24, 2019
report fix(report): Error when GitHub integration failed (#800) Apr 15, 2019
scan add scannedVia field to know the way of access such as SSH, local or … May 15, 2019
server fix(report): Error when GitHub integration failed (#800) Apr 15, 2019
setup/docker Remove old Dockerfile (#684) Jul 12, 2018
util add scanner info in -to-saas (#783) Mar 4, 2019
wordpress fix(report): WordPress(WPVULNDB API) 429 Too Many Requests (#826) Jun 4, 2019
.dockerignore Refactor Dockerfile (#683) Jul 12, 2018
.gitignore Add news to readme Apr 8, 2019
.goreleaser.yml Merge branch 'master' of https://github.com/future-architect/vuls Apr 8, 2019
.travis.yml feat(scan): WordPress Vulnerability Scan (core, plugin, theme) (#769) Apr 8, 2019
CHANGELOG.md Support Alpine Linux #194 (#545) Dec 1, 2017
Dockerfile Specify VOLUME using json syntax (#791) Mar 22, 2019
GNUmakefile feat(scan): WordPress Vulnerability Scan (core, plugin, theme) (#769) Apr 8, 2019
Gopkg.lock add scannedVia field to know the way of access such as SSH, local or … May 15, 2019
Gopkg.toml feat(scan): WordPress Vulnerability Scan (core, plugin, theme) (#769) Apr 8, 2019
LICENSE change copyright (#677) Jul 17, 2018
NOTICE change copyright (#677) Jul 17, 2018
README.md Add news to readme Apr 8, 2019
main.go v0.5.0 (no backwards compatibility) (#478) Aug 27, 2018

README.md

Vuls: VULnerability Scanner

Slack License Build Status Go Report Card Contributors

Vuls-logo

Vulnerability scanner for Linux/FreeBSD, agentless, written in golang. We have a slack team. Join slack team Twitter: @vuls_en

Vuls-Abstract

Vulsrepo

asciicast

Vuls-slack


NEWS

Version Main Feature Date
v0.7.0 WordPress Vulnerability Scan 2019/Apr/8
v0.6.3 GitHub Integration 2019/Feb/20
v0.6.2 Add US-CERT/JPCERT Alerts as VulnSrc 2019/Jan/23
v0.6.1 BugFix 2018/Nov/16
v0.6.0 Add ExploitDB as VulnSrc 2018/Nov/3
v0.5.0 Scan accuracy improvement 2018/Aug/27

Abstract

For a system administrator, having to perform security vulnerability analysis and software update on a daily basis can be a burden. To avoid downtime in a production environment, it is common for a system administrator to choose not to use the automatic update option provided by the package manager and to perform update manually. This leads to the following problems.

  • The system administrator will have to constantly watch out for any new vulnerabilities in NVD (National Vulnerability Database) or similar databases.
  • It might be impossible for the system administrator to monitor all the software if there are a large number of software packages installed in the server.
  • It is expensive to perform analysis to determine the servers affected by new vulnerabilities. The possibility of overlooking a server or two during analysis is there.

Vuls is a tool created to solve the problems listed above. It has the following characteristics.

  • Informs users of the vulnerabilities that are related to the system.
  • Informs users of the servers that are affected.
  • Vulnerability detection is done automatically to prevent any oversight.
  • A report is generated on a regular basis using CRON or other methods. to manage vulnerability.

Vuls-Motivation


Main Features

Scan for any vulnerabilities in Linux/FreeBSD Server

Supports major Linux/FreeBSD

  • Alpine, Amazon Linux, CentOS, Debian, Oracle Linux, Raspbian, RHEL, SUSE Enterprise Linux, and Ubuntu
  • FreeBSD
  • Cloud, on-premise, and Docker

High-quality scan

Vuls uses multiple vulnerability databases

Fast scan and Deep scan

Fast Scan

  • Scan without root privilege, no dependencies
  • Almost no load on the scan target server
  • Offline mode scan with no internet access. (CentOS, Debian, Oracle Linux, Red Hat, and Ubuntu)

Fast Root Scan

  • Scan with root privilege
  • Almost no load on the scan target server
  • Detect processes affected by update using yum-ps (Amazon Linux, CentOS, Oracle Linux, and RedHat)
  • Detect processes which updated before but not restarting yet using checkrestart of debian-goodies (Debian and Ubuntu)
  • Offline mode scan with no internet access. (CentOS, Debian, Oracle Linux, Red Hat, and Ubuntu)

Deep Scan

  • Scan with root privilege
  • Parses the Changelog Changelog has a history of version changes. When a security issue is fixed, the relevant CVE ID is listed. By parsing the changelog and analysing the updates between the installed version of software on the server and the newest version of that software it's possible to create a list of all vulnerabilities that need to be fixed.
  • Sometimes load on the scan target server

Remote scan, Local scan mode, Server mode

Remote scan mode

  • User is required to only set up one machine that is connected to other target servers via SSH

Local scan mode

  • If you don't want the central Vuls server to connect to each server by SSH, you can use Vuls in the Local Scan mode.

Server mode

  • First, start Vuls in server mode and listen as an HTTP server.
  • Start Vuls in server mode and listen as an HTTP server.
  • Next, issue a command on the scan target server to collect software information. Then send the result to Vuls Server via HTTP. You receive the scan results as JSON format.
  • No SSH needed, No Scanner needed. Only issuing Linux commands directory on the scan tareget server.

Dynamic Analysis

  • It is possible to acquire the state of the server by connecting via SSH and executing the command.
  • Vuls warns when the scan target server was updated the kernel etc. but not restarting it.

Scan vulnerabilities of non-OS packages

Integration

MISC

  • Nondestructive testing
  • Pre-authorization is NOT necessary before scanning on AWS
    • Vuls works well with Continuous Integration since tests can be run every day. This allows you to find vulnerabilities very quickly.
  • Auto-generation of configuration file template
    • Auto-detection of servers set using CIDR, generate configuration file template
  • Email and Slack notification is possible (supports Japanese language)
  • Scan result is viewable on accessory software, TUI Viewer in a terminal or Web UI (VulsRepo).

What Vuls Doesn't Do

  • Vuls doesn't update the vulnerable packages.

Document

For more information such as Installation, Tutorial, Usage, visit vuls.io 日本語翻訳ドキュメント


Authors

kotakanbe (@kotakanbe) created vuls and these fine people have contributed.


Change Log

Please see CHANGELOG.


Stargazers over time

Stargazers over time

-----;

License

Please see LICENSE.

You can’t perform that action at this time.