Skip to main content

CASM: Continuous Attack Surface Monitoring

Project description

CASM

Continuous Attack Surface Monitoring

CASM logo

Evidence-first attack surface monitoring with safe, scope-bound verification and run-over-run change tracking.

CASM helps security teams continuously monitor external exposure in authorized environments. It discovers assets, verifies HTTP/TLS posture, and compares each run against a baseline to show exactly what changed.

Quick Start

# Install
pip install g2cv-casm

# Run a unified scan
casm run unified --config scopes/scope.yaml --targets-file targets/target-harness.example.json

# Compare with a previous run
casm diff --old runs/baseline/results.sarif --new runs/current/results.sarif

What CASM Does

  • Discover exposed assets across HTTP, DNS, and TLS contexts.
  • Verify web hardening signals and transport/security headers.
  • Track change between scans with baseline-aware diffs.
  • Report in SARIF, Markdown, PDF, and JSONL evidence streams.

Safety by Default

  • Authorization-first scope controls (domains, IPs, ports, protocols).
  • Dry-run support, deterministic blocking reasons, and rate/concurrency guardrails.

Screenshots

Executive Summary (PDF) Executive Summary

Changes Since Last Scan (PDF) Changes Since Last Scan

Documentation

  • Full docs: docs/ (or run mkdocs serve)
  • Tutorials: docs/tutorials/
  • CLI reference: docs/reference/cli.md
  • Configuration reference: docs/reference/configuration.md
  • Security model: docs/explanation/security-model.md

Project Notes

  • Package name on PyPI: g2cv-casm
  • CLI commands: casm and g2cv-casm
  • Versioning is tag-driven (vMAJOR.MINOR.PATCH)

Contributing and Security

  • Contribution guide: CONTRIBUTING.md
  • Security policy: SECURITY.md
  • Code of conduct: CODE_OF_CONDUCT.md

Support

If CASM is useful for your team, consider starring the repository. It helps others discover the project and supports ongoing development.

License

AGPL-3.0. See LICENSE.

Questions or partnerships: contact@g2cv.com

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

g2cv_casm-0.1.2.tar.gz (471.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

g2cv_casm-0.1.2-py3-none-any.whl (91.4 kB view details)

Uploaded Python 3

File details

Details for the file g2cv_casm-0.1.2.tar.gz.

File metadata

  • Download URL: g2cv_casm-0.1.2.tar.gz
  • Upload date:
  • Size: 471.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for g2cv_casm-0.1.2.tar.gz
Algorithm Hash digest
SHA256 acf903b6df218a9dde542d6365218368311fb830dbb5093d3516801a8c6455f7
MD5 c0707f8fc58b834e00bfdd4b19764e7b
BLAKE2b-256 ab6d111d5ce051e7ee73a58f9499e0c585521c795885a0d71d263176cea1a5cc

See more details on using hashes here.

File details

Details for the file g2cv_casm-0.1.2-py3-none-any.whl.

File metadata

  • Download URL: g2cv_casm-0.1.2-py3-none-any.whl
  • Upload date:
  • Size: 91.4 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.14.3

File hashes

Hashes for g2cv_casm-0.1.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c6dcc135d9ffb99e9f777c6b92e492cc17dfe273246424ce6119bf49023cecf8
MD5 4efa19df13d1e0d0180cd41c95f06af4
BLAKE2b-256 8cb4e379a6304b948d738dd3118ecbe84fb1f39219fc22d26978974484c33166

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page