sltcnb/Pandora-Sandbox
GitHub: sltcnb/Pandora-Sandbox
一款离线自动化恶意软件静态分析工具,提供 PE 解析、IOC 提取、YARA 扫描与启发式威胁评分。
Stars: 0 | Forks: 0
# Pandora-Sandbox




**Pandora-Sandbox** 是一款自动化恶意软件分析工具。本次发布的是
**静态分析 MVP**:它完全在离线环境下对可疑文件进行指纹识别、深度剖析和风险评分——无需执行、无需 VM、无需网络。它可以运行在*任何*文件上,并在缺少可选的原生依赖时平滑降级。
## 功能
- **文件类型检测** — magic-byte 签名识别,并带有纯 Python 的后备方案
(在可用时使用 `python-magic`/libmagic)。
- **哈希与熵** — MD5、SHA1、SHA256、可选的 ssdeep 模糊哈希,以及
每个文件的香农熵。
- **PE 分析**(通过 `pefile`):
- imphash、导入、导出
- 节区(名称 / 虚拟大小 / 原始大小 / 每节区熵值)
- 编译时间戳
- 加壳启发式检测(高熵节区)
- Authenticode 签名存在标志
- **字符串提取** — ASCII **和** UTF-16LE,可配置的最小长度。
- 从字符串中提取 **IOC** — IPv4、域名、URL、电子邮件、Bitcoin 风格
地址以及 Windows 注册表路径(基于正则表达式)。
- **可选 YARA 扫描** — 在提供 `yara-python` 和规则文件/目录时自动启用
(全面防护;没有它工具也能正常工作)。
- **威胁评分 (0–100)** — 一种透明的启发式算法,结合了熵、
可疑导入(`VirtualAlloc`、`WriteProcessMemory`、……)、加壳迹象、
可疑字符串、网络 IOC 和 YARA 命中情况,并附带人类可读的理由。
- **报告** — Rich 终端输出,外加 JSON 和 Jinja2 HTML 报告导出。
## 安装说明
```
# 从源码
git clone pandora-sandbox
cd pandora-sandbox
pip install .
# 带有可选 capabilities
pip install ".[yara]" # YARA scanning (needs libyara)
pip install ".[fuzzy]" # ssdeep fuzzy hashing
pip install ".[magic]" # python-magic file typing
pip install ".[dev]" # pytest for running the test-suite
```
需要 Python 3.10+。核心依赖几乎是纯 Python 的,可以通过 pip 完美安装:
`pefile`、`pyyaml`、`click`、`jinja2`、`rich`、`pydantic>=2`。
## 用法
```
# capabilities & version
pandora info
# 快速 hashes + entropy
pandora hash suspicious.exe
# 完整 static analysis(精美的终端输出)
pandora static suspicious.exe
# 调整 string extraction 并导出报告
pandora static suspicious.exe --strings-min 6 --json report.json --html report.html
# 使用 YARA rules(需要 'yara' extra)
pandora static suspicious.exe --yara-rules rules/
```
### 示例
```
$ pandora static sample.exe
╭──────────── Pandora-Sandbox :: sample.exe ────────────╮
│ THREAT: HIGH | SCORE: 58/100 │
╰───────────────────────────────────────────────────────╯
...
```
## Docker
```
docker build -t pandora-sandbox .
docker run --rm -v "$PWD:/data" pandora-sandbox static /data/suspicious.exe
```
## 开发
```
pip install -e ".[dev]"
python -m pytest
```
测试套件在内存中构建了一个结构有效的 PE 和一个 EICAR 风格的文件,
并且在**未**安装 `yara-python` 的情况下也能通过测试。
## 路线图
MVP 是刻意仅限于静态的。未来计划的工作:
- [ ] **动态分析** — 在带有插桩的沙箱中引爆样本。
- [ ] **VM / 容器隔离** — 一次性的 Windows/Linux 访客机。
- [ ] 行为追踪:API 钩子、文件系统/注册表/网络捕获。
- [ ] 编排(排队、水平扩展、K8s)。
- [ ] Web UI 和 REST API。
- [ ] 威胁情报富化和更丰富的 YARA 规则包。
## 安全免责声明
此工具仅执行**静态**分析,绝不执行样本。
即便如此,您处理的仍可能是**活跃的恶意软件**:
- 请在**隔离的、一次性的系统**上操作,且该系统无权访问敏感数据。
- 静态存储时,请将样本保存在受密码保护/加密的存档中。
- 禁用文件管理器和编辑器中的自动预览/自动运行功能。
- 绝不在受控环境之外打开或双击样本。
- 请遵守您所在组织的恶意软件处理政策及适用法律。
作者不对任何误用或损坏承担责任。使用风险自负。
## 许可证
MIT © 2026 sltcnb — 详见 [LICENSE](LICENSE)。
标签:DAST, DNS 反向解析, PE解析, YARA, 云安全监控, 云资产可视化, 威胁评分, 恶意软件分析, 请求拦截, 逆向工具, 静态分析