fleet/ee/vulnerability-dashboard
Eric 413c2bb906
Test vulnerability dashboard deploy workflow (#22938)
Related to: #22931

Changes:
- made a minor whitespace change to trigger a redeploy of the
vulnerability dashboard to see if it is affected by the same issue as
the "Deploy Fleet website" workflow.
2024-10-15 14:06:33 -05:00
..
api
assets Test vulnerability dashboard deploy workflow (#22938) 2024-10-15 14:06:33 -05:00
config
scripts
tasks
views
.dockerignore
.editorconfig
.eslintignore
.eslintrc
.gitignore
.htmlhintrc
.lesshintrc
.npmrc
.sailsrc
app.js
CHANGELOG.md
crontab
docker-compose.yml
Dockerfile
entrypoint.sh
Gruntfile.js
package.json
README.md

fleet-vulnerability-dashboard

Report and track progress on fixing and prioritizing thousands of installed CVEs.

screenshot of dashboard: overview

How does it work?

CVEs are detected and annotated using NVD, CVSS, EPSS, CISA KEVs, osquery, and Fleet.

screenshot of dashboard: list

Why a separate repo?

Should we move this to a subdirectory of fleetdm/confidential and have it deploy from there?

  • Philosophy: Why do we use one repo?
  • See also: The "broken windows effect"
  • Decision: No. On 2023-07-14, we decided to keep it here so Stephan, Finn, and all other relevant folks from Fastly can access the code and collaborate.
  • Update: 2023-11-06: The best thing is to move this in the ee/ directory of fleetdm/fleet. That achieves the goal of making it source available, but still paid. Logistics to enable this involve changing hosted deployments to deploy from within a nested subdirectory (something we've done before)

Cosmogony

f.k.a. "scooper"

Original raw notes and context: (private google doc since it contains competitor information: https://docs.google.com/document/d/1ByNWY6n_C-rvL75lI6jca2OniHt5FqA5_nYMf61S0pM/edit#)

Running the vulnerability dashboard with Docker.

To run a local vulnerability dashboard with docker, you can follow these instructions.

  1. Clone this repo

  2. Update the following ENV variables ee/vulnerability-dashboard/docker-compose.yml file:

  3. sails_custom__fleetBaseUrl: The full URL of your Fleet instance. (e.g., https://fleet.example.com)

  4. sails_custom__fleetApiToken: AN API token for an API-only user on your Fleet instance.

You can read about how to create an API-only user and get it's token here

  1. Open the ee/vulnerability-dashboard/ folder in your terminal
  2. Run docker compose up --build to build the vulnerability dashboard's Docker image.

The first time the vulnerability dashboard starts it will Initalize the database and run the update-reports script before the server starts.

  1. Once the container is done building, the vulnerability dashboard will be available at http://localhost:1337

You can login with the default admin login:

  • Email address: admin@example.com

  • Password: abc123

How it's made

This is a Sails v1 application: