As indicated by sources like vulndb & cve, on a daily basis, approximately 50 new vulnerabilities become known to industry and it’s safe to assume that count is going to increase furthermore. It’s a huge number of vulnerabilities to assess and remediate effectively and quickly. So today organizations are focusing (or should focus) on reducing the risk rather than eliminating it and vulnerability management is (almost) equal to risk prioritisation and risk is a variable and dynamic concept determined by multiple factors.
Theoretically, the approach of considering factors like base CVSS, asset accessibility, criticality, exploit availability, business sensitivity etc. looks appropriate to adopt but it’s not practically possible to do it manually for every vulnerability affecting every asset by every organisation.
Goals and Philosophy
To overcome above challenges, vPrioritizer is designed with primary objectives as below:
Centralized - must serve as single-pane-of-glass for vulnerability management Automated - any and every task which can be automated, must be automated Community Analytics - utilization of community analytics to mature the prioritization algorithm over the period of timeHow it Works
vPrioritizer gives us ability to assess the risk on different layers such as (and hence comprehensive control on granularity of each of risk as described above in risk calculation section):
We can assign significance on per asset basis We can assess severity on per vulnerability basis At the same time, we can adjust both factors at asset & vulnerability relationship level On top of that, community analytics provides insights as suggested riskvPrioritizer enables us to understand the contextualized risk pertaining to each asset by each vulnerability across the organization. It’s community based analytics provides a suggested risk for each vulnerability identified by vulnerability scanners and further strengthens risk prioritization process. So at any point of time teams can make an effective and more informed decision, based on unified and standardized data, about what (vulnerability/ties) they should remediate (or can afford not to) and on which (asset/s).
Quickstart
For Linux users:
Install docker & docker-compose sudo apt-get update sudo apt-get install docker-ce docker-compose wget https://raw.githubusercontent.com/varchashva/vPrioritizer/master/docker-compose.yml docker-compose up Browse to http://localhost:7777/vp and you are set to explore the tool :)For Windows and Mac users:
Install postgres Create user and database with below details: Username: vprioritizer Password: vprioritizer Database Name: vprioritizer git clone https://github.com/varchashva/vPrioritizer.git cd vPrioritizer python manage.py runserver 0.0.0.0:7777 Browse to http://localhost:7777/vp and you are set to explore the tool :)DEMO
Roadmap
Docker support for all OS (Linux, Mac, Windows) Integration with scanners API: Nexpose QualysGuard Nessus Cloud Native Scanner AWS Inspector Azure Security Center GCP Security Command Center “Custom Upload Field” module Cumulation of vulnerabilities Custom “Settings” page Maintaining the KB for vulnerabilities “Help” for vulnerabilities by OSINT Prioritization algorithm maturity (ongoing)