以 AI 为核心的外部攻击面评估,具备持续发现、基于证据的漏洞验证以及开发者代理 MCP 集成。
cvENGINE 会自动发现并测绘你面向互联网的资产,对发现的每项服务和版本进行指纹识别,并告诉你当今被利用的 CVE 中哪些真正影响了你,然后用安全的只读检查复现它所能复现的部分。企业级攻击面管理,无许可费用,无按资产定价,且完全开源。
攻击面工具发现资产。漏洞扫描器发现缺陷。威胁情报源发现 CVE。cvENGINE 将这三者作为一个持续循环运行,交给你的是结论,而不是一堆告警。它回答那个唯一重要的问题:当今的漏洞中,哪些正活跃在我拥有的资产上,我能否复现它们?
发现。 bbot 子域名和资产发现,支持被动、标准和深度模式(深度模式下带截图)。证书透明度监控会将新主机名直接拉入评估。目标可以是域名、IP、CIDR 范围或 URL,按组织和项目批量添加。每个顶级域名每周都会进行一次深度扫描。
理解。 每台主机一条记录:端口、服务、产品、版本、操作系统、横幅、TLS 和技术,来自 nmap 和 nuclei。naabu 会在 nmap 进行指纹识别之前扫描每个地址的所有端口,另外还会在后台逐个主机扫描全部 65,535 个端口,以捕捉其间发生的任何变化。Web 路由检查会标记每条路由为开放、登录、需要会话、SSO 或重定向。针对 Redis、Memcached、PostgreSQL、Elasticsearch 和 CouchDB 的暴露检查,无需登录即可得到响应。电子邮件和域名卫生:SPF、DKIM、DMARC、CAA、MTA-STS、DANE、DNSSEC 和 TLS。
优先处理。 来自 CISA KEV、ENISA EUVD、Metasploit、Exploit-DB、EPSS、CVSS 以及可选的 VulnCheck KEV 的火、烟与冰评级。为每台主机给出 0 到 100 的评分,并显示评分理由。对每项发现进行 AI 分诊,归类为已确认、可能、需要验证、可能误报或不适用。接入你自己的 AI,使用你自己的 API 密钥(Anthropic、OpenAI、OpenRouter)或运行在你自己硬件上的模型(Ollama、vLLM),每三小时进行一次审查,按项目排队下一轮分诊、验证或重新扫描,并根据实际测量结果调整扫描器并发数。
验证。 自动只读验证:经过审核的 nuclei 模板、单端口 nmap 检查、banner 探测或数据库检查,每项都会记录其运行的确切命令。对任何 CVE 匹配项点击 立即验证。当不存在模板时,AI 会起草一个模板,且在有人批准之前,它绝不会在你的主机上运行。可选的自动触发(默认关闭)会在订阅源推送新 CVE 时,在匹配的主机上对其进行测试。
运营。 像搜索 Shodan 一样搜索每台主机、端口、banner 和发现:port:3389 -host:vpn、tech:"apache tomcat" sev:high、ip:203.0.113.0/24 product:nginx(搜索)。实时仪表盘、AI 活动日志,以及带有并排截图差异对比的变更页面。重新扫描、固定、排除或归档任意主机,并记录其所有者和关键性。组织、项目、角色(管理员、用户、审计)、所有项目视图、两步登录、IP 允许列表和审计日志。REST API、MCP 服务器和 OpenAPI 规范,使智能体在相同权限下工作。面向漏洞猎人的漏洞赏金工作台:浏览 HackerOne、Bugcrowd、Intigriti 和 YesWeHack 的项目与范围,将扫描器指向范围内的目标,并根据其发现起草报告。在管理员启用之前处于关闭状态。如果你不想盯着仪表盘,可通过 Slack、Discord、Telegram 和 Lark 接收告警。一个开关即可暂停所有扫描。内存感知调度可保持小型服务器健康运行,更新会先排空正在运行的工作,或在每次新提交时自动部署。
自带 AI。 Anthropic、OpenAI、OpenRouter、Ollama 或 vLLM,密钥以加密方式存储。即使没有模型,cvENGINE 仍能发现、扫描、匹配 CVE 并验证发现。AI 则增加了分诊、定向扫描和模板起草功能。
cvENGINE 立足于优秀的开源工作之上。完整的致谢和许可证见 THIRD-PARTY.md。
| 扫描器 | bbot 资产发现、nuclei 及其模板、nmap、naabu、gowitness 截图、针对 WordPress 的 WPScan、aardwolf RDP 截图、node2shell 检测 |
| 漏洞利用情报 | CVE 数据源 cve.now、CISA KEV、ENISA EUVD、FIRST EPSS、Exploit-DB、Metasploit、VulnCheck KEV、CVE List V5 |
| 回溯移植与证书数据 | OSV、Debian 安全跟踪器、crt.sh |
| 电子邮件安全检查 | 改编自 MailFail |
| 漏洞赏金数据 | bounty-targets-data、Bugcrowd VRT |
| AI | Anthropic、OpenAI、OpenRouter、Ollama、vLLM,通过 Model Context Protocol 接入 |
| 平台 | Django、Celery、PostgreSQL、Redis、nginx、Gunicorn、WeasyPrint、VivaGraphJS、Geist |
添加一个目标后,cvENGINE 会为其运行一条流水线。每个扫描器在时间窗口内对每台主机只运行一次,因此重复扫描依然保持快速。
flowchart LR
T(["Add a target<br/>domain, IP, CIDR, URL"])
subgraph FIND["1 FIND"]
direction TB
D["Discovery<br/>bbot"] --> I["Inventory<br/>nmap, naabu"]
end
subgraph PROBE["2 PROBE"]
direction TB
X["Exposure checks<br/>databases, RDP screenshot"] --> N1["nuclei<br/>technology pass"] --> R["Web route<br/>checks"] --> W["WPScan<br/>node2shell, opt-in"]
end
subgraph MATCH["3 MATCH"]
direction TB
C["CVE correlation"] --> N2["nuclei<br/>AI-targeted pass"]
end
subgraph DECIDE["4 DECIDE"]
direction TB
A["AI triage<br/>and validation"] --> O["Changes, host score,<br/>dashboard, API, alerts"]
end
H["Hygiene<br/>TLS, SPF, DKIM, DMARC, CAA"]
T --> FIND --> PROBE --> MATCH --> DECIDE
DECIDE -.-> H
style FIND fill:#e8f1ff,stroke:#3b82f6,color:#0b3b8c
style PROBE fill:#f1eaff,stroke:#8b5cf6,color:#3b1d8c
style MATCH fill:#fff4e0,stroke:#f59e0b,color:#7a4a00
style DECIDE fill:#e6f7ec,stroke:#22c55e,color:#0b5a2a
linkStyle default stroke:#555,stroke-width:2px
classDef start fill:#111,stroke:#111,color:#fff
classDef step fill:#fff,stroke:#444,color:#111
classDef out fill:#fff,stroke:#16a34a,stroke-width:2px,color:#111
class T start
class D,I,X,N1,R,W,C,N2,A step
class O out
class H step
与此同时,CVE 数据源按自己的计划运行: