撰写发现
清晰且可执行的发现
撰写发现 是 CoddyKit 上的免费 Cyber Security Academy 课时。 这是第 3 节课,共 4 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 Cyber Security Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 Cyber Security Academy 课程共包含 4 节课。
优秀发现项的构成
发现项是渗透测试报告中体现价值的基本单元。优秀的发现项应当清晰、有证据支持且可执行。
读者应仅通过一条发现项就能理解问题、相信问题确实存在,并知道该怎么做。
发现项模板
请为每个发现项使用统一的模板。一致性能够建立信任,也便于比较各个发现项。
每个发现项都包含相同的固定部分。
Finding fields:
Title | Severity | Affected Assets
Description
Steps to Reproduce
Impact
Remediation
References (CWE/OWASP)编写标题
标题应在几个词内说明漏洞类别和位置。这是读者浏览时首先看到的内容。
- 较好:登录表单中的 SQL 注入
- 较弱:数据库问题
请具体明确,不要含糊其辞。
描述:是什么以及为什么
描述应在两到三句话内解释缺陷是什么以及为什么会存在。请以一名尚未见过该漏洞、但具备相应能力的工程师为对象进行说明。
请说明根本原因,而不只是症状。
The login endpoint concatenates the
username directly into a SQL query
without parameterization, allowing an
attacker to alter the query logic.复现步骤
请列出准确且带编号的复现步骤。团队中的任何人都应能够按照这些步骤操作并看到相同结果。
请包含请求、有效负载和观察到的响应。
1. Browse to /login
2. In the username field enter: admin'--
3. Enter any password
4. Submit the form
5. Observe: logged in as admin展示影响
影响回答了每位高管都会问的问题:所以呢?请将技术缺陷转化为业务后果。
- 对用户数据库的完整读取权限。
- 绕过任意账户的身份验证。
- 可能造成监管违规。
避免推测
请只陈述您已经证明的内容。如果您没有提取数据,就应说该缺陷允许提取数据,而不是说您已经窃取了记录。
未经验证的理论应明确标记为可能情况,而不是已确认事实。
令人信服的证据
请附上能够证明该发现项的最少证据:一组请求与响应,或一张带注释的屏幕截图。
请删除机密信息和真实个人数据。证据可以建立可信度;过多的证据则会掩盖重点。
Request: GET /api/users?id=1 OR 1=1
Response: [array of 4,812 user records]
(sample redacted)引用标准
请将每个发现项关联到公认的分类,例如CWE或OWASP 十大。
参考资料可以让客户独立研究该问题,也能表明您的工作有标准依据。
References:
CWE-89 Improper Neutralization of SQL
OWASP A03:2021 Injection为读者编写
请使用主动语态和简短句子,不要使用未作解释的术语。第一次使用缩写时,请先定义它。
请记住双重受众:摘要部分必须让管理人员看懂,步骤部分则必须满足工程师的需要。
常见错误
请避免以下常见的发现项编写错误。
- 直接将扫描器的原始输出复制为发现项。
- 没有清晰的影响说明。
- 步骤无法复现。
- 类似问题的严重性不一致。
快速检查
请测试您对编写发现项的理解。
回顾
您已经学会了编写清晰且可执行的发现项。
- 为每个发现项使用统一的模板。
- 使用具体的标题、根本原因描述和带编号的复现步骤。
- 将缺陷转化为业务影响。
- 只陈述您已经证明的内容,并删除证据中的敏感信息。
- 链接到 CWE 和 OWASP 参考资料。
接下来,您将学习如何提供有效的修复指导。
用 AI 导师学习 Cyber Security Academy — 免费
在浏览器中编写并运行真实代码,获得全天候 AI 导师的即时帮助,并在网页或应用中继续学习。
- 课程
- 76
- 课程
- 303
常见问题解答
「撰写发现」课时是免费的吗?
是的 — 「撰写发现」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 Cyber Security Academy 课程的其余内容,请升级到 CoddyKit PRO。 Cyber Security Academy 课程共包含 4 节课。
「撰写发现」这节课中我会学到什么?
清晰且可执行的发现 你通过在浏览器中直接运行的动手代码来练习 Cyber Security Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 Cyber Security Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 Cyber Security Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 3 节课,共 4 节。
「撰写发现」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 Cyber Security Academy 课中编写并运行代码吗?
能。每节 Cyber Security Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。