目录导航
PeTeReport简介
PeTeReport (PenTest Report)是一个旨在帮助渗透测试/红队,通过简化的报告,书面方式和产生的任务的开源应用程序漏洞的报告工具。
该工具专注于产品安全,可帮助安全研究人员和渗透测试人员提供详细的调查结果、附录、攻击路径并管理调查结果模板数据库,以避免在报告阶段浪费时间。
PeTeReport( PenTest Report )由Django和Python 3编写,目的是帮助渗透测试人员来管理发现库,写报告(使用Markdown),并生成不同格式的报告(HTML,CSV,PDF,Jupyter和Markdown)
特征
- 可定制的报告输出
- 可定制的报告模板
- 发现模板数据库
- 可以在结果中添加附录
- 可能性攻击树添加落叶来发现
- HTML 输出格式
- CSV 输出格式
- PDF 输出格式
- Jupyter Notebook 输出格式
- Markdown 输出格式
- CVSS 3.1 分数
- Docker安装
- DefectDojo集成
- 用户管理
工作流程

默认账号密码
- Administrator: admin/P3t3r3p0rt
- Viewer: viewer/v13w3r
安装方法
docker
环境
sudo apt install docker.io docker-compose
部署
- 克隆仓库
cd /opt
git clone https://github.com/1modm/petereport
cd petereport
- 自定义报告和配置
app/config/petereport_config.py
- 搭建环境
docker-compose up --build
- 转至https://127.0.0.1/
- 使用任何创建的admin/P3t3r3p0rt(管理员)和viewer/v13w3r(查看者)用户或配置文件中配置的用户凭据登录
- 更加努力
- 创建报告
Django安装
先决条件
PeTeReport 需要 Python ≥ 3.8。推荐安装需要pip
. 作为基本要求,需要以下软件包:
- Ubuntu/Debian:
sudo apt-get install python3-pip python3-venv build-essential
- OpenSuse:
sudo zypper install python3-devel gcc
- CentOS:
sudo yum install python3-devel gcc
环境
强烈建议在虚拟环境 (Pipenv) 中设置安装:
Pipenv
- Linux:
sudo apt-get install pipenv
- pip:
python3 -m pip install pipenv
- 苹果电脑:
brew install pipenv
依赖关系
Linux (ubuntu) 中最简单的方法:
sudo bash scripts/ubuntu_environment_install.sh
Latex
Linux:
sudo apt-get install texlive-full
苹果电脑:
brew remove basictex
brew cask install mactex
Pandoc
Linux:
sudo apt-get install pandoc
sudo apt-get install python3-pypandoc
苹果电脑:
brew install pandoc
brew install pandoc-citeproc
Eisvogel
python3 -m pip install pandoc-latex-environment
- 从发布页面下载最新版本的 Eisvogel 模板。
- 解压缩下载的 ZIP 档案并打开文件夹。
- 将模板 eisvogel.tex 移动到您的 pandoc 模板文件夹并将文件重命名为 eisvogel.latex。模板文件夹的位置取决于您的操作系统:
/Users/$USER/.pandoc/templates/eisvogel.latex
或/home/$USER/.pandoc/templates
PeTeReport
- 克隆项目并 cd 到 PeTeReport:
cd petereport/
- 创建一个新的虚拟环境并安装依赖项:
pipenv install
- 运行虚拟环境:
pipenv shell
- 转到 Django PeTeReport 应用程序:
cd app/
- 创建数据库:
python manage.py migrate
- 进行最新的数据库更改:
python manage.py makemigrations
- 超级用户admin/P3t3r3p0rt将被创建,但您可以创建一个新的超级用户:
python manage.py createsuperuser
- 填充 CWE 数据
python manage.py loaddata config/cwe-list.json
启动服务器
- 运行虚拟环境:
pipenv shell
- 转到 Django PeTeReport 应用程序:
cd app/
- 启动 Django 服务器:
python manage.py runserver
或python manage.py runserver 0.0.0.0:8000
- 转至http://127.0.0.1:8000/
- 使用任何创建的admin/P3t3r3p0rt(管理员)和viewer/v13w3r(查看者)用户或配置文件中配置的用户凭据登录
- 更加努力
- 创建报告
- 关闭并停止服务器:
Ctrl + C
升级 PeTeReport
- 如果服务器正在运行,请停止它:
Ctrl + C
- 通过 git: 拉取最新的代码库:
git pull
或下载源代码并替换文件。 - 设置任何其他依赖项:
pipenv install
- 运行虚拟环境:
pipenv shell
- 进行最新的数据库更改:
python manage.py makemigrations
- 进行最新的数据库更改:
python manage.py migrate
- 启动服务器:
python manage.py runserver
- 再努力一点
清洁 PeTeReport
- 如果服务器正在运行,请停止它:
Ctrl + C
- 运行虚拟环境:
pipenv shell
- 转到 Django PeTeReport 应用程序:
cd app/
- 运行更清洁:
python clean.py
- 进行最新的数据库更改:
python manage.py makemigrations
- 进行最新的数据库更改:
python manage.py migrate
- 启动服务器:
python manage.py runserver
- 再努力一点
配置
- 如果服务器正在运行,请停止它:
Ctrl + C
- 自定义报告和配置
app/config/petereport_config.py
- 启动 Django 服务器:
python manage.py runserver
或python manage.py runserver 0.0.0.0:8000
用户管理
用户模块便于管理应用程序中的用户和角色。有 2 个内置角色:管理员和查看者。
- 管理员角色具有完全权限访问
- 观众角色
- 项目:查看
- 报告:查看、生成输出
- 结果:查看
- 查找模板:查看
用户和角色列表

创建新用户

报告
报表模块方便了产品的管理。报告由以下定义:
- 产品
- 报告编号
- 报告标题
- 执行摘要
- 范围
- 超出范围
- 方法
- 推荐
- 报告日期
报告清单

创建新报告

报告详情

发现
调查结果模块有助于管理报告中的调查结果。结果定义为:
- 标题
- 状态
- 严重性
- CVSS 分数
- CWE
- 描述
- 位置
- 影响
- 推荐
- 参考
- 附录
- 攻击路径
调查结果清单

创造新的发现

从模板添加发现
可以从先前创建的模板列表中将结果添加到报告中。

从 DefectDojo 导入结果
我们可以从DefectDojo导入结果,首先我们需要编辑配置文件以添加 API 端点和我们的 DefectDojo 部署的 API 密钥。
编辑配置 app/config/petereport_config.py
DEFECTDOJO_CONFIG = {
'DefectDojoURL': 'https://demo.defectdojo.org',
'apiKey': 'Token Key' # Format Token Key
}
从 CSV 导入结果
可以按照下一个格式从 CSV 调查结果中导入:
// Comma-separated values (CSV) file format
"ID","Status","Title","Severity","CVSS Base Score","CVSS Score","CWE","Description","Location","Impact","Recommendation","References","Appendix","Appendix Description"
"2834q345-b24e-4ghf-r86d-ftue38af5480","Open","Finding 1","Low","3.7 (CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N)","3.7","73","Description","127.0.0.1","Impact","Recommendation","References","Appendix","Appendix Description"
CWE名单
创建发现时必须选择 CWE 以创建发现类别,供参考,Mitre 的下一个 CWE 列表已填充:

攻击树
安全决策树模块有助于管理可以链接到发现的攻击路径。攻击树定义为:
- 寻找
- 攻击树标题
- 攻击树定义
已实现漏洞或发现的攻击路径的可视化,以适应 Web 应用程序,该应用程序简化了安全混沌工程报告中所述的攻击决策树的构建:Deciduous
所以所有功劳都归功于@swagitda。如何/入门指南:https : //swagitda.com/blog/posts/deciduous-attack-tree-app/
此外,如果需要附加攻击路径规划器,我建议您查看:Walter:Attack Path Planner
攻击树列表

添加攻击树

详细文档查看如下链接
https://1modm.github.io/petereport/
样本报告
PDF样本









html样本









markdown样本报告





项目地址
GitHub:https://github.com/1modm/petereport
转载请注明出处及链接