教怎样写好一份“漏洞报告”

写好报告

漏洞赏金猎人的工作不仅仅是寻找漏洞;它还向组织的安全团队解释它们。如果您提供一份写得很好的报告,您将帮助与您合作的团队重现漏洞利用,将其分配给适当的内部工程团队,并更快地解决问题。

商业化的报告模板是一个不错的形式,但比它更出色的是,观察与思考。

从工作流程的角度来说,漏洞管理与账面核对也非常重要。一个组织如果长时间接收到报告,那么面临到的问题一定是一些个性化的。比如,漏洞管理过程中,命名的规范直接导致这个能否一眼看出是否重复提交,是否易于管理与记账,是否存在数据之间的关联与匹配性。

文档名称规范化:XXX平台(hackerone)-XXXX编号。
文档名的规范化,保证组织与众测平台之间的唯一性,不会出现这个报告聊成了其他报告。

内容标题规范化:XXX项目或者应用-XXX部门或者元数据-XXX漏洞。
价值性于一份报告在手就能看清所有资产,极大的帮助组织推动报告的分发到负责人手中。

内容标题追加:XXXX编号
方便复制粘贴,不需要再关闭文档,然后右键文档复制编号记账。

您不必中规中矩的模仿任何报告,以下例子是给您一个良好的借鉴,因地制宜的修改自己报告。

【技术学习】

第 1 步:制作描述性标题

优秀漏洞报告的第一部分总是一个描述性的标题。目标是用一句话概括问题的标题。理想情况下,它应该允许安全团队立即了解漏洞是什么、发生的位置以及潜在的严重性。为此,它应该回答以下问题:您发现的漏洞是什么?它是否是众所周知的漏洞类型的实例,例如 IDOR 或 XSS?您在目标应用程序中的何处找到它?例如,而不是像“关键端点上的 IDOR”这样的报告标题,使用“https://example.com/change_password 上的 IDOR 导致所有用户的帐户接管”之类的。您的目标是让阅读您的报告的安全工程师对您将在其余部分讨论的内容有一个很好的了解。

漏洞内容标题追加:XSS漏洞,SQL注入,信息泄露或者IDOR等。
漏洞内容的核心价值观在于,组织易于复现与确认。能复现能观察就是说服组织接收最好的方式。
比如:1.目标URL,测试账号 张三/密码 2.点击UI界面的忘记密码 3.bp中发现未授权的API(并截图) 4.重放API发现信息泄露 5.建议:对API做验证和授权。
闭环了兄弟们,这个报告解决了组织从哪里开始复现,观察哪里,危害在哪,行云流水。

第 2 步:提供清晰报告摘要

此部分包含您无法在标题中传达的所有相关详细信息,例如用于攻击的 HTTP 请求参数、您如何找到它等。以下是有效报告摘要的示例:https://example.com/change_password 端点采用两个 POST 正文参数:user_id 和 new_password。对此端点的 POST 请求会将用户 user_id 的密码更改为 new_password。此端点不验证 user_id 参数,因此,任何用户都可以通过操作 user_id 参数来更改其他任何人的密码。一份好的报告摘要是清晰简洁的。它包含了解漏洞所需的所有信息,包括错误是什么、发现错误的位置以及攻击者在被利用时可以做什么。

并非每一个漏洞,组织都能成功的复现,比如IOS,安卓的证书绕过等,它们即有可能在您测试时,使用了一到两个实体机器,并root了一些权限。因此,报告中如果出现复现依赖与环境部署,是您独有的优势之一,为职业化,交互性,商业化,营销化,达不溜化建立了多个良好的发展之路。

漏洞内容的核心价值观在于,组织易于复现与确认。
考虑到组织接收人员的整个大背景,最好从实施开始描述。
比如: 漏洞内容标题:反序列化导致RCE漏洞

1.复现依赖:需要自动化利用工具Ysoserial (使用上类似于sqlmap)
需要下载Ysoserial (https://github.com/frohoff/ysoserial/)测

  • 0
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
当然,我可以为您提供有关静态分析的程。静态分析是一种在不执行代码的情况下对代码进行分析的方法,它可以帮助开发人员发现潜在的错误、安全漏洞和不规范的代码。以下是一个简单的静态分析程: 1. 了解静态分析的概念:静态分析是指对代码进行分析,而不需要实际运行它。它可以通过检查代码的结构、语法和语义来发现潜在的问题。 2. 选择合适的静态分析工具:有许多静态分析工具可供选择,例如Pylint(用于Python)、ESLint(用于JavaScript)和FindBugs(用于Java)。根据您使用的编程语言,选择适合您项目的工具。 3. 安装和配置工具:根据所选工具的文档,安装并配置它。通常,您需要将工具集成到您的开发环境中,并设置一些配置选项。 4. 运行静态分析:使用所选的工具来对您的代码进行静态分析。这通常涉及运行命令行命令或使用 IDE 插件。 5. 解读分析结果:一旦静态分析完成,工具将生成一份报告,其中包含潜在的问题和建议的修复。阅读和理解这些报告,以便了解代码中的问题和改进的机会。 6. 修复问题:根据报告中提供的建议,对代码进行修改并修复潜在的问题。这可能涉及更改代码的结构、修复错误或重新编不规范的代码。 7. 定期运行静态分析:静态分析应成为您日常开发流程的一部分。定期运行静态分析工具,以确保代码的质量和可靠性。 请注意,这只是一个简单的静态分析程概述。具体的实施步骤可能因工具和项目而异。建议您查阅所选工具的文档,以获取更详细的指南和示例。希望这个简要的程能帮助您入门静态分析!如果您有任何进一步的问题,请随时提问。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值