前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >PentestGPT:一款由ChatGPT驱动的强大渗透测试工具

PentestGPT:一款由ChatGPT驱动的强大渗透测试工具

作者头像
FB客服
发布2023-08-08 12:51:17
7910
发布2023-08-08 12:51:17
举报
文章被收录于专栏:FreeBuf

关于PentestGPT

PentestGPT是一款由ChatGPT驱动的强大渗透测试工具,该工具旨在实现渗透测试任务执行过程的自动化。该工具基于ChatGPT实现其功能,允许广大研究人员以交互式的方式使用,并指导渗透测试人员进行渗透测试任务的总体进度调控并执行指定操作。

除此之外,PentestGPT还能够用于HackTheBox和CTF挑战等安全研究场景。

工具安装

PentestGPT当前支持以ChatGPT和OpenAI API作为后端运行,我们可以选择其中一个来使用。当前开发人员也正在添加自定义本地LLM模块的支持,如果你想要稳定运行以及较好的性能,建议使用OpenAI API。

首先,我们可以使用下列命令将该项目源码克隆至本地:

代码语言:javascript
复制
pip3 install git+https://github.com/GreyDGL/PentestGPT
(向右滑动,查看更多)

如果你打算使用ChatGPT作为后端,首先则需要获取Cookie来访问ChatGPT会话:

代码语言:javascript
复制
$ pentestgpt-cookie
export CHATGPT_COOKIE='<your cookie here>`
(向右滑动,查看更多)

复制下列命令并在命令行工具中运行:

代码语言:javascript
复制
export CHATGPT_COOKIE='<big-string-you-shall-get-from-the-previous-command>'
(向右滑动,查看更多)

然后使用下列命令测试连接:

代码语言:javascript
复制
pentestgpt-connection

最后使用下列命令运行工具即可:

代码语言:javascript
复制
pentestgpt

如需使用OpenAI API,则需要先使用下列命令导出API密钥:

代码语言:javascript
复制
export OPENAI_KEY='<your key here>'

然后使用下列命令测试连接:

代码语言:javascript
复制
pentestgpt-connection

如需验证连接配置是否正确,在运行上述测试命令后,你将会看到如下所示的输出样例(与ChatGPT的连接会话样例):

代码语言:javascript
复制
1. You're connected with ChatGPT Plus cookie.

To start PentestGPT, please use <pentestgpt --reasoning_model=gpt-4>

## Test connection for OpenAI api (GPT-4)

2. You're connected with OpenAI API. You have GPT-4 access. To start PentestGPT, please use <pentestgpt --reasoning_model=gpt-4 --useAPI>

## Test connection for OpenAI api (GPT-3.5)

3. You're connected with OpenAI API. You have GPT-3.5 access. To start PentestGPT, please use <pentestgpt --reasoning_model=gpt-3.5-turbo --useAPI>
(向右滑动,查看更多)

需要注意的是,ChatGPT的Cookie解决方案可能不是非常稳定,开发人员也一直在努力尝试设计更好的解决方案。

工具使用

代码语言:javascript
复制
pentestgpt --args

可选参数

--reasoning_model:设置需要使用的推理模型; --useAPI:设置是否需要使用OpenAI API;

使用样例

代码语言:javascript
复制
代码语言:javascript
复制
pentestgpt --reasoning_model=gpt-4
代码语言:javascript
复制
pentestgpt --reasoning_model=gpt-4 --useAPI
代码语言:javascript
复制
pentestgpt --reasoning_model=gpt-3.5-turbo --useAPI
代码语言:javascript
复制
(向右滑动,查看更多)

报告和日志

渗透测试完成之后,工具将在logs目录中自动生成一份测试报告。

我们也可以使用下列命令让工具生成一份可读格式的报告:

代码语言:javascript
复制
python3 utils/report_generator.py <log file>
(向右滑动,查看更多)

其他参数

help:显示工具帮助信息; next:执行下一步渗透测试任务操作; more:让PentestGPT解释当前步骤的详情,给予测试人员指引; todo:显示待办列表; discuss:与PentestGPT聊天; google:执行Google搜索; quit:退出工具并将结果输出保存到日志中;

工具安装演示

演示视频:https://youtu.be/tGC5z14dE24

工具使用演示

演示视频:https://youtu.be/h0k6kWWaCEU

许可证协议

本项目的开发与发布遵循MIT开源许可证协议。

项目地址

PentestGPT:https://github.com/GreyDGL/PentestGPT

https://youtu.be/tGC5z14dE24

https://youtu.be/lAjLIj1JT3c

https://youtu.be/Vs9DFtAkODM

https://www.hackthebox.com/home/users/profile/1489431

https://discord.gg/eC34CEfEkK

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2023-06-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 关于PentestGPT
  • 工具安装
  • 工具使用
    • 可选参数
      • 使用样例
      • 报告和日志
      • 其他参数
      • 工具安装演示
      • 工具使用演示
      • 许可证协议
      • 项目地址
      相关产品与服务
      腾讯云服务器利旧
      云服务器(Cloud Virtual Machine,CVM)提供安全可靠的弹性计算服务。 您可以实时扩展或缩减计算资源,适应变化的业务需求,并只需按实际使用的资源计费。使用 CVM 可以极大降低您的软硬件采购成本,简化 IT 运维工作。
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档