vulpentestbench-results
收藏资源简介:
VulPentestBench 是一个用于评估自主 LLM 渗透测试代理的基准测试数据集。它基于 VulPentestBench 框架,该框架在隔离的 Docker 网络中启动 vulhub 的脆弱目标,每次运行在漏洞可达的位置注入一个新鲜的随机 canary 令牌,并基于经过验证的里程碑进行评分(代理必须通过目标导向的工具响应返回令牌,记忆答案无法通过)。数据集包含两个配置:results 和 steps。results 配置包含每个评估环境的最终结果(155 个环境,其中 106 个被成功解决,解决率 68.4%),字段包括环境 ID、类别、里程碑、时间戳、是否解决、达到的最佳等级、调用次数、耗时、难度、等级和原因。steps 配置包含参考代理的每一步工具网关调用记录,字段包括环境 ID、运行 ID、步骤号、调用类型(HTTP、执行、提交)、请求、响应、与上一步的时间差、首次达到各等级的时间点。数据集适用于 LLM 代理评估、渗透测试自动化研究、安全基准测试等任务。注意:数据包含针对故意脆弱目标的真实攻击载荷,但所有容器在评估后被销毁;环境 ID 对应 CVE,因此求解轨迹会暴露解决方案,用于代理评估时需注意污染。
VulPentestBench is a benchmark dataset for evaluating autonomous LLM penetration testing agents. It is based on the VulPentestBench framework, which launches vulnerable targets from vulhub in isolated Docker networks, injects a fresh random canary token at each run at a reachable vulnerability location, and scores based on verified milestones (the agent must return the token via goal-oriented tool responses; memorized answers cannot pass). The dataset contains two configurations: results and steps. The results configuration includes the final outcomes for each evaluation environment (155 environments, 106 successfully solved, success rate 68.4%), with fields including environment ID, category, milestone, timestamp, solved status, best achieved level, number of calls, time cost, difficulty, level, and reason. The steps configuration contains the record of each tool gateway call made by the reference agent, with fields including environment ID, run ID, step number, call type (HTTP, execution, submission), request, response, time difference from the previous step, and the time point when each level was first reached. The dataset is suitable for tasks such as LLM agent evaluation, penetration testing automation research, and security benchmarking. Note: The data contains real attack payloads targeting deliberately vulnerable targets, but all containers are destroyed after evaluation; environment IDs correspond to CVEs, so the solution trajectories expose the solutions, and attention should be paid to contamination when used for agent evaluation.
数据集概述
该数据集记录了自主 LLM 渗透测试智能体在 VulPentestBench 基准上的参照智能体运行结果与轨迹,用于评估 LLM 智能体在真实漏洞环境中的渗透测试能力。
基本信息
- 语言: 英语
- 许可证: MIT
- 数据类型: 文本生成
- 数据集规模: 1K < n < 10K
- 标签: 渗透测试、安全、智能体评估、LLM 智能体、网络安全
- 发布时间: 导出于 2026-09-05 15:20 UTC
任务背景
- 被评估的智能体: GLM-5.3 + Claude Code(自主 LLM 渗透测试智能体,无上下文启动)
- 基准平台: VulPentestBench,一个智能体评估框架,其工作机制如下:
- 在隔离的 Docker 网络中启动 vulhub 漏洞目标
- 每次运行注入一个随机的新金丝雀令牌(canary token)到漏洞可达位置
- 对经过来源验证的里程碑进行评分(令牌必须通过目标定向操作的工具响应返回,然后标志提交才会计数——记忆的答案无法通过)
快照统计
- 评估环境数: 155
- 已解决环境数: 106(解决率 68.4%)
- 单次解决的中位开销: 30 次工具调用 / 797 秒
- 作弊标志数: 0
文件结构与配置
数据集包含两个配置:
-
results(
results.jsonl)— 每个被评估环境的记录(去重后的最佳尝试):- 字段:
env_id(vulhub 的<category>/<CVE>格式)、category、milestone、ts、solved、tier(达到的最佳 L 层级)、calls、secs、difficulty(固定 1-10)、grade、reason
- 字段:
-
steps(
steps.jsonl)— 参照智能体每次工具网关调用的记录:- 字段:
env_id、run_id、step、kind(http/exec/submit)、request、response(完整记录文本,无导出上限;网关记录器裁剪的超 200 KB 字段标记为[recorder truncated])、secs_from_prev、first_tier_hits - 每个记录包含首次达到各层级(L1..L10,L10 表示完成里程碑)的步骤信息
- 字段:
加载方式
可使用 HuggingFace datasets 库加载:
python from datasets import load_dataset results = load_dataset("C0rk1/vulpentestbench-results", "results") steps = load_dataset("C0rk1/vulpentestbench-results", "steps")
注意事项
- 请求/响应中包含针对故意易受攻击目标的真实攻击载荷,均为所列 CVE 的标准公开 PoC,不涉及任何真实第三方系统
- 轨迹中可见的金丝雀令牌每次运行随机生成且已失效——每次运行的容器在评估后被拆除
env_id包含 vulhub CVE 名称,解决轨迹可能暴露解决方案;若将步骤数据用于智能体评估,应在检查后划分数据集(或过滤env_id)以避免数据污染- 本数据集仅包含结果数据,不重新分发 vulhub 镜像或环境文件(vulhub 采用 MIT 许可证,由 phith0n 创建)
许可证
数据集内容由 VulPentestBench 项目生成,采用 MIT 许可证。




