CMMC 2.0 Compliance Scanner

Powered by cmmc2-toolkit {{ current_user.username }}
{% with messages = get_flashed_messages(with_categories=true) %} {% for category, message in messages %}
{{ message }}
{% endfor %} {% endwith %} {% if new_key %}
⚠ Copy your API key now — it will not be shown again
Use this key in your cmmc2agent.toml to connect the scanner agent to this project.
{{ new_key }}
{% if new_project_id %}
Project ID: {{ new_project_id }}    Open Dashboard →
{% endif %}
Agent setup (on target server):
pip install cmmc2-agent # cmmc2agent.toml dashboard_url = "http://<this-server>:5050" api_key = "{{ new_key }}" project_id = "{{ new_project_id }}" scan_path = "/path/to/your/app" cmmc2agent scan
{% endif %}
About CMMC 2.0

What is CMMC 2.0 Level 2?

The Cybersecurity Maturity Model Certification (CMMC) 2.0 is a U.S. Department of Defense framework that requires contractors and subcontractors handling Controlled Unclassified Information (CUI) to demonstrate compliance with NIST SP 800-171. Level 2 covers all 110 practices across 14 domains — including Access Control, Audit & Accountability, Identification & Authentication, Configuration Management, Incident Response, and more. Non-compliance can result in loss of DoD contracts.

About This Tool

What does this scanner do?

This tool inspects the source code and configuration of your web application and automatically checks it against the 26 most common CMMC 2.0 Level 2 control gaps found in Flask, Django, and FastAPI projects. It detects your platform automatically, runs programmatic checks (bcrypt usage, CSRF protection, session timeouts, security headers, secrets in environment variables, audit logging, and more), and gives you a live compliance score with a Plan of Action & Milestones (POA&M) for any gaps.

Each website you scan gets its own isolated dashboard, POA&M, and audit log. You can re-scan at any time to track remediation progress — manual overrides are always preserved.

Scan a New Project

Used as the project label. If omitted, the folder name is used.
The scanner reads source files from this directory to run programmatic checks.
Adds 24 enhanced practices (AC, CM, IA, IR, RA, SC, SI domains) required for DoD Level 3 certification. All Level 3 controls are manual-only — they cannot be verified by source scanning.

Your Projects

{% if projects %} {% for p in projects %}
{{ p.score }}%
Score
{{ p.name }} {% if p.platform %}{{ p.platform }}{% endif %} {% if p.include_l3 %}L3{% endif %}
{{ p.url }}
{{ p.path }}
Created {{ p.created_at[:10] }} {% if p.last_scan_at %} ·  Last scan {{ p.last_scan_at[:10] }}{% endif %}
Open Dashboard
{% endfor %} {% else %}
No projects yet — scan your first project above.
{% endif %}