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

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

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

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

工具目录

分类

查看所有分类
Loading categories
HTMLSmuggler — ✉️ 用于红队操作的HTML走私生成器和混淆器 | Kitploit
工具/GitHubGitHub/d00movenok/htmlsmuggler
Payload生成IDS/IPS规避Web应用程序漏洞利用钓鱼攻击红队
GitHubd00movenok/htmlsmuggler

HTMLSmuggler

✉️ 用于红队操作的HTML走私生成器和混淆器

查看仓库
2002462年前Kitploit 审核通过

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

HTMLSmuggler ✉️

License: MIT

HTMLSmuggler - 用于绕过IDS并通过HTML走私传递有效载荷的JS载荷生成器。

描述

关于什么是HTML走私的完整解释可以在这里找到。

HTML走私的主要目标是通过将恶意载荷(例如可执行文件/压缩包等)伪装成看似无害的HTML和JavaScript代码,来绕过网络安全控制,如防火墙和入侵检测系统。通过利用Web应用的动态特性,攻击者可以将恶意内容传递到用户的浏览器,而不会触发安全警报或被传统安全机制检测到。得益于这种技术,恶意文件的下载在现代IDS解决方案中不会以任何方式显示出来。

HTMLSmuggler工具的主要目标是创建一个独立的JavaScript库,其中嵌入用户定义的恶意载荷。这个库可以集成到你的钓鱼网站/邮件HTML附件等中,以将嵌入的载荷传递到目标用户系统(绕过IDS和IPS系统)。创建的JavaScript库示例可在这里找到。

功能

  • 内置高度可配置的JavaScript混淆器,完全隐藏你的载荷,使得无法手动从JavaScript中提取载荷。
  • 强大的客户端机器人和无头爬虫检测库,不会将你的载荷共享给智能安全邮件网关及其伙伴。
  • 加载前延迟,以避开匆忙的沙箱。
  • 既可作为独立的JS库使用,也可嵌入到React、Vue.js等JS框架中。
  • 模板简单,允许添加额外的数据处理/压缩/混淆。
  • 支持大量浏览器(包括旧的IE10)。

安装

  1. 安装yarn 包管理器。

  2. 安装依赖:

    root@kitploit:~
    yarn
    
  3. 阅读帮助信息。

    root@kitploit:~
    yarn build -h
    
    root@kitploit:~
    Options:
      -p, --payload <string>   Path to payload file you want to smuggle
      -n, --name <string>      Name of file, that would be downloaded
      -t, --type <string>      Contet-Type of downlonaded file (default: "application/octet-stream")
      -f, --function <string>  Name of exported function (default: "download")
      -c, --compress           Enable payload compression (gzip)
      -d, --delay <number>     Delay before antibot and download in ms (default: 0)
      -a, --antibot            Enable bot detection and block them (recommended)
      -h, --help               display help for command
    

使用

准备步骤

  1. (可选) 修改obfuscator.js中的javascript-obfuscator选项,我的预设配置不错,但非常慢。

  2. 编译你的JavaScript载荷:

    ⚠️ 避免使用大于3 MiB的载荷(参见FAQ)

    root@kitploit:~
    yarn build -p /path/to/payload -n file.exe -t "application/octet-stream" -c -a -d 3000
    
  3. 从dist/payload.esm.js或dist/payload.umd.js获取你的载荷。之后,它可以插入到你的页面中,并通过download()(或通过-f标志自定义指定的函数)调用。

    payload.esm.js用于import { download } from 'payload.esm';导入(ECMAScript标准)。

    payload.umd.js用于HTML脚本SRC和require('payload.umd');导入(CommonJS、AMD及纯HTML)。

纯HTML示例

完整示例可在这里找到。

  1. 完成准备步骤。

  2. 将创建的脚本导入到HTML文件中(或直接内联插入):

    root@kitploit:~
    <head>
      <script src="payload.umd.js"></script>
    </head>
    
  3. 从body中调用download()函数:

    root@kitploit:~
    <body>
      <button onclick="download()">Some phishy button</button>
    </body>
    
  4. 快乐钓鱼 :)

VueJS示例

完整示例可在这里找到。

  1. 完成准备步骤。

  2. 将创建的脚本导入到Vue文件中:

    root@kitploit:~
    <script>
      import { download } from './payload.esm';
    </script>
    
  3. 调用download()函数:

    root@kitploit:~
    <template>
      <button @click="download()">Some phishy button</button>
    </template>
    
  4. 快乐钓鱼 :)

常见问题(FAQ)

问:我遇到错误RangeError: Maximum call stack size exceeded,如何解决?

答:这个问题在此描述。要修复它,请尝试在obfuscator.js中禁用splitStrings,或者使用更小的载荷(由于此问题,建议使用不超过2 MB的载荷)。


问:为什么我的载荷构建时间这么长?

答:你使用的载荷越大,创建JS文件所需的时间就越长。为了减少构建时间,请尝试在obfuscator.js中禁用splitStrings。下表为使用默认obfuscator.js时的预估构建时间。

载荷大小构建时间
525 KB53 秒
1.25 MB8 分钟
3.59 MB25 分钟
下载工具