目录
[1.1 渗透测试报告是什么?](#1.1 渗透测试报告是什么?)
[1.2 渗透测试报告的编写需要考虑以下几点:](#1.2 渗透测试报告的编写需要考虑以下几点:)
[1.3 一份优秀的渗透测试报告应该具备以下特点:](#1.3 一份优秀的渗透测试报告应该具备以下特点:)
[1.4 在编写渗透测试报告之前,需要进行一些准备工作:](#1.4 在编写渗透测试报告之前,需要进行一些准备工作:)
[1.5 渗透测试报告一般包括以下部分:](#1.5 渗透测试报告一般包括以下部分:)
[2.1 XhitReport](#2.1 XhitReport)
[2.1.1 项目地址](#2.1.1 项目地址)
[2.1.2 项目使用](#2.1.2 项目使用)
[2.1.3 报告生成示例](#2.1.3 报告生成示例)
[2.2 ShitReport](#2.2 ShitReport)
[2.2.1 项目地址](#2.2.1 项目地址)
[2.2.2 简介](#2.2.2 简介)
[2.2.3 背景](#2.2.3 背景)
[2.2.4 配置](#2.2.4 配置)
[2.2.5 基础测试](#2.2.5 基础测试)
[2.2.6 基础输出](#2.2.6 基础输出)
[2.2.7 log.txt](#2.2.7 log.txt)
[2.2.8 测试漏洞复现多图文](#2.2.8 测试漏洞复现多图文)
[2.2.9 如何使用](#2.2.9 如何使用)
1.前言
在日常的渗透测试过程中,我们在进行合法合规的进行渗透测试后,需要进行编写相应的详细的渗透测试报告来提交给客户或是审核人员,方便审核人员对漏洞进行复现和验证,当然,很多时候我们写的报告很多都是重复性的内容,尤其是相同的漏洞类型,像我自己之前在没有合适的工具之前都是通过手工将一些重复性的内容写好,然后进行替换,当然有了工具就不一样了,可以帮助我们节省很多时间来写报告,毕竟很多时候做项目的时候报告交的快慢就是金钱的衡量.
下面介绍两个我常用的报告生成工具,对我个人来说其实还是不能很好的满足我的需求,但是可以节省很多时间,需要工具的师傅,直接跳过前言部分.
1.1 渗透测试报告是什么?
渗透测试报告是渗透测试过程中的关键组成部分,它记录了测试的目标、方法和结果,为客户提供了关于安全风险和漏洞的重要信息。编写一份清晰、详细且易于理解的渗透测试报告对于客户与渗透测试团队之间的交流至关重要。
1.2 渗透测试报告的编写需要考虑以下几点:
- 报告流程和结构:包括测试的背景信息、漏洞摘要、渗透利用、测试结果和安全建议。
- 注意事项:避免过于笼统或模糊的描述,提供具体、可执行的安全建议,确保报告结构清晰,逻辑连贯。
- 检测过程:包括拟检测的项目、使用的工具或方法、检测过程描述、检测结果说明以及过程的重点截图。
- 工具和方法:选择合适的渗透测试工具和方法,可能包括开源工具、定制脚本或商业工具。
- 案例解析和参考资料:参考网络上的案例分析和实战经验文档,帮助理解渗透测试在实际环境中的应用。
1.3 一份优秀的渗透测试报告应该具备以下特点:
- 重点突出:报告一开始就应节选所发现的"重点漏洞",用直白的话写,让主管一目了然。
- 图表重于文字:尽量附图佐证,数据对比或汇总,采用列表或表格式编排,让阅读报告的人感觉条理清晰。
- 结果与建议:测试结果、弱点、漏洞务必要提出来,并给予修正建议,如果受测系统设置了不错的防护机制,也可以将该方式列入报告中。
1.4 在编写渗透测试报告之前,需要进行一些准备工作:
- 确定报告的目标和受众。
- 整理测试数据和分析结果。
- 确认漏洞修复情况。
- 确定报告的排版和格式。
- 确认报告的准确性和可靠性。
1.5 渗透测试报告一般包括以下部分:
- 漏洞描述。
- 漏洞验证。
- 漏洞分析。
- 风险评估。
- 修复建议。
- 测试结论。
在编写渗透测试报告时,还需要注意遵守法律和道德规范,保持客观真实,简明扼要,并针对受众编写,同时注意保密性。编写高质量的渗透测试报告,关键在于企业用户是否可以利用它来有效改善组织当前的网络安全态势。渗透测试报告是展示渗透测试结果的关键文档,提供了网络安全状况的全面概述、发现的漏洞以及解决建议。编写时应明确目的性、保证逻辑性、关注细节完整性、采用客观性、强调实用性,并重视报告的教育性.
2.工具介绍
2.1 XhitReport
2.1.1 项目地址
Coderrrr-400/XhitReport: 用于快速生成漏洞报告 (github.com)https://github.com/Coderrrr-400/XhitReport
2.1.2 项目使用
这个工具的话使用起来比较简单,就是打开下载的工具的文件夹,然后使用下面的命令,其中使用的这个工具是需要安装依赖的,但是我看到作者并没有给出.可以先看第二个工具,第二个工具是在这个工具的基础上二改的,可以先安装了第二个工具的依赖后,这个工具就可以正常使用了.或者自行安装依赖.
这个报告生成器的话,个人感觉比较适合在漏洞盒子以及教育src使用
python
python ShitReport.py
2.1.3 报告生成示例
1.用于快速生成漏洞报告
报告图示如图所示,可以填写相关的信息.如果需要将截图添加进去的话,需要进行截图后,点击读取截图,工具就会从剪切板中获取截图,截图获取如第二张图所示.
2.测试效果如下
最终生成的报告为word文2件,并且生成的工具的当前目录下,但是这个工具只支持写两个复现
2.2 ShitReport
2.2.1 项目地址
s1g0day/ShitReport: 渗透测试报告生成工具 (github.com)https://github.com/s1g0day/ShitReport
下面是作者自己对工具的一些介绍,相比第一个来说,确实完善了不少,更适合提交项目时的规范的渗透报告,以及提交CNVD时提交的复现报告,感觉都是不错的,或是生成后进行复制提交也是可以的,自己把需要完善的部分进行完善后,使用起来会很方便.
2.2.2 简介
基于Coderrrr-400 师傅项目二开,也是pyqt+chatgpt
练手项目。
2.2.3 背景
在试用多款渗透测试报告生成工具后终于放弃了,每个项目在安装或使用的过程中都存在一些瑕疵。
如果只关注报告而不关注格式,每个选项似乎都不错,各有千秋。遗憾的是,它们都无法完全匹配正在使用的模板。我曾考虑对其中一些项目进行二次开发,但对于我这个初学者来说,难度太大了。相比之下,Coderrrr-400师傅的项目对我来说比较简单直接,也更加可塑。虽然我不懂pyqt,但在chatgpt和Google的帮助下,二次开发的项目还是达到了预期效果。
2.2.4 配置
python
pip3 install requirements.txt
config.yaml
supplierName: '张三'
city: '郑州' # 自定义默认城市
unitType:
industry:
漏洞名称及修复建议配置格式,换行的目的是为了在word中也能换行
python
vulnerabilities:
弱口令:
1.使用多种字符组合的强密码,如大小写字母+数字+特殊字符。
2.用户密码中不要出现与用户名或者系统名相关的字符。
或
python
vulnerabilities:
弱口令: '1.使用多种字符组合的强密码,如大小写字母+数字+特殊字符。
2.用户密码中不要出现与用户名或者系统名相关的字符。'
2.2.5 基础测试
注: 图中所示为随便复制的测试数据,非实际漏洞
2.2.6 基础输出
xxx.docx
2.2.7 log.txt
日志信息
output/2024.05.28_output.txt
直接全选复制到excel表格中
2.2.8 测试漏洞复现多图文
可以多图文,相比之前的第一个工具来说确实便利了很多,毕竟测试的时候有一个漏洞就很容易出现多个漏洞
结果
2.2.9 如何使用
根据作者给出的,下载项目后,先在项目处安装依赖,作者其实给出了其中的start.bat文件,但是我经过尝试后发现无法使用,只能通过命令进行启动
PowerShell 7.4.2
bash
cd D:\Hack-Tools\Hack-tools\ShitReport
pip install -r requirements.txt -i https://pypi.doubanio.com/simple/
在当前目录下,启动命令行,然后使用下面的命令,出现下面的界面代表成功,如何对其中的内容进行修改按照作者给出的配置进行即可
python
python ShitReport.py
3.总结
对于日常测试过程中的生成报告工具做个总结和记录,帮助更多的朋友节省写报告的时间,专注于渗透测试或其他.