ai-ml-attacks
This skill should be used when the user asks about "AI security", "ML pipeline attacks", "prompt injection", "model deserialization", "unsafe model loading",…
This skill should be used when analyzing multi-service architectures, frontend-backend interactions, microservices, or when looking for vulnerabilities that span multiple components. Use when the user asks about "cross-component", "frontend to backend", "service interaction",
$ npx -y skills add allsmog/vuln-scout --skill cross-component --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/cross-componentContext preview
The summary Claude sees to decide when to auto-load this skill.
This skill should be used when analyzing multi-service architectures, frontend-backend interactions, microservices, or when looking for vulnerabilities that span multiple components. Use when the user asks about "cross-component", "frontend to backend", "service interaction",
name: cross-component description: This skill should be used when analyzing multi-service architectures, frontend-backend interactions, microservices, or when looking for vulnerabilities that span multiple components. Use when the user asks about "cross-component", "frontend to backend", "service interaction", "internal service access", or "multi-service vulnerabilities".
Analyze how components interact and identify vulnerabilities that span service boundaries.
Single-component analysis misses:
# Docker Compose find . -name "docker-compose*.yml" -o -name "docker-compose*.yaml" # Supervisord find . -name "supervisord.conf" -o -name "supervisor*.conf" # Kubernetes find . -name "*.k8s.yaml" -o -name "deployment*.yaml" -o -name "service*.yaml" # PM2 find . -name "ecosystem.config.js" -o -name "pm2*.json"
# From docker-compose: services, ports, networks grep -E "^\s+\w+:|ports:|expose:|depends_on:|networks:" docker-compose.yml # From supervisord: programs and commands grep -E "^\[program:|command=" supervisord.conf # Internal-only services (not exposed externally) grep -E "127\.0\.0\.1:|localhost:" docker-compose.yml supervisord.conf
## Service Topology | Service | Port | Exposed | Language | Entry Points | |---------|------|---------|----------|--------------| | frontend | 1337 | ✅ External | Next.js | / | | backend | 3000 | ❌ Internal | Flask | /api/* | | redis | 6379 | ❌ Internal | - | - | ## Network Diagram
Internet → [1337] Next.js → [3000] Flask → [6379] Redis ↓ (Host header SSRF possible)
# Does backend trust frontend headers? grep -rn "X-User-ID\|X-Auth\|X-Forwarded\|X-Real-IP" --include="*.py" --include="*.go" # Does backend skip auth for internal requests? grep -rn "localhost\|127\.0\.0\.1\|internal" --include="*.py" --include="*.go" | grep -i "auth\|skip\|bypass"
# Find internal API calls grep -rn "fetch\|requests\.\|http\.get" --include="*.ts" --include="*.py" | grep -E "localhost|127\.0\.0\.1|internal" # Check for hardcoded service tokens grep -rn "SERVICE_TOKEN\|INTERNAL_API_KEY\|X-Internal" --include="*.ts" --include="*.py" --include="*.env*"
**Pattern**: External service has SSRF, internal service has high-impact vulnerability
# Step 1: Find SSRF in external service grep -rn "redirect\|fetch\|requests\." --include="*.ts" --include="*.tsx" front-end/ # Step 2: Find sinks in internal service grep -rn "render_template_string\|eval\|exec\|deserialize" --include="*.py" backend/ # Step 3: Check if SSRF can reach internal sink # - Same network/container? # - Internal port accessible? # - User input reaches sink?
**Pattern**: Frontend sets headers that backend trusts blindly
# Frontend setting user headers grep -rn "X-User\|X-Auth\|headers.*user" --include="*.ts" front-end/ # Backend trusting headers grep -rn "request\.headers\[" --include="*.py" backend/ | grep -v "Authorization"
**Pattern**: Frontend and backend share DB, one has SQLi
# Find database connection strings grep -rn "DATABASE_URL\|POSTGRES\|MYSQL\|MONGO" --include="*.env*" # If same DB, check both services for injection grep -rn "query\|execute\|rawQuery" --include="*.ts" --include="*.py"
## Attack Chain: [Name] **Severity**: CRITICAL/HIGH/MEDIUM **Components**: 1. [Service A] - [Vulnerability] at [location] 2. [Service B] - [Vulnerability] at [location] **Attack Flow**: 1. Attacker sends request to [external service] 2. [Vulnerability 1] causes [effect] 3. [Effect] reaches [internal service] 4. [Vulnerability 2] is triggered 5. Impact: [RCE/Data Breach/etc.] **Evidence**: - `frontend/serverActions.tsx:15` - redirect() with Host header control - `backend/routes.py:87` - render_template_string() with user input - `supervisord.conf` - both services on same network
Next.js (port 1337, external)
│
│ Server Action redirect()
│ + attacker Host header
▼
Attacker Server
│
│ 302 Redirect to internal
▼
Flask (port 3000, internal)
│
│ render_template_string()
│ with user input
▼
RCE via Jinja2 SSTIReact (external)
│
│ GraphQL query
▼
Express (external)
│
│ NoSQL injection in query
▼
MongoDB
│
│ Data exfiltration
▼
Credential theftAPI Gateway (external)
│
│ Message to queue
▼
Message Queue (internal)
│
│ Deserialization
▼
Worker Service (internal)
│
│ Command injection
▼
RCEAI-powered whitebox penetration testing plugin for Claude Code. 9 languages, 22 skills, 7 autonomous agents. STRIDE threat modeling, OWASP 2025 coverage, polyglot monorepo support.
Repo: allsmog/vuln-scout
This skill should be used when the user asks about "AI security", "ML pipeline attacks", "prompt injection", "model deserialization", "unsafe model loading",…
This skill should be used when the user asks about "business logic", "workflow vulnerability", "trust boundary", "state machine", "authorization bypass",…
This skill should be used when the user asks about "cache poisoning", "web cache deception", "CDN cache", "proxy cache", "nginx cache", "varnish", "cache key…
This skill should be used when the user asks about "cloud security", "AWS security", "GCP security", "Azure security", "Kubernetes security", "IMDS", "instance…
This skill should be used when the user asks about "compliance mapping", "PCI-DSS", "HIPAA", "SOC 2", "NIST CSF", "regulatory requirements", "compliance…
This skill should be used when the user asks about "Code Property Graph", "CPG analysis", "Joern queries", "CPGQL", "data flow verification", "taint tracking…