渗透测试自动化生成报告——ExportReport

Git仓库:

https://github.com/Potato-py/ExportReport

0x01 概述:

  • 本项目用于自动化生成报告。可根据项目需求,通过简单的提取变量来自定义报告模板。内附常见扫描器API/原报告(awvs、xray、goby)数据提取模块,可直接生成全新的自定义报告。
  • 对有复杂的功能需求时,适用于有Python基础的人使用
  • 本项目内附二次开发所用的资料文档,欢迎各位提Pull Request。

在这里插入图片描述

  • This project is used for automatic generation of reports. According to the project requirements, you can customize the report template by simply extracting variables. The attached common scanner API/original report (awvs, xray, goby) data extraction module can directly generate new customized reports.
  • For complex functional requirements, is suitable for people with Python foundation to use.
  • The project is attached with the data and documents used for the secondary development. Welcome to pull requests.

适用场景:

  • 适用于[安服仔]、[渗透仔]、[SRC仔]:常见漏扫工具扫描完毕后,一键导出项目报告
  • 适用于[漏扫开发仔]:将漏扫结果导出自定义格式化报告

0x02 目录架构:

  • tool[dir]:常见工具报告\API数据提取模块目录;
  • reportDemo[dir]:报告模板目录;
  • testReport[dir]:测试使用的awvs、xray、goby等原报告目录(内容可删除);
  • result[dir]:输出结果目录;
  • img[dir]:wordDemo资源加载图片、readme文档测试图片目录(测试图片可删除);
  • refer[dir]:二开参考数据目录;

0x03 开始使用:

1、安装三方包:

  • 执行命令:pip install -r requirements.txt

2、配置对应API认证Key/原报告文件路径:

  • config.ini

3、自写漏扫接入使用方法:

from wordReport import *

  targets_info = 目标信息(格式可参考./refer/xxx_targets_Demo.txt)
  vulns_info = 漏洞信息(格式可参考./refer/xxx_vulns_Demo.txt)
  demo = 报告模板 【默认使用:./reportDemo/reportDemo.docx】
  out = 输出文件路径 【默认:./result/{项目名称}渗透测试报告_{'生成时间'}.docx】

  reportWord = Report(targets_info, vulns, demo, out)
  reportWord.create()

4、常见工具导出报告数据提取,形成新报告:

  • python drawReport.py -m [api_awvs/html_awvs/html_goby/html_xray] -d ./reportDemo/reportDemo.docx -o ./result/报告名称.docx
  • 例如:python drawReport.py -m html_awvs

在这里插入图片描述

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-8WfnofJr-1678184032067)(/img/2.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-jHKh9VL9-1678184032068)(/img/3.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Ax5U2P0X-1678184032068)(/img/4.png)]

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-6olv7kwy-1678184032068)(/img/5.png)]

5、多款工具报告提取后形成新报告:

  • 请修改drawReport脚本,将多个get_xxx_xxx_data获取到的targets_info, vuln_info对应组合形成新的targets_info, vuln_info,最后调用
    reportWord = Report(targets_info, vuln_info)
    reportWord.create()
  • 因为会涉及不同数据直接格式略有不同,作者懒,所以没写,等着闲人pull request

0x04 二改调用三方API/html提取请看以下内容:

1、html_xray脚本二改可参考的数据文档:

  • ./refer/html_xray_data.txt】:为xray页面提取出来的漏洞信息

2、api_awvs脚本二改可参考的数据文档:

  • https://个人awvs地址:3443/Acunetix-API-Documentation.html
  • https://www.sqlsec.com/2020/04/awvsapi.html
  • ./refer/api_awvs_vluns_Demo.txt】:为apiReport.py获取awvs的【漏洞数据】结果例子
  • ./refer/api_awvs_targets_Demo.txt】:为apiReport.py获取awvs的【目标数据】结果例子

3、html_awvs脚本二改可参考的数据文档:

  • ./refer/html_awvs_data.txt】:记录awvs生成的html中加密的漏洞及目标信息
  • ./refer/html_awvs_new_data.txt】:html_awvs_data.txt解密后的数据

4、html_goby脚本二改可参考的数据文档:

  • 由于goby导出的文档中的数据太少,我将一些必要的做了默认处理(如:开始时间和结束时间)
  • ./refer/html_goby_target_data.txt】:为apiReport.py获取goby的【目标数据】结果例子
  • ./refer/html_goby_vulns_data.txt】:为apiReport.py获取goby的【漏洞数据】结果例子

5、api_nessus脚本编写请参考链接(注意个人版不支持调用API):

  • https://个人nessus地址:8834/api

0x05 更新贡献:

##Thank them for pull request into this project.

  • ‘html_goby.py’ was written by ZhangRT.
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

土豆.exe

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值