hett-patell/ShardShell
GitHub: hett-patell/ShardShell
面向授权红队评估的 PHP 后渗透 Web Shell,提供 Linux/Windows 双平台侦察、提权、文件管理及构建时混淆能力。
Stars: 4 | Forks: 1
# ShardShell - Smoker Shell v4.0
[](LICENSE)
[](#disclaimer)
专为授权渗透测试和红队行动构建的高级 PHP web shell。包含两个版本:Linux 和 Windows,每个版本都针对操作系统原生命令和权限提升向量进行了调优。
## 版本
| 文件 | 目标 OS | 备注 |
|---|---|---|
| `shell-linux.php` | Linux / macOS | 使用 `/proc`, `find -perm`, `crontab`, `ss` 等。 |
| `shell-windows.php` | Windows / IIS | 使用 `whoami /priv`, `wmic`, `schtasks`, `netstat -ano`,注册表检查等。 |
## 功能
两个版本共享相同的核心框架和 UI。特定操作系统的模块有所不同,如下所示:
| 模块 | Linux | Windows |
|---|---|---|
| **仪表盘** | 系统统计信息,PHP 配置 | 相同 |
| **文件管理器** | 浏览、编辑、上传、下载、hex 视图,chmod | 相同(无 chmod) |
| **终端** | `sh` 命令,会话历史 | `cmd.exe` 命令,会话历史 |
| **系统侦察** | `/proc`, `ps aux`, cron, `/etc/passwd` | `systeminfo`, `tasklist`, `schtasks`, `net user`, `whoami /all` |
| **网络工具** | 端口扫描,reverse shell 生成器(11 种类型),`dig` | 端口扫描,reverse shell 生成器(11 种类型,包含 PowerShell/mshta),`nslookup` |
| **数据库** | MySQL, SQLite | MySQL, MSSQL (sqlsrv), SQLite |
| **权限提升** | SUID/SGID, capabilities, 内核 CVE, sudo, 容器检测 | Token privileges, 未加引号的服务路径, AlwaysInstallElevated, AutoLogon, 存储的凭据, WiFi 密码, AV 检测 |
| **编码** | Base64, Hex, URL, HTML, ROT13, hashing | 相同 |
| **隐蔽性** | Apache/Nginx/syslog 清理, bash 历史 | Windows 事件日志清理 (wevtutil), IIS 日志清理, PowerShell 历史 |
## 部署
将合适的版本放入任何支持 PHP 的 web 服务器目录中。
```
# 本地测试
php -S 0.0.0.0:8888 -t .
```
默认密码:`admin` — 请在文件顶部修改 `$CONF['passwd']`。
## 构建系统
ShardShell 附带了一个构建时混淆器,可从干净的源代码生成经过加固、可规避 AV 的 PHP shell 变体。构建器作为 Python 3 CLI 运行 — 构建时不需要 PHP 运行时。
### 快速开始
```
# 构建所有变体 (standard + loader)
./build/build.sh --all
# 带 lint 验证的构建 (需要 podman 或 php-cli)
./build/build.sh --all --lint
# 自定义构建
python3 build/obfuscate.py shell-linux.php -o shell-obf.php
python3 build/obfuscate.py shell-linux.php --loader -o shell-enc.php
```
### 混淆级别
| 级别 | 技术 |
|---|---|
| `none` | 仅移除注释 + 代码压缩 |
| `standard`(默认) | 移除注释、XOR+base64 字符串编码、变量重命名、安全代码压缩 |
| `aggressive` | 以上所有 + 函数调用间接寻址 |
### Loader 模式 (`--loader`)
将整个混淆后的 payload 封装在自解密的 loader 中:
1. 使用 32 字节随机密钥对 payload 进行 **XOR** 运算
2. **GZip** 压缩(级别 9)
3. **Base64** 编码
4. 以 `".gzinflate(XOR(base64_decode(payload),key))) ?>` 的形式发布
原始 shell 永远不会以明文形式出现 — 即使是 `strings` 也显示不出任何可识别的内容。Loader 输出的文件大小约为原始文件的 37%。
### 混淆内容
| 技术 | 效果 |
|---|---|
| **字符串编码** | 所有单引号字符串字面量 → `_sXXXX("base64...")` 调用,在运行时使用内嵌的 XOR 密钥解码 |
| **变量重命名** | `$command`, `$result` 等 → 随机标识符(保留 superglobals) |
| **移除注释** | 移除 `//`, `#`, `/* */` 注释;正确处理注释内的 `?>` |
| **代码压缩** | 仅折叠 PHP 空白字符;保持 HTML/CSS/JS 块原样 |
| **函数间接寻址** (aggressive) | `exec()` → `_f('exec')()`, `shell_exec()` → `_f('shell_exec')()`,通过运行时查找实现 |
### 输出
| 文件 | 典型大小 |
|---|---|
| `dist/shell-linux-obf.php` | ~105 KB |
| `dist/shell-windows-obf.php` | ~110 KB |
| `dist/shell-linux-loader.php` | ~35 KB |
| `dist/shell-windows-loader.php` | ~37 KB |
### 手动规避 AV(无构建系统)
对于裸机部署,请使用 `__halt_compiler()` loader 进行封装:
```
'.$f(substr(file_get_contents(__FILE__),__COMPILER_HALT_OFFSET__+1)));__halt_compiler();
{base64 encoded shell here}
```
## 免责声明
此工具**专**用于在有效合同或书面授权下的授权安全评估和渗透测试。未经授权对你不拥有或未获得明确测试许可的系统进行使用是违法的。作者对滥用行为不承担任何责任。
## 许可证
MIT - 请参阅 [LICENSE](LICENSE)。
## Shard 生态系统
| 仓库 | 功能 |
|---|---|
| [ShardLure](https://github.com/hett-patell/ShardLure) | SSH honeypot + 威胁情报仪表盘 |
| [ShardC2](https://github.com/hett-patell/ShardC2) | Go 语言编写的红队 C2 框架 |
| [ShardFlow](https://github.com/hett-patell/ShardFlow) | 二层局域网工作台(ARP、丢弃、限速) |
| [ShardShell](https://github.com/hett-patell/ShardShell) | PHP 后渗透 shell |
| [ShardPass](https://github.com/hett-patell/ShardPass) | 极简 TOTP 身份验证器 (Chrome MV3) |
| [ShardPet](https://github.com/hett-patell/ShardPet) | 像素宝可梦浏览器扩展 |
| [ShardTune](https://github.com/hett-patell/ShardTune) | Spotify 控制器 + 收听数据分析 (Chrome/Brave) |
专为授权渗透测试和红队行动构建的高级 PHP web shell。包含两个版本:Linux 和 Windows,每个版本都针对操作系统原生命令和权限提升向量进行了调优。
## 版本
| 文件 | 目标 OS | 备注 |
|---|---|---|
| `shell-linux.php` | Linux / macOS | 使用 `/proc`, `find -perm`, `crontab`, `ss` 等。 |
| `shell-windows.php` | Windows / IIS | 使用 `whoami /priv`, `wmic`, `schtasks`, `netstat -ano`,注册表检查等。 |
## 功能
两个版本共享相同的核心框架和 UI。特定操作系统的模块有所不同,如下所示:
| 模块 | Linux | Windows |
|---|---|---|
| **仪表盘** | 系统统计信息,PHP 配置 | 相同 |
| **文件管理器** | 浏览、编辑、上传、下载、hex 视图,chmod | 相同(无 chmod) |
| **终端** | `sh` 命令,会话历史 | `cmd.exe` 命令,会话历史 |
| **系统侦察** | `/proc`, `ps aux`, cron, `/etc/passwd` | `systeminfo`, `tasklist`, `schtasks`, `net user`, `whoami /all` |
| **网络工具** | 端口扫描,reverse shell 生成器(11 种类型),`dig` | 端口扫描,reverse shell 生成器(11 种类型,包含 PowerShell/mshta),`nslookup` |
| **数据库** | MySQL, SQLite | MySQL, MSSQL (sqlsrv), SQLite |
| **权限提升** | SUID/SGID, capabilities, 内核 CVE, sudo, 容器检测 | Token privileges, 未加引号的服务路径, AlwaysInstallElevated, AutoLogon, 存储的凭据, WiFi 密码, AV 检测 |
| **编码** | Base64, Hex, URL, HTML, ROT13, hashing | 相同 |
| **隐蔽性** | Apache/Nginx/syslog 清理, bash 历史 | Windows 事件日志清理 (wevtutil), IIS 日志清理, PowerShell 历史 |
## 部署
将合适的版本放入任何支持 PHP 的 web 服务器目录中。
```
# 本地测试
php -S 0.0.0.0:8888 -t .
```
默认密码:`admin` — 请在文件顶部修改 `$CONF['passwd']`。
## 构建系统
ShardShell 附带了一个构建时混淆器,可从干净的源代码生成经过加固、可规避 AV 的 PHP shell 变体。构建器作为 Python 3 CLI 运行 — 构建时不需要 PHP 运行时。
### 快速开始
```
# 构建所有变体 (standard + loader)
./build/build.sh --all
# 带 lint 验证的构建 (需要 podman 或 php-cli)
./build/build.sh --all --lint
# 自定义构建
python3 build/obfuscate.py shell-linux.php -o shell-obf.php
python3 build/obfuscate.py shell-linux.php --loader -o shell-enc.php
```
### 混淆级别
| 级别 | 技术 |
|---|---|
| `none` | 仅移除注释 + 代码压缩 |
| `standard`(默认) | 移除注释、XOR+base64 字符串编码、变量重命名、安全代码压缩 |
| `aggressive` | 以上所有 + 函数调用间接寻址 |
### Loader 模式 (`--loader`)
将整个混淆后的 payload 封装在自解密的 loader 中:
1. 使用 32 字节随机密钥对 payload 进行 **XOR** 运算
2. **GZip** 压缩(级别 9)
3. **Base64** 编码
4. 以 `".gzinflate(XOR(base64_decode(payload),key))) ?>` 的形式发布
原始 shell 永远不会以明文形式出现 — 即使是 `strings` 也显示不出任何可识别的内容。Loader 输出的文件大小约为原始文件的 37%。
### 混淆内容
| 技术 | 效果 |
|---|---|
| **字符串编码** | 所有单引号字符串字面量 → `_sXXXX("base64...")` 调用,在运行时使用内嵌的 XOR 密钥解码 |
| **变量重命名** | `$command`, `$result` 等 → 随机标识符(保留 superglobals) |
| **移除注释** | 移除 `//`, `#`, `/* */` 注释;正确处理注释内的 `?>` |
| **代码压缩** | 仅折叠 PHP 空白字符;保持 HTML/CSS/JS 块原样 |
| **函数间接寻址** (aggressive) | `exec()` → `_f('exec')()`, `shell_exec()` → `_f('shell_exec')()`,通过运行时查找实现 |
### 输出
| 文件 | 典型大小 |
|---|---|
| `dist/shell-linux-obf.php` | ~105 KB |
| `dist/shell-windows-obf.php` | ~110 KB |
| `dist/shell-linux-loader.php` | ~35 KB |
| `dist/shell-windows-loader.php` | ~37 KB |
### 手动规避 AV(无构建系统)
对于裸机部署,请使用 `__halt_compiler()` loader 进行封装:
```
'.$f(substr(file_get_contents(__FILE__),__COMPILER_HALT_OFFSET__+1)));__halt_compiler();
{base64 encoded shell here}
```
## 免责声明
此工具**专**用于在有效合同或书面授权下的授权安全评估和渗透测试。未经授权对你不拥有或未获得明确测试许可的系统进行使用是违法的。作者对滥用行为不承担任何责任。
## 许可证
MIT - 请参阅 [LICENSE](LICENSE)。
## Shard 生态系统
| 仓库 | 功能 |
|---|---|
| [ShardLure](https://github.com/hett-patell/ShardLure) | SSH honeypot + 威胁情报仪表盘 |
| [ShardC2](https://github.com/hett-patell/ShardC2) | Go 语言编写的红队 C2 框架 |
| [ShardFlow](https://github.com/hett-patell/ShardFlow) | 二层局域网工作台(ARP、丢弃、限速) |
| [ShardShell](https://github.com/hett-patell/ShardShell) | PHP 后渗透 shell |
| [ShardPass](https://github.com/hett-patell/ShardPass) | 极简 TOTP 身份验证器 (Chrome MV3) |
| [ShardPet](https://github.com/hett-patell/ShardPet) | 像素宝可梦浏览器扩展 |
| [ShardTune](https://github.com/hett-patell/ShardTune) | Spotify 控制器 + 收听数据分析 (Chrome/Brave) |标签:ffuf, OpenVAS, PHP, WebShell, Web报告查看器, 协议分析, 安全攻防, 权限提升