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

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

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

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

工具目录

分类

查看所有分类
Loading categories
mallet — Mallet 是一个用于任意协议的拦截代理 | Kitploit
工具/GitHubGitHub/sensepost/mallet
Web代理与拦截网络安全渗透测试实用工具与框架Web代理与拦截 分类第 12 名
GitHubsensepost/mallet

mallet

Mallet 是一个用于任意协议的拦截代理

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

Mallet,一个用于创建代理的框架

Mallet 是一个用于创建任意协议代理的工具,其思路类似于常见的拦截式 Web 代理,但更加通用。

它基于 Netty 框架构建,并严重依赖 Netty 的管道概念,该概念允许以图形方式组装处理器图。(示例见下方截图。)在 Netty 世界中,处理器实例提供帧定界(即消息的起始和结束位置)、协议解码与编码(将字节流转换为 Java 对象,反之亦然,或将字节流转换为不同的字节流——例如压缩与解压缩),以及更高级别的逻辑(实际对这些对象进行操作)。

通过将编解码器(Codecs)与实际操作消息的处理器(Handlers)仔细分离,Mallet 可以受益于现有的大量编解码器库,避免重复实现许多协议。这个谜题的最后一块由一个处理器提供,它将一个管道上接收的消息复制到另一个管道,将这些消息代理到最终目的地。

当然,当消息在 Mallet 内部时,可以轻松篡改它们,无论是使用用 Java 或符合 JSR-223 的脚本语言编写的自定义处理器,还是使用提供的编辑器手动操作。

您可以通过查看 GitHub 上的 Netty 源代码,在 codec* 目录下了解可用的编解码器。或者只需在搜索引擎中搜索 netty 和您感兴趣的协议。许多有趣的协议实现已在核心 Netty 项目之外开发,但仍应与 Mallet 良好配合。

谁可能使用 Mallet?

Mallet 面向那些处理非基于 HTTP 通信的网络应用程序的人员。例如物联网(可能使用 MQTT、COAP 等)、ATM 和销售点设备(可能使用 ISO8583),或者坦率地说,任何其他协议。

事实上,Mallet 甚至可能对基于 HTTP 的应用程序有用,这些应用程序在 HTTP 内部使用其他协议。例如,通过 WebSocket 传输的 Google Protobuf(现有的 HTTP 代理如 Burp、Zap 等对此支持不佳),或基于 HTTP2 的 gRPC。

Mallet 不一定仅用于安全审查。由于 Mallet 构建在 Netty 框架 之上,一旦您使用 Mallet 原型化了管道,您可以非常轻松地将代码迁移到普通的 Netty 应用程序中。

截图

这是一个简单 SOCKS 代理的示例,可用作理解您看到的网络流量的第一步。

Mallet 新图

一旦您对流量实际形态有了概念,就可以开始在管道中添加适当的 ChannelHandler 类。

构建 Mallet

Mallet 使用 Maven,因此编译代码只需:

root@kitploit:~
mvn package

运行:

root@kitploit:~
cd target/
java -jar mallet-1.0-SNAPSHOT-spring-boot.jar

examples/ 目录中提供了几个示例图表。JSON 图表期望一个 JSON 客户端连接到 localhost:9998/tcp 上的 Mallet,真实服务器位于 localhost:9999/tcp。只有最后一个 JSON 图表 (json5.mxe) 对传递的 JSON 消息结构做了假设,因此它们应适用于任何发送 JSON 消息的应用程序。

demo.mxe 显示了一个复杂图表,包含两条管道,分别用于 TCP 和 UDP。TCP 管道构建为支持 80 和 443 端口上的 HTTP 和 HTTPS,以及 WebSocket,同时将其他所有流量直接中继到其目的地。UDP 管道构建为处理 localhost:1053/udp 上的 DNS 请求,将针对 google.com 的查询替换为针对 www.sensepost.com 的查询,并将请求转发到 Google DNS 服务器。

反馈与贡献

欢迎反馈和贡献。请在适当的地方创建 Issue,或通过 Twitter @RoganDawes 联系作者。

下载工具