Skip to content
KitploitKITPLOIT
工具博客
提交
工具博客
提交

黑客、渗透测试和网络安全工具,武装您的安全武器库!

Kitploit 是一个黑客、网络安全和渗透测试工具的目录。发现最新的项目更新,查找漏洞、分析系统、自动化测试并加强你的安全。

··订阅源·联系·隐私·© 2026 Kitploit

工具目录

分类

查看所有分类
Loading categories
工具/GitHubGitHub/dtrizna/quasarnix
防御工具Payload生成Shellcode机器学习入侵检测论文与研究学习与教育异常检测对抗性攻击
GitHubdtrizna/quasarnix

QuasarNix

基于机器学习的反向Shell检测

查看仓库
72143个月前尚未审核

最受欢迎

查看全部 →

发现我们社区最常用的工具。

探索所有工具

浏览我们的工具集合

查看所有工具 →
分享

QuasarNix: 对抗鲁棒的离地生存反向Shell检测

Dmitrijs Trizna · Luca Demetrio · Battista Biggio · Fabio Roli

论文 arXiv 数据集 模型


概述

Linux living-off-the-land (LOTL) 反向shell滥用合法二进制文件(bash、python、nc等)建立隐蔽的出站连接,使得基于签名的检测在面对新型变体和逃避尝试时不可靠。QuasarNix 解决了该领域的两个空白:

  1. 没有公开的基于ML的SIEM检测器——我们发布了首个生产就绪、开放许可的LOTL反向shell检测ML模型。
  2. 对抗脆弱性——我们在逃避和投毒攻击下评估模型,并提供在所有测试攻击下存活的对抗训练检查点。

该框架从34个反向shell模板合成了一个100万命令的训练语料库,并在FPR = 10⁻⁶的操作点上评估了14种模型架构——反映了真实SIEM告警疲劳约束。


关键结果

在保留测试集上,跨基线启发式方法和QuasarNix架构的性能。TPR报告为在FPR = 10⁻⁶下十次独立训练运行的均值±标准差。粗体标记最佳结果;星号(*)突出显示论文中讨论的模型。

基线

QuasarNix —— 表格模型(独热编码)

QuasarNix —— 序列模型(令牌嵌入)

要点: GBDT 在 FPR=10⁻⁶ 时实现了 60% 的 TPR——比签名(3.37%)高 18 倍——同时在商用硬件上仅需 14 秒训练。


对抗鲁棒性

Shell 逃避扰动

下表列出了攻击者工具包中的 Linux shell 逃避技术。第三列指示该技术是否能在 auditd 内核遥测标准化后存活——只有四个粗体条目会产生独特的 EXECVE 记录,构成真正的攻击面。

只有 15 种技术中的 4 种 能通过内核级标准化,并被用作对抗攻击空间。

逃避与对抗训练

评估了三种攻击家族——良性内容注入、shell 逃避扰动以及两者的混合:

  • 良性内容注入 使所有神经模型失效;GBDT 由于其特征重要性加权保持了 ≥93% 的准确率。
  • Shell 逃避扰动 在没有防御的情况下,在最大扰动预算下将 GBDT 和 CNN 的准确率降至 0%。
  • 对抗训练 使所有三种攻击类型在每个评估架构上均无效。

投毒鲁棒性

除了推理时逃避,我们还评估了训练时攻击:

标签翻转污染(0–20% 的训练标签被翻转):模型性能逐渐下降;GBDT 通过集成投票表现出固有的抵抗力,在高污染比例下仍保持功能。

后门攻击(0.01–1% 投毒比例,2–10 个令牌触发器):短触发器(2–4 个令牌)因在良性流量中普遍存在而无法安装可靠后门。最佳后门安装需要 ≥0.03% 投毒比例下的 6–10 个令牌触发器。

要点: 投毒攻击需要大量、统计上可检测的数据注入才能成功。GBDT 的集成机制无需对抗训练成本即可提供内在鲁棒性。


行业验证

本工作发布后,Google 在 CAMLIS 2025 发布了一个概念上一致的生产系统(arXiv:2512.08802):一个两阶段 YARA + ML 流水线,部署在数万个系统上,每天处理高达 2500 亿事件。该系统独立验证了本文提出的混合 ML for SIEM 检测范式和主动学习反馈循环,展示了其在工业规模上的可行性。


数据集与预训练模型

资源链接详情
数据集dtrizna/QuasarNix1,003,122 条命令 · 训练集 533k / 测试集 470k · Apache-2.0
预训练模型dtrizna/QuasarNixGBDT、随机森林、MLP、1D-CNN……
root@kitploit:~
from datasets import load_dataset
ds = load_dataset("dtrizna/QuasarNix")

仓库布局

root@kitploit:~
src/
  augmentation.py       基于规则与生成式数据合成
  evasion.py            白盒/黑盒对抗攻击
  models.py             模型定义(CNN、LSTM、Transformer、XGBoost……)
  preprocessors.py      分词器与特征构建器
  scoring.py            固定FPR下的评估指标

experiments/
  ablation_*.py         消融研究(分词器、词汇表大小、嵌入)
  adversarial_*.py      攻击与对抗训练流水线
  train_release_models.py  端到端训练脚本
  logs_*/               TensorBoard 运行记录、CSV 指标、模型检查点

data/
  signatures/           通过进化搜索生成的 Sigma 规则
  nix_shell/            原始良性命令语料库
  powershell/           跨平台命令样本

img/                    可发表级图表

环境设置

root@kitploit:~
uv venv                    # 创建 .venv(添加 --python 3.11 以指定解释器)
source .venv/bin/activate
uv sync                    # 从 pyproject.toml 安装依赖

引用

root@kitploit:~
@article{trizna2025quasarnix,
  author    = {Trizna, Dmitrijs and Demetrio, Luca and Biggio, Battista and Roli, Fabio},
  title     = {Robust Large-Scale Detection of Living-Off-the-Land Reverse Shells via Data Synthesis},
  journal   = {ACM Transactions on Privacy and Security},
  year      = {2025},
  doi       = {10.1145/3807450},
  url       = {https://dl.acm.org/doi/10.1145/3807450}
}
下载工具
架构参数TPR @ FPR=10⁻⁶F1准确率AUC训练
签名(Sigma)1843.37%6.52%51.68%51.68%N/A
一类SVM(基于合法)1K0.00%82.87%79.33%79.33%10s
一类SVM(基于恶意)1K0.00%40.14%25.20%25.20%10s
1D-CNN(非增强, 不平衡)1K0.00%80.29%77.91%87.44%*15m
1D-CNN(非增强, 平衡)1K0.06%82.38%79.33%88.12%*29m
SLP(非增强)1K0.00%0.00%50.00%91.58%1h 12m
架构参数TPR @ FPR=10⁻⁶F1准确率AUC训练
随机森林1K42.23 ± 6.27%96.07%96.21%99.84%18s
GBDT (XGBoost)1K60.20 ± 8.22%89.92%90.84%99.89%14s
MLP(无嵌入)264K54.16 ± 2.14%*94.00%94.34%99.80%18m
架构参数TPR @ FPR=10⁻⁶F1准确率AUC训练
MLP(嵌入)297K10.76 ± 17.32%67.70%75.60%89.15%18m
LSTM318K21.52 ± 23.66%64.16%74.05%99.75%24m
1D-CNN301K46.42 ± 32.67%*85.97%88.20%99.99%29m
1D-CNN + LSTM316K20.48 ± 22.08%58.92%71.06%98.21%29m
1D-CNN + LSTM + 注意力402K17.19 ± 22.59%62.53%73.08%98.46%26m
Transformer(均值池化)335K0.00 ± 0.00%83.39%86.07%98.78%1h 18m
Transformer(CLS令牌)335K0.00 ± 0.00%78.55%*82.67%99.38%1h 30m
Transformer(注意力池化)335K0.00 ± 0.00%87.82%89.41%98.85%1h 24m
操作功能示例被 auditd 保留
'ba's'h -i否
"ba"s"h -i否
\ba\s\h -i否
$@ba$@sh -i否
[char]ba[s]h -i否
{form}{bash,-i}否
IFS 变量bash${IFS}-i否
空变量bas${u}h -i否
伪命令bas$(u)h -i否
Base64echo c2ggLWk= | base64 -d | sh否
十六进制echo \x73\x68 \x20\x2d\x69 | sh否
标志篡改bash -x -li是
十进制 IPping 2130706433是
二进制重命名cp bash a; a -i是
无效代码mkfifo a; id; cat a是