Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
Cooper — 一个用于摄取HTML并生成适用于钓鱼活动的HTML源码的Python工具。 | Kitploit
工具/GitHubGitHub/chrismaddalena/cooper
钓鱼工具信息收集钓鱼攻击Web安全社会工程学
GitHubchrismaddalena/cooper

Cooper

一个用于摄取HTML并生成适用于钓鱼活动的HTML源码的Python工具。

查看仓库
60191个月前Kitploit 审核通过

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Cooper, 名词, 木桶或木桶的制造者或修理工

(这是一个“桶中之鱼”的玩笑。我喜欢双关语!)

一款用于摄入HTML并生成适用于钓鱼活动的HTML源文件的Python工具。

Cooper简化了克隆目标网站或电子邮件以用于钓鱼活动的过程。只需找到要使用的URL或下载原始邮件内容,然后将其输入给Cooper。Cooper会克隆内容并自动为您准备好用于活动。脚本、图像和CSS可以修改为使用直接链接而非相对链接,链接被更改为指向您的钓鱼服务器,表单被更新为将数据发送给您——所有这些都在几秒钟内完成。Cooper是跨平台的,应该可以在macOS、Linux和Windows上运行。

不再需要在使用wget获取站点后手动编辑链接和表单。您可以专注于细节工作。

基本用法

Cooper提供多个模块,各有不同用途:

  • page - 无疑是最常用的模块。用于克隆目标网页。输出是一个HTML文件以及原始网页的截图,用于检查结果。
  • email - 与page类似,但它接受包含原始邮件内容的文件。只需在邮件客户端中打开邮件,使用客户端的“查看原始邮件”选项,然后保存内容。输出是一个HTML文件。
  • encode - 一个方便的工具,可自动化Base64编码,用于您想要手动嵌入到登录页面中的任何图像。提供一个图像文件,它将输出设置src属性所需的完整文本。输出是一大段(可能非常巨大)文本,例如 ``。这就是为什么将输出通过管道写入文件通常是个好主意,便于复制/粘贴。

使用 page

Page是Cooper的主要模块。唯一必需的参数是 -t 用于指定目标URL。然后您可以添加 --selenium 来选择使用Selenium 而非 Requests。基本上,如果输出看起来不正确或不完整(例如,可能只有背景和一些样式),请尝试使用 --selenium。

某些网站需要JavaScript来生成HTML内容。如果输出看起来不正确或不完整,请尝试使用 --selenium。

此外,您可以使用 -u 提供一个URL,作为图像、脚本和样式表的基础URL。Cooper会自动将相对链接(例如 /wp-content/images/foo.bar)替换为完整URL。

始终为 -t 和 -u 提供包含正确协议的合法URL(即 *http://www.example.com*)。

以下是完整设置列表:

  • -t,--target TEXT
    • [必需] 目标网页的URL。
  • -o,--output TEXT
    • [可选] 指定输出HTML文件的文件名。默认为index.html。建议包含 .html 扩展名。
  • -u,--url TEXT
    • [可选] 指定目标电子邮件或网页中图像的根URL。
  • -m,--embed
    • [可选] 将图像Base64编码并嵌入到输出中。
  • --selenium
    • [可选] 使用Selenium获取网页的HTML源代码。
  • -s,--serverport TEXT
    • [可选] 提供一个用于HTTP服务器的端口,以提供输出文件。
  • -c,--config FILE
    • [可选] 为Cooper提供一个备用配置文件。如果您使用不同的钓鱼平台/服务器,这将很有帮助。

使用 email

email模块在您想要将现有电子邮件用作新钓鱼的基础时非常方便。手动处理编码和多部分MIME消息可能很繁琐,所以让Cooper为您完成。此模块将解析消息内容,丢弃不需要的部分(如附件),并为您提供主要邮件正文的完全解码版本,即您关心的纯文本/HTML部分。

以下是完整设置列表:

  • -f,--file PATH
    • [必需] 包含原始邮件内容的文件路径。
  • -o,--output TEXT
    • [可选] 指定输出HTML文件的文件名。默认为index.html。建议包含 .html 扩展名。
  • -s,--serverport TEXT
    • [可选] 提供一个用于HTTP服务器的端口,以提供输出文件。
    • -c,--config FILE
      • [可选] 为Cooper提供一个备用配置文件。如果您使用不同的钓鱼平台/服务器,这将很有帮助。

使用 encode

如前所述,此模块是一次性的。必需且唯一的参数是 -i,用于提供要编码的图像文件。如果您正在构建自己的登录页面或编辑页面并需要添加图像,这将非常方便。如果您决定嵌入图像,请尝试此模块。它将Base64编码提供的文件并生成嵌入图像所需的文本。

  • -i,--image TEXT
    • [必需] 要Base64编码的目标文件。

设置

Python 需求

Cooper需要几个用于抓取网站和解析HTML的库。使用 pip 或 pipenv 安装所有内容。有一个用于 pip 的 requirements.txt 和一个用于 pipenv 虚拟环境的 Pipfile。如果您使用 pip,请确保在系统上使用适用于Python 3.9的正确版本(例如 pip3 或 pip3.9)。

您可以通过使用Python版本调用 pip 来确保使用正确的版本:

python3 -m pip install -r requirements.txt

使用虚拟环境甚至更简单:

  1. 运行此命令:pipenv install
  2. 使用以下命令进入环境:pipenv shell

Selenium 需求

要使用 Selenium 作为无头浏览器,需要安装Google Chrome并从以下地址下载匹配的Chromewebdriver文件:https://chromedriver.chromium.org/downloads

下载并将webdriver解压缩到此项目的根目录。您也可以将其放在其他位置,但请确保更新配置文件(参见下一节)。

设置配置文件

然后您需要设置配置文件。本仓库中提供的 cooper.config 文件已预先配置好用于GoPhish(URL被设置为替换为 {{.URL}})。默认配置还假设您会将Chrome webdriver放在目录根目录下。

配置文件如下所示:

root@kitploit:~
[Replacement URLs]
landing_page_url_replacement: {{.URL}}
landing_page_form_action: {{.URL}}
email_replacement_url: {{.URL}}

[Browser]
driver_path: ./chromedriver
user_agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.87 Safari/537.36

根据需要做出更改。您可以为使用的不同钓鱼平台、额外的攻击服务器或备用的用户代理创建多个配置文件。通过包含 -c 或 --config 参数以及您的备用文件来使用不同的配置文件。否则,默认使用 cooper.config 文件。

[Replacement URLs] 部分包含Cooper在替换链接和表单操作时将使用的所有URL。

landing_page_url_replacement 是用于登录页面的URL。您可能希望将其设置为钓鱼服务器的IP,以便访问者被重定向回登录页面,或者将他们发送到其他地方。

landing_page_form_action 是您希望表单数据在提交时发送到的URL。

email_replacement_url 是用于电子邮件的URL,应设置为您的钓鱼服务器的域名或IP地址。

如果这些URL中的任何一个设置为空,Cooper将不会替换这些URL。对于 landing_page_url_replacement 来说,这最实用,您可能希望登录页面继续指向真实的链接。但请注意,目标网页可能使用相对链接(例如 /home.php)而非直接链接,这意味着您的登录页面将充满损坏的链接。

[Browser] 部分仅用于与网页浏览相关的设置。如果您选择使用不同的驱动程序文件或位置,请使用此部分将 Selenium 和Cooper指向您的浏览器webdriver。此处也定义了用于网页浏览的用户代理。Cooper有一个默认的用户代理,您可以通过配置文件覆盖它。

其他信息

  • 图像可以在嵌入到模板之前进行Base64编码。这样做是为了使模板不依赖于网站保持可用或图像保持在其位置上。网站增加的大小(很可能)可以忽略不计,但在电子邮件中使用此选项可能会导致问题。某些电子邮件客户端不支持Base64图像,例如Outlook(!)。请牢记目标收件人的电子邮件客户端。

  • HTTP服务器选项使您能够通过访问 127.0.0.1:PORT 轻松预览Cooper的输出。您也可以直接打开HTML文件,但那样不够整洁。

已知问题

  • 如果网站托管在像SquareSpace这样的服务上,Cooper将无法修复图像。img 标签看起来像这样:<img src="https://raw.githubusercontent.com/chrismaddalena/cooper/HEAD/static1.squarespace.com/static/52ebedcae4b0ad4aad060b4a/t/533b687ae4b01d79d0ae12a3/1437187699809/?format=1500w"\>

最后的话

特别感谢Ninjasl0th和Hagbard对此项目的帮助!

下载工具