Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
QuasarNix — 機械学習によるリバースシェル検出 | Kitploit
ツール/GitHubGitHub/dtrizna/quasarnix
防御ツールペイロード生成シェルコード機械学習侵入検知論文と研究学習と教育異常検知敵対的攻撃
GitHubdtrizna/quasarnix

QuasarNix

機械学習によるリバースシェル検出

リポジトリを見る
722ヶ月前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有

QuasarNix: 逆襲耐性を持つLiving-off-the-Landリバースシェル検出

Dmitrijs Trizna · Luca Demetrio · Battista Biggio · Fabio Roli

Paper arXiv Dataset Models


概要

Linuxの既存ツール悪用(Living-off-the-Land, LOTL) リバースシェルは、正規のバイナリ(bash、python、ncなど)を悪用して隠密な送信接続を確立するため、シグネチャベースの検出は新たな亜種や回避試行に対して信頼性が低くなります。QuasarNixは、この分野における2つの未解決のギャップに対処します。

  1. 公開されたMLベースのSIEM検出器がない — LOTLリバースシェル検出のための、プロダクション対応でオープンライセンスの最初のMLモデルをリリースします。
  2. 敵対的脆弱性 — 回避攻撃と毒入れ攻撃の下でモデルを評価し、試験されたすべての攻撃に耐える敵対的訓練済みチェックポイントを提供します。

本フレームワークは、34のリバースシェルテンプレートから100万コマンドの訓練コーパスを合成し、FPR = 10⁻⁶ の動作点で14のモデルアーキテクチャを評価します。これは実際のSIEMアラート疲労制約を反映しています。


主な結果

ベースラインヒューリスティックとQuasarNixアーキテクチャ全体での、保持テストセットにおける性能。TPRは、FPR = 10⁻⁶ における10回の独立した訓練実行の平均±標準偏差として報告されます。太字は最良の結果を示し、アスタリスク(*)は論文で議論されたモデルを強調します。

ベースライン

QuasarNix — テーブルモデル(One-Hotエンコーディング)

QuasarNix — シーケンスモデル(トークン埋め込み)

要点: GBDTは FPR = 10⁻⁶ で60%のTPR を達成 — シグネチャ(3.37%)の18倍 — しかも汎用ハードウェア上で14秒の訓練で実現。


敵対的ロバスト性

シェルエスケープ摂動

以下の表は、攻撃者のツールキットに含まれるLinuxシェルエスケープ手法を一覧にしたものです。3列目は、その手法が auditd カーネルテレメトリ正規化を生き残るかどうかを示します。太字の4つのエントリのみが、異なる EXECVE レコードを生成し、真の攻撃対象領域を構成します。

カーネルレベルの正規化を生き残るのは 15手法中わずか4 であり、これらが敵対的攻撃空間として使用されます。

回避と敵対的訓練

3つの攻撃ファミリーが評価されました — 良性コンテンツ注入、シェルエスケープ摂動、およびそのハイブリッドです。

  • 良性コンテンツ注入はすべてのニューラルモデルを壊滅させますが、GBDTは特徴重要度の重み付けにより≥93%の精度を維持します。
  • シェルエスケープ摂動は、防御なしの場合、最大摂動予算でGBDTとCNNの精度を0%に低下させます。
  • 敵対的訓練は、評価されたすべてのアーキテクチャにおいて、3つの攻撃タイプすべてを無効にします。

毒入れロバスト性

推論時の回避に加えて、訓練時の攻撃も評価します。

ラベル反転汚染(訓練ラベルの0~20%を反転):モデルは徐々に性能が低下します。GBDTはアンサンブル投票により固有の耐性を示し、高い汚染率でも機能し続けます。

バックドア攻撃(毒比率0.01~1%、トリガートークン2~10):短いトリガー(2~4トークン)は、良性トラフィックでの出現頻度が高いため、信頼性の高いバックドアの埋め込みに失敗します。最適なバックドア埋め込みには、0.03%以上の毒比率で6~10トークンのトリガーが必要です。

要点: 毒入れ攻撃が成功するには、統計的に検出可能な大規模なデータ注入が必要です。GBDTのアンサンブルメカニズムは、敵対的訓練コストなしで固有のロバスト性を提供します。


産業界での検証

本研究の公開後、GoogleはCAMLIS 2025(arXiv:2512.08802)において、概念的に一致するプロダクションシステムを発表しました。これは、数万のシステムに展開され、1日あたり最大2500億イベントを処理する2段階のYARA + MLパイプラインです。このシステムは、本稿で提案されたハイブリッド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
One-Class SVM(正規のみ)1K0.00%82.87%79.33%79.33%10s
One-Class 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 + Attention402K17.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いいえ
Hexecho \x73\x68 \x20\x2d\x69 | shいいえ
フラグ改ざんbash -x -liはい
10進IPping 2130706433はい
バイナリリネームcp bash a; a -iはい
無駄コードmkfifo a; id; cat aはい