BenjiTrapp/RaccShells
GitHub: BenjiTrapp/RaccShells
一个零依赖、单 HTML 文件离线运行的渗透测试反向 shell 生成与参考工具,支持多语言 shell 生成、动态混淆和 LotL 技术速查。
Stars: 2 | Forks: 0
RaccShells
独立的反向 shell 生成器 · 零依赖 · 单个 HTML 文件
仅供授权的渗透测试和 CTF 使用
## 这是什么?
RaccShells 是一个**独立的、单文件**反向 shell 参考工具。打开 `index.html` —— 无需服务器、无需安装、无需互联网。输入你的 IP 和端口,复制 shell,然后即可使用。
采用暗色终端美学构建:扫描线叠加、矩阵绿、全等宽字体。
## 功能概览
| 标签页 | 内容 |
|-----|----------|
| **Reverse Shells** | 涵盖 Bash、Python、Perl、PHP、Ruby、PowerShell、Java、Go、Lua、Awk 等的 72 个 shell |
| **Bind Shells** | 14 个绑定端监听器 |
| **MSFVenom** | 25 个可直接粘贴的 msfvenom payload |
| **Shell Upgrade** | TTY 生成、stty raw、socat 完全交互式、转义二进制文件 |
| **Tools & Listeners** | pwncat-cs、pwncat (cytopia)、Chashell、HellShell、SSL-AES、FuegoShell、CHAOS RAT、tmate |
| **Living off the Land** | Windows (LOLBAS) + Linux + macOS —— 下载、执行、持久化、隧道 |
## 流量流向图
每个 shell 展开后都会显示一个动画 SVG 图表 —— 没有静态图片,全部内联生成。
```
flowchart LR
subgraph VICTIM
V["💻 :random"]
end
subgraph ATTACKER
A["🖥 :4444 LISTEN"]
end
V -- "① TCP connect-back" --> A
A -. "② commands" .-> V
V -. "③ output" .-> A
```
```
flowchart LR
subgraph ATTACKER
A["🖥 connects"]
end
subgraph VICTIM
V["💻 :4444 LISTEN"]
end
A -- "① connect to port" --> V
A -. "② commands" .-> V
V -. "③ output" .-> A
```
```
flowchart LR
subgraph VICTIM
V["💻 DNS client"]
end
subgraph DNS["DNS Nameserver\nyour domain NS"]
D[" "]
end
subgraph ATTACKER
A["🖥 NS record"]
end
V -- "① DNS query\n(XSalsa20 enc)" --> D
D -- "NS forward" --> A
A -. "② encoded response" .-> D
D -. "NS reply" .-> V
```
```
flowchart LR
subgraph VICTIM
V["💻 polling"]
end
subgraph ATTACKER
A["🖥 HTTP :80"]
end
V -- "① GET /token\npoll for cmd" --> A
A -. "② 200 encoded cmd" .-> V
V -- "③ POST /token\nencoded output" --> A
```
```
flowchart LR
subgraph VICTIM
V["💻 :random"]
end
subgraph ATTACKER
A["🖥 :443 LISTEN"]
end
V -- "① TLS handshake" --> A
A -- "② 🔒 encrypted cmd" --> V
V -- "③ 🔒 encrypted output" --> A
style A fill:#1a1200,stroke:#cc9900
style V fill:#1a0000,stroke:#ff4444
```
## Shell 混淆
每个包含解释器的 shell 都支持**动态混淆** —— 点击 `▶ obf` 即可在当前页面内切换模式。
```
stateDiagram-v2
[*] --> plain
plain --> base64 : click obf
base64 --> var_split : click obf
var_split --> hex_printf : click obf
hex_printf --> plain : click obf
state "bash base64" as base64
note right of base64
bash -c "$(echo '...'|base64 -d)"
end note
state "$var split" as var_split
note right of var_split
b='ba';s='sh'; eval $b$s${IFS}-i...
end note
state "hex printf" as hex_printf
note right of hex_printf
eval "$(printf '\x62\x61\x73\x68...')"
end note
```
**各解释器的混淆模式:**
| 解释器 | 模式 |
|------------|-------|
| Bash / Zsh / Sh | `base64` · `$var split` · `hex printf` |
| PowerShell | `-EncodedCommand` (UTF-16LE) · `[char[]]` IEX |
| Python | `exec(base64.b64decode(...))` |
| Perl | `eval(pack('H*', hex))` |
| PHP | `eval(base64_decode(...))` |
| Ruby | `eval(Base64.decode64(...))` |
## 加密 Shell
具有加密传输功能的 shell 以**金色**高亮显示,并带有 🔒 徽章。
```
flowchart TD
subgraph Encrypted["🔒 Encrypted Transport"]
direction LR
E1["OpenSSL s_client"]
E2["PowerShell TLS #4"]
E3["Ncat --ssl"]
E4["HoaxShell HTTPS"]
E5["SSL-AES C++ Shell"]
E6["Chashell DNS (XSalsa20)"]
end
```
使用 **🔒 encrypted** 筛选标签可仅显示这些 shell。
## Living off the Land
按操作系统分类的技术,每种都有其独立的筛选视图。
```
mindmap
root((LotL))
Windows
Download & Execute
certutil
bitsadmin
curl Win10+
PowerShell cradle
Code Execution
mshta HTA
regsvr32 Squiblydoo
rundll32 JS
MSBuild C#
InstallUtil
wmic
Persistence
Registry Run key
Scheduled Task
Startup folder
Linux
Download & Execute
curl pipe bash
wget pipe bash
python3 fetch
File Transfer
nc / socat
dd raw
base64 paste
Tunneling
SSH reverse tunnel
SSH SOCKS5
Chisel
Persistence
crontab
systemd user service
LD_PRELOAD
macOS
Download & Execute
curl pipe bash
osascript
Persistence
LaunchAgent plist
crontab
```
## 工具与监听器
| 工具 | 类型 | 平台 |
|------|------|----------|
| [pwncat-cs](https://github.com/calebstewart/pwncat) | 后渗透平台 | Linux |
| [pwncat (cytopia)](https://github.com/cytopia/pwncat) | 增强版 Netcat | Linux / Mac / Win |
| [Chashell](https://github.com/kost/chashell) | DNS 反向 shell | 全平台 |
| [HellShell](https://github.com/NUL0x4C/HellShell) | Shellcode 混淆器 | Windows |
| [SSL-AES Reverse Shell](https://github.com/V-i-x-x/SSL-AES-Reverse-Shell) | TLS C++ shell | Windows |
| [FuegoShell](https://github.com/v1k1ngfr/fuegoshell) | SMB 命名管道 shell | Windows |
| [CHAOS RAT](https://github.com/tiagorlampert/CHAOS) | 带有 Web UI 的 Go RAT | Linux / Win |
| [tmate](https://github.com/tmate-io/tmate) | 通过 SSH 共享终端 | Linux / Mac |
## 使用方法
```
# 选项 1 — 直接在浏览器中打开(无需服务器)
open index.html # macOS
start index.html # Windows
xdg-open index.html # Linux
# 选项 2 — 本地提供服务
python3 -m http.server 8080
# → http://localhost:8080
```
1. 设置 **LHOST / IP**、**PORT** 和首选的 **shell 二进制文件**
2. 从下拉菜单中选择一个 **监听器** —— 攻击者端命令会自动更新
3. 使用**筛选标签**按操作系统、加密或混淆支持进行缩小范围
4. 点击一个 shell 展开 —— 图表开始动画,复制按钮已就绪
5. 可选:在复制前点击 **▶ obf** 循环切换混淆模式
## 监听器下拉菜单
```
flowchart LR
L["Listener Dropdown"] --> NC["nc -lvnp PORT"]
L --> NCAT["ncat -lvnp PORT"]
L --> SOCAT["socat file:tty,raw TCP-LISTEN:PORT"]
L --> RLWRAP["rlwrap nc -lvnp PORT (TTY)"]
L --> MSF["msf multi/handler"]
L --> PCS["pwncat-cs -lp PORT"]
L --> PCY["pwncat -l -p PORT"]
```
标签:Living-off-the-Land, 前端工具, 后端开发, 命令与控制, 多模态安全, 数据可视化, 知识库安全, 网络信息收集, 逆向Shell