forked from openclarity/vmclarity
-
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.
docs: Add a demo gif, quick start and roadmap to README (openclarity#369
) * docs: Add demo gif, quick start and roadmap to README * docs: Fix CF template link in README * docs: Add CF S3 link to Getting Started * docs: restructure readme * docs: move tour link * docs: review
- Loading branch information
Showing
6 changed files
with
232 additions
and
220 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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,57 @@ | ||
# High Level Architecture | ||
|
||
Today, VMClarity has two halves, the VMClarity infrastructure, and the VMClarity CLI. | ||
|
||
The VMClarity infrastructure includes: | ||
|
||
- **Backend**: The core component of VMClarity. Within this service there are | ||
sub-components (it is in the roadmap to break these into dedicated microservices): | ||
|
||
- **API**: The VMClarity API for managing all objects in the VMClarity | ||
system. This is the only component in the system which talks to the DB. | ||
|
||
- **Orchestrator**: Orchestrates and manages the life cycle of VMClarity scan | ||
configs, scans and scan results. Within the Orchestrator there is a | ||
pluggable "provider" which connects the orchstrator to the environment to be | ||
scanned and abstracts target discovery, VM snapshotting as well as creation of | ||
the scanner VMs. (**Note** The only supported provider today is AWS, other | ||
hyperscalers are on the roadmap) | ||
|
||
- **UI Backend**: A separate backend API which offloads some processing from | ||
the browser to the infrastructure to process and filter data closer to the | ||
source. | ||
|
||
- **UI Server**: A server serving the UI static files. | ||
|
||
- **DB**: Stores the VMClarity objects from the API. Today this is SQLite but | ||
the database interface in VMClarity is pluggable and additional DB support | ||
can be added. (Postgres is in the roadmap) | ||
|
||
- **Scanner services**: These services provide support to the VMClarity | ||
CLI to offload work that would need to be done in every scanner, for example | ||
downloading the latest vulnerability or malware signatures from the various DB | ||
sources. The components included today are: | ||
- grype-server: A rest API wrapper around the grype vulnerbility scanner | ||
- trivy-server: Trivy vulnerability scanner server | ||
- exploitDB server: A test API which wraps the Exploit DB CVE to exploit mapping logic | ||
- freshclam-mirror: A mirror of the ClamAV malware signatures | ||
|
||
The VMClarity CLI contains all the logic for performing a scan, from mounting | ||
attached volumes and all the pluggable infrastructure for all the families, to | ||
exporting the results to VMClarity API. | ||
|
||
These components are containerized and can be deployed in a number of different | ||
ways. For example our cloudformation installer deploys VMClarity on a VM using | ||
docker in an dedicated AWS Virtual Private Cloud (VPC). | ||
|
||
Once the VMClarity server instance has been deployed, and the scan | ||
configurations have been created, VMClarity will discover VM resources within | ||
the scan range defined by the scan configuration (e.g., by region, instance | ||
tag, and security group). Once the target list has been created, snapshots of | ||
the targets are taken, and a new scanner VM are launched using the snapshots as | ||
attached volumes. The VMClarity CLI running within the scanner VM will perform | ||
the configured analysis on the mounted snapshot, and report the results to the | ||
VMClarity API. These results are then processed by the VMClarity backend into | ||
findings. | ||
|
||
 |
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,26 @@ | ||
# VMClarity Project Goals | ||
|
||
- **Increase the adoption of VMClarity**: One of the primary goals of VMClarity | ||
is to reduce the number of vulnerable VMs in the world. We hope to do this by | ||
getting more people involved in the project. This involves feature development, | ||
marketing efforts, improving the user experience, and providing additional | ||
documentation and resources to make it easier for users to get started. | ||
|
||
- **Improve the accuracy of VMClarity**: Another goal is to enhance the | ||
accuracy across all supported types of threat detection by improving the | ||
analysis and result merging logic performed by VMClarity to reduce false | ||
positives. This involves researching and developing improved algorithms and | ||
heuristics used by VMClarity. | ||
|
||
- **Expand VMClarity's functionality**: A third goal is to expand the | ||
functionality of VMClarity by adding additional tools to each family, adding | ||
additional families of threats to detect, and integrating with other security | ||
tools to provide a more comprehensive security solution. | ||
|
||
- **Foster a community around VMClarity**: VMClarity will only be successful if | ||
we foster a community of users and developers around the project. The health | ||
of VMClarity depends on organizing events, creating a forum for users to drive | ||
requirements and use cases, and contributing to open-source projects related to | ||
VMClarity. Building a strong community around VMClarity will help it be more | ||
widely adopted and more effective at detecting and managing virtual machine | ||
threats. |
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
Oops, something went wrong.