工具:一款由ChatGPT驱动的强大渗透测试工具
资源来源:互联网
资源格式:浏览器插件
编辑整理:高晨煜
开始
- 工具 是由 ChatGPT 提供支持的渗透测试工具。
- 它旨在自动化渗透测试过程。它建立在 ChatGPT 之上,并以交互模式运行,以指导渗透测试人员的整体进度和特定操作。
-
能够解决容易到中等的HackTheBox机器,以及其他CTF挑战。您可以在我们使用它来解决HackTheBox挑战
模板化
(Web挑战)的地方查看
此示例
(看最后)。
resources
- 在目标VulnHub机器(Hackable II)上的测试过程示例可 在此处 (看最后)获得。
- 下面是一个示例使用视频:(或在此处获得: 演示 (看最后))
安装
目前支持 ChatGPT 和 OpenAI API 的后端。您可以使用其中任何一个。开发团队正在研究对自定义本地LLM模型的支持。 建议使用 OpenAI API 来提高稳定性和性能(有关详细信息,请参阅第 3 项)。 请 在此处 (看最后)观看安装视频。
-
安装最新版本
pip3 install git+https://github.com/GreyDGL/PentestGPT
- 如果您决定使用 ChatGPT 作为后端
- 获取 Cookie 以访问 ChatGPT 会话
$ pentestgpt-cookie export CHATGPT_COOKIE='<your cookie here>`
-
复制上一个命令并在终端中运行它(
export CHATGPT_COOKIE='<big-string-you-shall-get-from-the-previous-command>'
) -
使用 测试连接
pentestgpt-connection
-
运行该工具
pentestgpt
- 使用 OpenAI API
-
导出您的 API 密钥
export OPENAI_KEY='<your key here>'
-
使用 测试连接
pentestgpt-connection
-
要验证连接配置是否正确,您可以运行 。一段时间后,您应该会看到一些与 ChatGPT 的对话示例。
pentestgpt-connection
- 示例输出如下
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> ## Test connection for OpenAI api (GPT-3.5 16k tokens) 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-16k --useAPI>
用法
-
要开始,请运行 。
pentestgpt --args
-
--reasoning_model
是要使用的推理模型。 -
--useAPI
是你是否要使用OpenAI API。 -
建议您按照 的建议使用组合,它们是:
test_connection.py
-
pentestgpt --reasoning_model=gpt-4
-
pentestgpt --reasoning_model=gpt-4 --useAPI
-
pentestgpt --reasoning_model=gpt-3.5-turbo --useAPI
-
pentestgpt --reasoning_model=gpt-3.5-turbo-16k --useAPI
-
--baseUrl
是您要在其中使用其他 GPT4 的网址,它们是: -
pentestgpt --useAPI --baseUrl https://{your own endpoint}.openai.azure.com
-
pentestgpt --useAPI --baseUrl https://openai.api2d.net/v1
-
--logDir
是自定义的日志输出目录。位置是相对目录
- 该工具的工作方式类似于 msfconsole 。按照指南执行渗透测试。
- 一般来说,PentestGPT 会接收类似于 chatGPT 的命令。有几个基本命令。
- 这些命令是:
-
help
:显示帮助消息。 -
next
:键入测试执行结果并获取下一步。 -
more
:让 PentestGPT 解释当前步骤的更多细节。此外,还将创建一个新的子任务求解器来指导测试人员。 -
todo
:显示待办事项列表。 -
discuss
:与 PentestGPT 讨论。 -
google
:在谷歌上搜索。此功能仍在开发中。 -
quit
:退出工具并将输出另存为日志文件(请参阅下面的 报告 部分)。
- 您可以使用<SHIFT + 向右箭头>结束输入(用于下一行)。
-
您可以随时使用 自动完成命令。
TAB
-
获得下拉选择列表时,可以使用光标或箭头键在列表中导航。按下以选择项目。同样,使用 <SHIFT + 向右箭头>确认选择。
ENTER
-
在 发起的子任务处理程序中,用户可以执行更多命令来调查特定问题:
more
- 这些命令是:
-
help
:显示帮助消息。 -
brainstorm
:让PentestGPT就本地任务集思广益,寻找所有可能的解决方案。 -
discuss
:与PentestGPT讨论这个本地任务。 -
google
:在谷歌上搜索。此功能仍在开发中。 -
continue
:退出子任务并继续主测试会话。
报告和日志记录
-
完成渗透测试后,将在文件夹中自动生成报告(如果使用命令退出)。
logsquit
-
通过运行 ,可以以人类可读的格式打印报告。还会上传示例报告。
python3 utils/report_generator.py <log file>sample_pentestGPT_log.txt