Skip to main content

Free, open-source network infrastructure risk auditing — local-first, multi-vendor, BYO-AI.

Project description

SafeCadence Network Risk

Free, open-source enterprise network risk auditing — local-first, multi-vendor, AI-augmented.

The features of AlgoSec, Tufin, FireMon, Tenable, and Qualys — packaged into a single open-source CLI + local web UI you pip install in 30 seconds.

License: MIT PyPI version PyPI downloads Python 3.9+

pip install 'safecadence-netrisk[server]'
safecadence ui     # opens local web UI at http://127.0.0.1:8765

That's it. Discovery, identification, CVE matching, AI analysis, compliance reports, continuous monitoring — all running on your machine, no cloud, no signup, no telemetry.


What it does

In a single tool:

  • Discovers every device on your LAN — TCP probing + ARP cache + mDNS Bonjour + SNMP v2c. Finds devices that no other scanner sees (sleeping IoT, printers in standby).
  • Identifies vendor + OS + model + version for each — bundled OUI database, banner-grab, SNMP sysDescr, TLS cert subject, HTTP page-title scrape.
  • Matches against the live CISA KEV catalog — flags known-exploited vulnerabilities affecting your specific devices.
  • Scores risk per device — 0-100 score with band (safe / low / medium / high / critical) + explicit findings + recommended actions.
  • Detects toxic combinations"Telnet AND HTTP admin AND SNMP exposed = compound critical" — the way breaches actually happen.
  • Audits configs — 158 vendor-specific rules across 14 vendors (Cisco, Aruba, Arista, Juniper, Palo Alto, Fortinet, Linux, Windows, ESXi, AWS, Azure, GCP).
  • Bring-Your-Own-Key AI — per-device deep-analyze, conversational chat with your fleet, attack-path tracing, network architect review, multi-LLM consensus. OpenAI / Anthropic / Ollama supported. Your key never touches a SafeCadence server because there is no server.
  • Generates compliance audit packs — auditor-ready HTML evidence for SOC 2 / PCI-DSS / HIPAA / NIST 800-53 / CIS Controls v8.
  • Renders an exec-grade management report — multi-section HTML with cover page, KPI grid, inline-SVG charts, per-device cards, top vulnerabilities, compliance mapping. Print to PDF for board meetings.
  • Continuously monitorssafecadence watch runs in background, scans periodically, alerts via Slack / Teams / Webhooks / Email when something changes or a new KEV CVE matches.
  • Force-directed topology graph — visualize your network with risk-colored nodes, double-click to drill into any device.
  • Persists everything — server-side scan history, asset tags, owner assignments, criticality. Diff any two scans to see what changed.
Discovery → Identification → CVE Matching → Risk Scoring → Toxic Combos
   ↓
Per-device AI Analysis · Bulk Fleet Analysis · Attack Paths · Network Architect
   ↓
Continuous Monitoring · Slack/Teams/Email Alerts · CSV/HTML/PDF Reports
   ↓
Compliance Packs (SOC 2 · PCI · HIPAA · NIST · CIS) · Topology Map · Asset Inventory

Three ways to install

Method Best for One-liner
pip Python users, devs pip install 'safecadence-netrisk[server]'
pipx Anyone wanting a global safecadence command brew install pipx && pipx install 'safecadence-netrisk[server]'
Docker Non-Python users, containerized environments docker run -p 8765:8765 ghcr.io/famousleads/safecadence-netrisk ui --host 0.0.0.0

60-second tour

# Discover every device on your LAN
safecadence discover 192.168.1.0/24

# Audit a config file
safecadence scan ~/configs/router.txt --html report.html

# Run all the things via local web UI
safecadence ui
# → opens http://127.0.0.1:8765 with 14 tabs:
#   Dashboard · Scan · Devices · History · Subnet sweep · Saved scans
#   Topology map · Assets & tags · CVEs · End-of-life · Threat hunting
#   Chat with fleet · AI explainer · AI architect · Compliance packs · Settings

# Continuous monitoring with Slack alerts
safecadence watch 192.168.1.0/24 \
  --interval 3600 \
  --slack-webhook https://hooks.slack.com/... \
  --alert-on changes

What's in the box (full feature list)

Discovery & Identification

  • LAN deep scan: ARP cache + mDNS + TCP (27 management ports) + SNMP v2c sysDescr + TLS cert subject + HTTP page-title
  • MAC OUI vendor lookup (bundled database)
  • Heuristic device categorization: router, switch, firewall, AP, printer, camera, NAS, IoT, server, workstation, mobile
  • Multi-mode: quick, extended, lan_deep
  • Subnet sweep CIDR support, multi-threaded (configurable workers)

Vulnerability & Risk

  • 158 vendor-specific audit rules (Cisco IOS / IOS-XE / NX-OS / ASA, Aruba CX, Arista EOS, Juniper Junos, Palo Alto PAN-OS, Fortinet FortiOS, Linux, Windows, ESXi, AWS, Azure, GCP)
  • Bundled CVE database with KEV-prioritization
  • Live CISA Known Exploited Vulnerabilities feed integration
  • 13 port-based heuristic risk rules
  • 10 toxic-combination patterns (compound risks)
  • Per-device 0-100 risk score + band + findings + recommended actions
  • End-of-life (EOL/EOS) tracking via endoflife.date

AI (Bring-Your-Own-Key)

  • Per-device deep-analyze with grounded JSON output (no hallucinated CVEs)
  • Conversational chat with fleet ("which devices have telnet open?")
  • Bulk fleet analysis with cross-device pattern recognition
  • Attack path analysis (multi-hop chains from initial access to objective)
  • Network architect review (segmentation, zero-trust, lateral movement)
  • Multi-LLM consensus (run same analysis through OpenAI + Anthropic, flag disagreements)
  • Vendor-specific remediation playbooks (Markdown, copyable to runbook)
  • BYO API keys: OpenAI, Anthropic, Ollama (localhost)

Reports

  • Inventory report (HTML)
  • Management report (exec-grade HTML with inline-SVG charts, KPI grid, per-device cards, compliance mapping)
  • Compliance audit packs: SOC 2 Type II, PCI-DSS v4.0, HIPAA Security Rule, NIST 800-53 Rev. 5, CIS Controls v8
  • CSV export of fleet inventory
  • All reports print-perfect (Cmd+P → Save as PDF)

Operations

  • safecadence watch continuous monitoring CLI with diff-based alerting
  • Slack / Microsoft Teams / Generic webhook delivery
  • Email digest (NEW in v2.10)
  • Persistent server-side scan history (SQLite) — survives browser/server restarts
  • Diff between any two scans (added/removed/changed devices, port + CVE deltas)
  • Per-device asset tagging (tags, owner, criticality, notes)
  • Crown-jewel assets auto-boost risk score for prioritization

UI (the Dashboard)

  • 14 tabs covering every feature
  • Force-directed topology graph (click for quick info, double-click to drill into device)
  • Single-file HTML+JS, no CDN dependencies (works air-gapped)
  • localhost-only by default
  • No authentication (single-user local mode)
  • 100% local, zero telemetry

Distribution

  • pip install safecadence-netrisk (PyPI)
  • pipx install safecadence-netrisk[server] (global)
  • docker run ghcr.io/famousleads/safecadence-netrisk (containerized)
  • GitHub Actions composite action (uses: famousleads/safecadence-network-risk@v2.10.0)
  • SARIF output for GitHub Code Scanning integration

Why this exists

Network configuration auditors — AlgoSec, Tufin, FireMon, Tenable Nessus, Qualys VMDR, Rapid7 InsightVM — share three properties: they cost upwards of $50,000/year per license, they take 1-2 weeks of professional services to deploy, and they want your configuration data to flow through their cloud.

For 90% of the value those tools deliver, the architecture is overkill. Most audits flag the same handful of things every time: any/any firewall rules, missing logging, default SNMP communities, telnet still enabled, operating systems years past end-of-life. These are pattern-matchable from a static configuration file. They do not need a SaaS backend or a $50,000 license.

safecadence-netrisk is the open-source version. It's MIT-licensed. It runs 100% on the auditor's machine. It supports 14 vendors out of the box. It's installable with one command. There is no telemetry, no cloud sync, no signup. And it does things the commercial tools don't — toxic combinations, AI attack-path tracing, conversational chat with your fleet, multi-LLM consensus.


How it compares

Capability safecadence-netrisk v2.10 Tenable Nessus Qualys VMDR Rapid7 InsightVM AlgoSec
Discover everything on LAN ✅ ARP+mDNS+TCP+SNMP
CVE matching per device ✅ KEV-prioritized
Toxic-combination engine ✅ 10 patterns
AI deep-analyze per device ✅ BYOK, JSON-grounded Add-on $$ Add-on $$
AI attack-path tracing ✅ multi-hop chains
AI network architect review
Conversational chat with fleet
Multi-LLM consensus ✅ OpenAI + Anthropic
Compliance packs (SOC 2/PCI/HIPAA/NIST/CIS) ✅ all five
Continuous monitoring + alerts ✅ Slack/Teams/Email
Topology map ✅ force-directed Add-on Add-on
Force-directed graph drill-down ✅ double-click
Exec-grade PDF report ✅ inline
100% local, no SaaS
Docker container ✅ multi-arch
GitHub Actions integration ✅ official action
SARIF / Code Scanning output Add-on
Price Free, MIT-licensed $3,990/yr $2,800+/yr $2,000+/yr $50k+/yr

Documentation

Topic Where
CLI commands safecadence --help (18 commands available)
API endpoints http://127.0.0.1:8765/api/docs (after safecadence ui)
Local UI guide Run safecadence ui, read the in-app help text
Continuous monitoring safecadence watch --help
Configuration file syntax YAML rule packs in src/safecadence/data/rules/
CVE database format YAML in src/safecadence/data/cves/

Architecture

safecadence-netrisk/
├── core/             Vendor adapter framework, registry, schema
├── adapters/         Cisco IOS / NX-OS / ASA / Aruba / Arista / Juniper / Palo / Fortinet / etc.
├── engines/          Audit rule engine (regex + absent + custom)
├── discovery/        ARP / mDNS / TCP sweep / SNMP / OUI lookup
│   ├── lan_scan.py     LAN deep scan combiner
│   ├── snmp_probe.py   Pure-stdlib BER encoder
│   ├── categorize.py   Heuristic device classifier
│   ├── cve_match.py    Vendor+version → CVE lookup
│   ├── toxic_combinations.py  Compound risk detector
│   ├── ai_analyze.py   Per-device AI with grounded JSON
│   ├── ai_chat.py      Conversational AI
│   ├── attack_paths.py AI attack-path tracer
│   ├── ai_architect.py AI architecture reviewer
│   ├── threat_hunt.py  Live CISA KEV integration
│   ├── compliance_pack.py  Multi-framework evidence packs
│   ├── webhooks.py     Slack / Teams / Generic delivery
│   ├── email_digest.py Daily/weekly summary email
│   └── ...
├── enrichment/       CVE + EOL data refreshers
├── reports/          HTML / Markdown / JSON / DOCX / PDF renderers
├── ai/               Provider-agnostic LLM client (OpenAI / Anthropic / Ollama)
├── server/           FastAPI multi-tenant API mode (`safecadence api`)
├── ui/               Local single-user UI (`safecadence ui`)
│   ├── app.py        FastAPI app with 30+ endpoints
│   ├── templates/    Single-file HTML SPA, no CDN
│   ├── discover_store.py   Saved scan SQLite
│   └── asset_tags.py       Tag SQLite
├── storage/          SQLite + SQLAlchemy backends
├── security/         Encrypted vault for credentials
└── cli.py            18 CLI commands

Need help running it on your network?

SafeCadence offers fixed-scope remediation engagements. We use the same open-source engine you ran. The tool is and will stay free + MIT — our only revenue is doing the remediation work.

Email hello@safecadence.com → Audit-engagement details →


Contributing

PRs welcome — especially:

  • New vendor adapters (MikroTik, Ubiquiti, Meraki, Mist next)
  • Additional audit rules (drop YAML files in src/safecadence/data/rules/)
  • Toxic-combination patterns (add to src/safecadence/discovery/toxic_combinations.py)
  • Compliance framework mappings (add to src/safecadence/discovery/compliance_pack.py)

License

MIT — see LICENSE.

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

safecadence_netrisk-3.1.0.tar.gz (273.1 kB view details)

Uploaded Source

Built Distribution

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

safecadence_netrisk-3.1.0-py3-none-any.whl (331.2 kB view details)

Uploaded Python 3

File details

Details for the file safecadence_netrisk-3.1.0.tar.gz.

File metadata

  • Download URL: safecadence_netrisk-3.1.0.tar.gz
  • Upload date:
  • Size: 273.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.9.6

File hashes

Hashes for safecadence_netrisk-3.1.0.tar.gz
Algorithm Hash digest
SHA256 43fc5dea14548606567ff11a868e38155a2fc106b65626eea9d49a781598b3f8
MD5 18155d07bfc881e16b6f54f4e501f28a
BLAKE2b-256 a62dd09f47d50fe308c582cfc407d4ee6305ed4786b210c86d5c3557f4e38540

See more details on using hashes here.

File details

Details for the file safecadence_netrisk-3.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for safecadence_netrisk-3.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8064514babc7eeb7a2940b300e3c6833dd02733e369b24f99176b1406e664ba3
MD5 db04c658f38adee946994ecb651ef968
BLAKE2b-256 b5cd040ed5ebd9464a98ec2f155350ac939b2ec43c1d7a9f28788d48ad114ba0

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