关于 vulntel
vulntel 是面向安全研究人员和漏洞赏金 Agent 的托管漏洞情报 MCP 服务。其整理后的 CVE 数据支持按利用情况排序、核验漏洞声明、按机制搜索,并提供从已披露赏金报告提炼的攻击思路。
主要功能
- 01融合多个来源的整理版 CVE 数据
- 02依据 SSVC、KEV 和 EPSS 排序
- 03核验 CVE 声明与受影响产品
- 04按漏洞机制进行语义搜索
- 05结合版本与发行版回移补丁检查
- 06提供已披露赏金报告中的攻击思路
适用场景
- 01确定产品技术栈中的漏洞优先级
- 02在报告中引用前核验 CVE 声明
- 03跨产品查找机制相似的漏洞
- 04参考赏金案例指导人工测试
MCP 相关
向 MCP 客户端提供漏洞研究工具,包括 CVE 查询与核验、产品和版本检查、语义搜索、侦察,以及源自赏金报告的攻击思路。
配置
远程服务无需本地安装。选择你使用的客户端,复制配置或使用一键安装。
https://mcp.vulntel.com/mcpclaude mcp add --transport http com-vulntel https://mcp.vulntel.com/mcp{"mcpServers":{"com-vulntel":{"type":"http","url":"https://mcp.vulntel.com/mcp"}}}在 Cursor 中打开{"servers":{"com-vulntel":{"type":"http","url":"https://mcp.vulntel.com/mcp"}}}在 VS Code 中打开{"mcpServers":{"com-vulntel":{"type":"http","url":"https://mcp.vulntel.com/mcp"}}}{"mcpServers":{"com-vulntel":{"serverUrl":"https://mcp.vulntel.com/mcp"}}}命令在终端中运行;JSON 粘贴到对应客户端的 MCP 配置后重启。需要授权的服务会在首次连接时提示登录。
https://mcp.vulntel.com/mcp需要授权工具
详细介绍
vulntel
大多数 CVE 工具只是把原始数据交给你的 Agent。这个工具会根据实际利用情况为其排序,按漏洞机制查找漏洞,识别 Agent 编造的 CVE——还会从约 14,000 份公开披露的漏洞赏金报告中迁移攻击机制。
一个经过整理的托管 MCP 语料库:约 422,000 个 CVE,汇集 NVD + CISA KEV + FIRST EPSS + OSV/GHSA + CISA Vulnrichment (SSVC),另有从 约 14,000 份公开披露且已付赏金的漏洞赏金报告中提炼的机制层——每日更新。不是又一个实时 API 包装器。
免费。 无需密钥即可试用(九种工具,每个 IP 地址每天 25 次调用),然后获取密钥:输入电子邮箱,我们会将你的专属密钥发送给你。告诉我你在寻找什么。
为什么选择它,而不是下一个 CVE 包装器
大多数 CVE MCP 服务都是简单包装器:查询时,它们会同时调用相同的免费公共 API,并返回拿到的结果。它在以下六个方面有实质区别。
- 经过整理的内嵌语料库,而非实时代理。 通过身份图谱融合 NVD、OSV/GHSA 和 KEV 中的数据,每个漏洞仅有一条记录,并配有约 2,100 个经过厂商确认的产品别名及用于语义搜索的嵌入向量。本地查询,排序一致。
- 以 SSVC 作为优先级,而不只是 CVSS。 优先级以利用情况为先:CISA SSVC(活跃利用 / 可自动化 / 总体影响)、KEV 和 EPSS 共同决定 P1 至 P4 的排序。其他 MCP 包装器完全不包含 SSVC。
- 按机制搜索,而非关键词。 语义搜索能在不同产品中找到相同的漏洞类别。关键词工具在结构上无法做到这一点。
- 它会核查 Agent 的事实。
verify_cve_claim能发现编造的 CVE 和错误属性。随着 AI 幻觉生成的漏洞报告涌入分流环节,这一点目前至关重要,而实际上没有其他 CVE MCP 能做到。 - 考虑发行版回移植。 粘贴服务器标识(
OpenSSH_8.9p1 Ubuntu-3ubuntu0.10、Apache/2.4.62 (Debian)),每个 CVE 都会同时提供 Debian / Ubuntu / Alpine 跟踪器对该确切构建版本的判定和上游判定。只看上游的工具会把已打补丁的发行版主机误判为易受攻击。 - 厂商匹配准确,绝不返回虚假的零结果。 “GitHub Enterprise”会解析到正确的厂商,而不是所有包含“enterprise_server”的产品。无法解析的产品会返回
resolved: false并附上建议,绝不会默默返回0,让人以为“不受影响”。虚假的零结果是安全工具能给出的最糟糕答案。
AI 辅助安全的难点不在于发现 CVE,而在于分流、优先级排序和减少误报。这正是此工具要解决的问题。
以下内容均为实时服务的真实输出,仅为控制篇幅做了删减。
它会核查 Agent 的事实
最重要的差异化功能。你的 Agent 引用了 CVE-2025-99999:
verify_cve_claim("CVE-2025-99999")
-> exists: false "No record in NVD / OSV / GHSA. Likely hallucinated or not-yet-published."
或者它弄错了细节。声明:"CVE-2021-44228 是一个中危 Apache Struts 漏洞,而且没有被利用。”
verify_cve_claim("CVE-2021-44228", product="Apache Struts", severity="medium", exploited=false)
refuted "not exploited" -> in CISA KEV (added 2021-12-10)
refuted "severity medium" -> actual CVSS 10.0, P1
refuted "affects Apache Struts" -> no product matching "Apache Struts"
其他数据源只是把数据交给你的 Agent。这个工具会在错误内容进入报告之前告诉你 Agent 出错了。
优先级以利用情况为先(SSVC、KEV、EPSS),而非 CVSS
check_technology("GitLab") 会返回该产品的 792 个 CVE,去重后排序,让已遭利用的漏洞排在前面:
P1 KEV EPSS 99.8 CVE-2023-7028 account-takeover: password-reset email sent to an attacker address (CVSS 10)
P2 KEV EPSS 98.5 CVE-2021-39935 unauthenticated SSRF via the CI Lint API
P3 EPSS 99.7 CVE-2023-2825 unauthenticated path traversal, arbitrary file read (CVSS 10)
P3 EPSS 99.7 CVE-2022-2992 authenticated RCE via the GitHub import API (CVSS 9.9)
映射到多个厂商的名称会标记为 ambiguous(此处为 gitlab 与一个 jenkins 插件),并分别保留,绝不静默合并。随后,enrich_cve 会提供其中任一 CVE 的完整 SSVC 信息:
enrich_cve("CVE-2024-3400") PAN-OS GlobalProtect
P1 KEV CVSS 10.0 EPSS 99.95 unauthenticated command injection -> root RCE
SSVC exploitation=active automatable=yes technical_impact=total
Metasploit exploit/linux/http/panos_telemetry_cmd_exec (rank: excellent)
Public PoC 44 repos (h4x0r-dz 162 stars, W01fh4cker 90 stars, ...)
将侦察结果转化为排查顺序
hunt_plan(["craftcms 4.4", "nginx", "keycloak"]) 会按最易遭利用的漏洞为你的技术栈排序,并指出各组件历来容易出现的问题:
#1 craftcms 4.4 97 CVEs, 12 high-risk
recurring_loci CWE-94 code injection x7 (2 exploited in the wild) -> probe template / eval surfaces first
dig here
P1 KEV EPSS 99.8 CVE-2025-32432 unauthenticated RCE (CVSS 10) your 4.4 is AFFECTED, fixed in 4.14.15
P1 KEV EPSS 99.9 CVE-2024-56145 RCE when register_argc_argv is on AFFECTED, fixed in 4.13.2
#2 nginx HTTP/2 Rapid Reset CVE-2023-44487 (KEV)
#3 keycloak recurring_loci CWE-287 auth x12. OIDC request_uri SSRF CVE-2020-10770
它不只是列出 CVE,还会指出某个产品系列反复出现的漏洞类型,按实际遭利用情况排序,并告诉你自己的版本是否受影响。你该去哪里查,以及应该留意什么特征。
按机制跨产品搜索
search_vulns(cve_id="CVE-2021-44228"),也就是“还有哪些漏洞和 Log4Shell 类似”:
sim 0.88 CVE-2021-44832 Log4j2 JDBC Appender, JNDI LDAP RCE
sim 0.82 CVE-2022-40145 Apache Karaf, code injection via an attacker-controlled JNDI URL
sim 0.79 CVE-2022-34916 Apache Flume, JNDI LDAP RCE via a JMS source
同一种 JNDI 注入机制,出现在不同产品中。搜索关键词“log4j”永远找不到 Karaf 或 Flume。你也可以直接搜索某个概念:search_vulns("SAML SSO authentication bypass"):
P3 CVSS 9.1 CVE-2024-9487 GitHub Enterprise: SAML SSO bypass via signature verification
P3 CVSS 9.8 CVE-2025-25291 ruby-saml: auth bypass via a ReXML / Nokogiri parser differential
P1 KEV CVSS 9.8 CVE-2025-59718 Fortinet FortiOS / FortiProxy: signature-verification bypass
查看当前正在遭利用的漏洞
search_vulns(days=7),今天实时运行:
P1 KEV CVSS 10.0 CVE-2026-10520 Ivanti Sentry: unauthenticated OS command injection -> root RCE
P1 KEV CVSS 9.3 CVE-2026-50751 Check Point: IKEv1 auth bypass, remote-access VPN without a password
P2 KEV CVSS 8.8 CVE-2026-11645 Chrome V8: out-of-bounds read/write -> sandbox escape RCE
从漏洞披露到其在实际攻击中遭利用的中位时间如今按天计算,而非按月计算。上面的 Ivanti 漏洞在公开的同一周内就收到了 CISA 修复期限。2026-11-03 的 corpus_stats:约 422,800 个 CVE,约 1,770 条 KEV 记录,数据不到一天。这些数字仅代表某个时间点,每天都会变化,因此请自行调用 corpus_stats 获取实时数量,不要轻信本页上的数字。
从已披露的漏洞赏金报告中迁移攻击机制
除了 CVE 之外,该语料库还将约 14,000 份已披露且已支付奖金的 HackerOne 报告提炼为与产品无关的攻击机制——每个漏洞都抽象为 source → sink → trigger → preconditions,不再绑定于报告所针对的产品。其前提是:漏洞是一种可迁移的机制,而非某个产品的特性——因此,在一个技术栈上奏效的招数,可以成为下一个技术栈的检查清单项目。
find_attack_approaches(query="ssrf reaching cloud metadata")——找出成功迁移的人类操作,按新颖度排序,并为每项标注当前是否可在漏洞赏金计划中采取行动:
Reddit SSRF preview_url fetches an unfiltered URL → returns metadata program_active, pays
U.S. DoD SSRF /download-url?url= fetches AWS instance metadata program_active
Concrete CMS SSRF DNS-rebind bypass → AWS IAM creds from the metadata svc program_active
find_continuations(position=...)——将你在排查过程中累积的攻击者位置与真实报告中从类似位置采取的下一步操作相匹配。每个操作的状态都是UNVERIFIED,并附有要在目标上执行的decisive_check——这是一个合法操作,绝非已确认的漏洞。assist_submission(finding=...)——基于最接近的已付奖金先例,生成有依据的报告概要(有效性、新颖之处、升级处理方案),且所有引用的报告都会经过语料库验证(citations_grounded),避免夹带虚构先例。program_outcome_prior("hackerone:gitlab")——某个计划历来成功提交的漏洞类型,以及相对于基准比例的提升幅度(GitLab:SSRF 为 3.4×,SQLi 几乎从未成功)。
坦诚说明它的用途:它会为人工猎手提供线索和依据——呈现可采取的操作及相关先例。它不会替你找出漏洞;目标会决定该操作是否奏效,而这一步仍需由你执行。
核心要点:借鉴并执行机制的记忆库,而非 CVE 查询工具
其护城河在于无状态模型无法自行生成的三样东西,而这个语料库兼具三者:
- 长期跟踪——先验信息、随时间变化的趋势(Log4Shell 的受影响范围在发布 +1,200 天后仍持续扩大)、评分稳定性。你的模型只有训练截止时的快照;这里有的是变化轨迹。
- 大量见过——每种已披露的机制和 CVE 机制都已嵌入,因此同一种漏洞类型可以迁移到模型永远无法关联的不同产品:Log4Shell 的 JNDI 查询机制 → Apache Karaf、Flume;曾在 Reddit 获得奖金的 SSRF → 在下一个目标上尝试的操作。
- 实时融合侦察结果——
observe会从主机的 JS 包中还原其实际后端,并当场与语料库关联。
最大的忌讳是把它当成严重性数字检查器。它的作用是将经验证的机制迁移到你的目标上并执行——或者阅读修复方案,在花费一次探测之前证伪某种可能性。
让你的 Agent 主动使用它——它不会自行调用
如果放任不管,Agent 会根据训练数据作答:信息过时,还会在压力下编造 CVE 编号。将这套操作流程粘贴到 Agent 的规则中(CLAUDE.md、Cursor/Windsurf 或系统提示词):
You have the vulntel MCP. Your own CVE knowledge is a guess to be verified — prefer the corpus.
Operating loop, in order:
1. Choosing / scoping a bounty program → new_in_scope (what just entered a program's scope, re-adds filtered) and program_outcome_prior (which bug classes have actually PAID here).
2. A live host → observe (a cache miss returns status="scanning"; call again with the same host until "ready"). Mine endpoints[], recurring_loci, the CVE join, not just two fields.
3. A product + version → check_technology / hunt_plan (dig-order + the recurring CWE loci).
4. Before asserting ANY CVE / "affects X" / "severity Y" / "exploited" → verify_cve_claim. Never cite from memory.
5. Feasibility of one CVE → enrich_cve; read the MECHANISM (POST vs GET, auth-required) to judge whether it chains. How it was fixed in the wild, or who vendored the vulnerable line → search_public_code (raw hits; read them).
6. Hunting a class → find_attack_approaches for the transferable move; RUN it on the target, don't cite it. Loop with a growing tried=.
7. Stuck / messy position → find_continuations(position) for the by-step move; then search_vulns that class to see whether it recurs in this stack.
8. Submitting → assist_submission; EXECUTE the techniques it transfers (referrer differential, key-reuse breadth), then file.
9. Before trusting a "nothing found" → corpus_stats (corpus size and data age).
Above all: a finding isn't a finding until a cheap check that would kill it has failed to.
它会给出行动方案和先例;由目标决定哪些内容能通过验证。 最后一条规则体现了这个产品的核心理念——每个工具都自带一个否决检查(verify_cve_claim 的反驳结果、UNVERIFIED + decisive_check、ambiguous、citations_grounded),因此 Agent 绝不会把狭窄的信号当成绿灯。
免费连接
claude mcp add --transport http vulntel https://mcp.vulntel.com/mcp \
--header "Authorization: Bearer <YOUR_KEY>"
也可使用任意 MCP 客户端(mcp.json):
{
"mcpServers": {
"vulntel": {
"type": "http",
"url": "https://mcp.vulntel.com/mcp",
"headers": { "Authorization": "Bearer <YOUR_KEY>" }
}
}
}
先试试不提供密钥: claude mcp add --transport http vulntel https://mcp.vulntel.com/mcp。13 个工具中有 9 个每天可按 IP 地址调用 25 次,每个回答都会说明剩余调用次数。免费密钥可将限额提升至每分钟 60 次调用,并解锁 observe、new_in_scope、assist_submission 和 search_public_code。请参阅下文的获取密钥。
13 个工具
CVE 情报:
| 工具 | 输入 | 返回内容 |
|---|---|---|
check_technology | 产品(可选提供版本和供应商),或服务器横幅 | 对 NVD CPE + OSV 中的 CVE 去重并排序,标记歧义;根据 Debian / Ubuntu / Alpine 横幅给出发行版构建版本判定 |
hunt_plan | 已完成侦察的技术栈 | 每个组件的探查顺序,以及常见漏洞类别(CWE)所在位置 |
enrich_cve | CVE 编号 | 完整档案:CVSS、KEV、EPSS、SSVC、受影响情况、Metasploit + 实时 PoC 仓库 |
verify_cve_claim | CVE + 声称的属性 | 对每项声明给出 supported / refuted / unverifiable 结果及证据 |
search_vulns | 概念、种子 CVE 或时间范围(可选提供产品) | 关键词与语义融合搜索;查找种子 CVE 在不同产品中的同机制漏洞;或搜索近期危险时间范围内的漏洞(新发布或新加入 KEV 的漏洞) |
observe | 主机 | 实时侦察:从首页和 JS 包中提取技术栈 + 端点,并与语料库关联,生成探查顺序 |
search_public_code | 精确的代码字符串 | 出现该代码的公开仓库(仓库 / 文件 / URL) |
corpus_stats | — | 语料库规模和数据新鲜度 |
漏洞赏金机制迁移(基于约 14k 份已公开报告):
| 工具 | 输入 | 返回内容 |
|---|---|---|
find_attack_approaches | 目标 / CVE / 漏洞类别 | 可迁移的攻击机制,按新颖度排序,并提供实时项目可操作性信息 |
find_continuations | 你在狩猎过程中的当前攻击者位置 | 真实报告从该位置采取的下一步行动,每项均标记为 UNVERIFIED,并附有决定性检查 |
assist_submission | 漏洞报告草稿 | 有依据的提交摘要 + 升级处理手册,并带有引用校验(citations_grounded) |
program_outcome_prior | 漏洞赏金项目 | 历史上在该项目中成功的漏洞类别,以及相对于基础比率的提升幅度 |
new_in_scope | 时间范围(可选提供平台、项目、资产类型) | 刚加入项目范围的资产(HackerOne、Bugcrowd、Intigriti、YesWeHack),过滤掉重新添加和重命名的资产,并附上缓存的技术栈、仓库公告和项目已公开的历史信息 |
它会提供事实、经过排序的背景信息和可迁移的先例——绝不会提供漏洞利用或载荷。由你的 Agent 负责推理;由目标决定哪些内容能通过验证。
完整参考——每个工具的所有参数、响应字段和实时示例,见 TOOLS.md。
使用它进行狩猎:技能 + 手册
两份采用 MIT 许可证的配套文档可将语料库转化为成功提交的发现,而不只是查询 CVE:一份独立完整的 Claude 漏洞赏金狩猎技能(将文件夹放入 ~/.claude/skills/,在询问“hunt for bugs” / “is this exploitable”时即可加载),以及一份内容更深入、按需使用的 MCP 手册(介绍各工具的注意事项、构思流程和验证模式)。两份文档都可独立使用:参见 bug-bounty-hunting/。
它不是什么
它不是扫描器,不是漏洞利用工具,也不能替代 SBOM / SCA。它是用于 AI 辅助安全工作的依据、优先级排序和事实核查层。
获取密钥
免费。 前往 mcp.vulntel.com/signup,输入你的邮箱,我们会将个人密钥发送给你。想直接咨询?请发送邮件至 [email protected],说明你的工作内容(漏洞赏金、渗透测试、研究)。密钥按用户分配,可追溯且可撤销。
仅用于经授权的安全研究和漏洞赏金工作,且只能针对你获准测试的目标。该服务返回事实信息,而非攻击;输出仅用于辅助决策,不能替代你自己的验证。
© 2026 rozetyp。保留所有权利。本项目不开源;请参阅 LICENSE。
评论
一个开放协议,规定了 AI 应用如何以统一方式连接外部工具与数据源。客户端负责与模型对话,MCP 服务负责提供工具、资源和提示模板,两者通过标准消息通信,同一个服务可以被不同客户端复用。