irasheedcs/pdf-malware-robustness

GitHub: irasheedcs/pdf-malware-robustness

该项目研究静态 PDF 恶意软件检测器的对抗脆弱性,提供可实现性约束的规避攻击方法及两种防御方案(对抗训练与单调认证模型)的完整复现代码。

Stars: 0 | Forks: 0

# 近乎完美的静态 PDF 恶意软件检测器的脆弱性 关于 [RIT-PDFMal-2026](https://github.com/Mo-Alani/RIT-PDFMal-2026) 基准测试的**可实现性约束下的对抗鲁棒性研究**的代码与论文。 一个复现了该基准测试 **F1 ≈ 0.99** 的梯度提升检测器, 可以通过** 2 次保留 payload 的编辑**(中位数), 导致其**最初捕获的 96.9% 的恶意文件**被错误分类。我们提供了攻击方法、 两种防御手段(可实现的对抗训练和带有鲁棒性**证书**的单调约束检测器),以及一项可迁移性研究。 ## 主要结果(由此代码复现) | 结果 | 数值 | |---|---| | 基线 XGB,全量划分 (F1 / Acc) | 0.9919 / 0.9926 | | 基线 XGB,去重划分 (F1 / Acc) | 0.9623 / 0.9893 | | 重复的恶意特征向量 | **80.0%** | | 逃避攻击成功率 (去重,完整分类) | **96.9%** | | 逃避攻击成功率 (4 特征“低成本”) | 32.1% | | 中位数逃避攻击成本 | **2 次编辑** | | 对抗训练 → 逃避攻击 | 65.7% | | 单调鲁棒 → 逃避攻击 / **认证** | 76.7% / **45.9%** | | 迁移至 Decision Tree | 80.3% | ## 目录结构 ``` src/ realizability.py # per-feature attacker action model (Table I) attack.py # budgeted greedy evasion (Algorithm 1) defenses.py # adversarial training + monotone model + certificate experiments.py # driver -> results/results.json figures.py # all paper figures paper/ main.tex # IEEE-style manuscript (compiles with pdflatex) results/results.json figs/ ``` ## 复现 ``` pip install -r requirements.txt cd src python experiments.py # downloads the dataset (zip password: pdfmal) and runs everything python figures.py # writes figs/*.pdf and *.png ``` 数据集会自动从 RIT-PDFMal-2026 仓库获取;如果你已经拥有 `rit-pdfmal-2026.csv`,请将其放入 `data/` 目录中。 ## 构建论文 ``` cd paper pdflatex main.tex && pdflatex main.tex ``` ## 用一段话描述的威胁模型 所有允许的修改都会保留恶意 payload:攻击者可以**注入良性内容**以提高体积特征(`pdfsize`、`pages`、`contains_text`、`metadata size`、`images`、`URI`)直至达到良性配置,或者**混淆关键词名称**以将诸如 `/JavaScript`、`/JS`、`/OpenAction`、`/Launch`、`/XFA` 等计数降低至接近零。攻击仅在此可实现集合内进行搜索,因此被篡改以逃避检测的样本仍然是功能完整的恶意软件。请参阅 `src/realizability.py` 和论文第三部分。 ## 注意事项 / 诚实的局限性 - 这是一项在可实现流形上的**特征空间**研究;端到端的问题空间验证(生成功能性 PDF + sandbox 执行)需要基准测试中未提供的原始样本,因此被留作未来的工作(可以使用相同的提取器在 Contagio 上运行)。 - 该证书涵盖了所述模型下无限制的关键词混淆;填充特征是通过排除来处理的,而不是通过认证。 - LR 的迁移数据可能会因求解器的迭代上限而产生约 1% 的波动。 ## 引用 如果您使用了此代码,请引用数据集论文和本研究。 ``` @article{ritpdfmal, author = {Alani, Mohammed M. and Damiani, Ernesto}, title = {RIT-PDFMal-2026: A Comprehensive Benchmark Dataset for PDF Malware Detection}, journal = {IEEE Access}, volume = {14}, pages = {97841--97855}, year = {2026}, doi = {10.1109/ACCESS.2026.3707213} } ``` ## 许可证 MIT(代码)。数据集保留其原始许可证/条款。
标签:DNS 反向解析, XGBoost, 密钥泄露防护, 对抗样本, 对抗防御, 数据泄露分析, 机器学习安全, 逆向工具