Skip to content
KitploitKITPLOIT
ToolsExploitsBlog
Log in
Einreichen
ToolsExploitsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

FeedsKontaktDatenschutz© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
AGAS — LLM-gesteuertes agentisches Framework für Group-Shilling-Angriffe, das Black-Box-Collaborative-Filtering-Empfehlungsrankings mithilfe adaptiver Multi-Rollen-Strategien manipuliert und dabei der Erkennung entgeht. | Kitploit
Tools/GitHubGitHub/phkhanhtrinh23/agas
Maschinelles LernenPapers & ForschungLernen & BildungKI-SicherheitAdversarial-Angriff
GitHubphkhanhtrinh23/agas

AGAS

LLM-gesteuertes agentisches Framework für Group-Shilling-Angriffe, das Black-Box-Collaborative-Filtering-Empfehlungsrankings mithilfe adaptiver Multi-Rollen-Strategien manipuliert und dabei der Erkennung entgeht.

Repository anzeigen
284vor 12 TagenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

Ein effizienter und effektiver agentischer Group-Shilling-Angriff auf Recommender-Systeme

arXiv visitors

Dies ist der offizielle Code zum Paper: "An Efficient and Effective Agentic Group Shilling Attack on Recommender Systems". Dieses Paper stellt AGAS vor, einen LLM-gesteuerten Shilling-Angriff gegen Black-Box-Collaborative-Filtering-Recommender. Ein Coordinator orchestriert einen Pool von Fake-User-Workern über eine Sequenz von Runden. In jeder Runde wählt der Coordinator eine von acht Strategien und weist jedem Worker eine Rolle zu. Die Worker entscheiden dann, welche Items sie bewerten, indem sie ihre eigene ReAct-artige Reasoning-Schleife verwenden.

AGAS pipeline


1. Repo-Übersicht

agent_attack_rs/
  bash/                           # Reviewer-friendly shell scripts (RQ1–RQ5)
  prompts/                        # Coordinator + per-role prompt templates
  scripts/run_agas.py             # Single entry point (--dataset --victim ...)
  src/agas/
    roles.py                      # Role enum {PR, SN, CA, IN} (paper symbols)
    signals.py                    # WorkerSignals (τ, γ, φ) + EnvSignals (ρ, Δρ, η, ξ, a)
    strategies.py                 # 8-strategy enum
    agents/                       # Coordinator + Worker policies
    simulation/                   # Episode runner (= AGAS algorithm outer loop)
    llm/                          # OpenAI / Ollama
    recsys/                       # Surrogate + 11-victim backends
    data/                         # Dataset loaders + preprocessing pipeline
  tests/                          # Pytest suite

2. Methodenrückblick

AGAS instanziiert vier Worker-Rollen (Papiersymbole in roles.py):

SymbolLangnameWas es tut
PRProfilerSichere Filler-Item-Bewertungen, um die Plattform zu sondieren und Bridge-Pools aufzubauen.
SNSniperPayload-Rolle; direkter Ziel-Push oder Bridge-Item-Promotion.
CACamouflageurStealth-Rolle; baut Vertrauen mit harmlos wirkender Aktivität wieder auf.
INInactiveKeine Aktion in dieser Runde (Cool-down oder Quarantäne).

In jeder Runde wählt der Coordinator genau eine von acht Strategien aus strategies.py (siehe method_strategies.tex):

  1. Victim Probe (S1_VICTIM_PROBE)
  2. Bridge Building (S2_BRIDGE_BUILDING, nur Graph-Opfer)
  3. Warm-up (S3_WARM_UP)
  4. First Push (S4_FIRST_PUSH)
  5. Silent Slowdown (S5_SILENT_SLOWDOWN)
  6. Profile Cleanup (S6_PROFILE_CLEANUP)
  7. Safe Replacement (S7_SAFE_REPLACEMENT)
  8. Main Attack (S8_MAIN_ATTACK)

Der Coordinator steuert diese Entscheidungen aus zwei Signalgruppen (signals.py):

  • Worker-Signale τ_{t,w}, γ_{t,w}, φ_{t,w} — Vertrauen, Risiko und ein struktureller Validator. Die Aktualisierungsgleichungen stimmen exakt mit method_coordinator.tex überein (eq:trust_update, eq:risk_update, eq:risk_decay, eq:profile_validator).
  • Umgebungssignale ρ^{(t)}, Δρ^{(t)}, η_t, ξ_t = (q_t, s_t), a_t — Rang, Rangbewegung, Akzeptanzrate, Unterdrückungssignal, Alarm-Flag. Der Verdachtswert q_t ist die mit 0,2 gewichtete Summe der fünf normalisierten Terme (d̂_t, δ̂_t, m̂_t, ŝ_t, g_t) aus eq:round_suppression_terms und eq:round_suppression_score.

Runden-Schleife (ASCII)

                ┌─────────────────────────────────────────────────┐
   t=0…T-1 ──►  │ 1. Observe ρ^{(t)}, update memory m_t           │
                │ 2. Update τ, γ, φ, η, ξ, a                       │
                │ 3. Coordinator picks Strategy ∈ {S1…S8}          │
                │    and assigns Role ∈ {PR, SN, CA, IN} per worker│
                │ 4. Workers act (filler / bridge / target items)  │
                │ 5. Validate + accept actions → ΔR̃^{(t+1)}        │
                │ 6. Refit / query victim → ρ^{(t+1)}              │
                └─────────────────────────────────────────────────┘
                          │
                          ▼
                   t* = argmin_t ρ^{(t)}, return R* = [R ; R̃^{(≤t*)}]

Die äußere Schleife ist in src/agas/simulation/episode.py implementiert und spiegelt algorithms/agas_end_to_end.tex wider.

3. Umgebung

KomponenteAnforderungGetestet mit
Python≥ 3.103.13.5
PyTorch≥ 2.1 (nur targets)2.11.0+cu128
CUDAoptional12.8
NumPy≥ 1.242.4.2
Pandas≥ 2.03.0.1
SciPy≥ 1.101.17.0
scikit-learn≥ 1.31.8.0
openai SDK≥ 1.122.21.0

PyTorch und CUDA werden nur für die Deep-Learning-Opfermodelle (Extra [targets]) benötigt. Die Kern-AGAS-Schleife und die regelbasierten / Surrogat-Pfade laufen auf der CPU ohne GPU-Abhängigkeit.

4. Installation

pip install -e .
# If you want to use the deep-learning victim models (LightGCN, NeuMF, …)
pip install -e '.[targets]'

Erforderliche Umgebungsvariablen:

VariableZweckStandard
OPENAI_API_KEYOpenAI Responses API-Schlüssel für die Coordinator-/Worker-LLMs.(nicht gesetzt → Fallback)
OPENAI_MODELAn OpenAI übergebener Modellname.gpt-5.1

4. Datensätze

Das Paper evaluiert auf sechs öffentlichen CF-Benchmarks (siehe experiment.tex):

KurznameQuelleNutzerElementeInteraktionenDownloadRohe Dateien ablegen in
ML-100KMovieLens 100K9431,682100,000GroupLensdata/ml-100k/
ML-1MMovieLens 1M6,0403,7061,000,209GroupLensdata/ml-1m/
Genome 2021MovieLens Tag Genome 202137,94184,6612,000,000 (begrenzt)GroupLensdata/genome2021/
NetflixNetflix Prize342,44517,4342,000,000 (begrenzt)Kaggledata/netflix/
DoubanDouban Movie28,05749,1768,085,679HKUSTdata/douban/
AmazonAmazon Reviews 2018998,65330,9642,000,000 (begrenzt)UCSDdata/amazon/
Tool herunterladen