PentestGPT:AI赋能的渗透测试工具
PentestGPT是一款由大型语言模型(LLM)驱动的自动化渗透测试工具。它基于ChatGPT API构建,以交互式方式运行,旨在为渗透测试人员提供整体进度和具体操作的指导。
项目概述
PentestGPT的主要目标是自动化渗透测试流程。它能够解决易到中等难度的HackTheBox机器和其他CTF挑战。该工具运行在交互模式下,可以指导测试人员完成整个渗透测试过程,包括总体进度和具体操作步骤。
核心功能
- 自动化渗透测试流程
- 交互式操作指导
- 解决HackTheBox和CTF挑战
- 生成渗透测试报告
- 支持GPT-4和GPT-3.5等多种语言模型
- 可扩展以支持本地LLM模型
安装和使用
PentestGPT的安装非常简单:
- 使用pip安装:
pip3 install git+https://github.com/GreyDGL/PentestGPT
- 设置OpenAI API密钥:
export OPENAI_API_KEY='<your key here>'
- 运行连接测试:
pentestgpt-connection
- 启动工具:
pentestgppt --reasoning_model=gpt-4-turbo
使用时,PentestGPT的操作类似于msfconsole。用户可以通过各种命令与工具交互,如:
help
: 显示帮助信息next
: 输入测试结果并获取下一步操作more
: 获取当前步骤的更多详细信息discuss
: 与PentestGPT讨论quit
: 退出并保存日志
自定义和扩展
PentestGPT支持使用自定义模型端点和本地LLM。用户可以根据需要选择不同的推理模型和解析模型,甚至可以集成自己的模型。
报告生成
完成渗透测试后,PentestGPT会自动在logs文件夹中生成报告。用户还可以使用提供的脚本将日志转换为人类可读的格式。
开源和社区
PentestGPT是一个开源项目,欢迎社区贡献。项目遵循MIT许可证,鼓励用于教育目的,但不支持任何非法使用。
通过这个创新的工具,渗透测试人员可以借助AI的力量提高工作效率,同时也为安全研究提供了新的可能性。