/ Directory / Playground / security-skills
● Community eth0izzle ⚡ Instant

security-skills

by eth0izzle · eth0izzle/security-skills

Defensive security skills for Claude Code — threat modeling, config review, dependency audits. For blue teams, not pentesters.

A collection of Claude Code skills oriented around defensive security work: reviewing IAM policies, checking dependency trees for known CVEs, producing threat models for new features, auditing Dockerfiles and k8s manifests for common misconfigurations.

Why use it

Key features

Live Demo

What it looks like in practice

security-skill.replay ▶ ready
0/0

Install

Pick your client

~/Library/Application Support/Claude/claude_desktop_config.json  · Windows: %APPDATA%\Claude\claude_desktop_config.json
{
  "mcpServers": {
    "security-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/eth0izzle/security-skills",
        "~/.claude/skills/security-skills"
      ],
      "_inferred": true
    }
  }
}

Open Claude Desktop → Settings → Developer → Edit Config. Restart after saving.

~/.cursor/mcp.json · .cursor/mcp.json
{
  "mcpServers": {
    "security-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/eth0izzle/security-skills",
        "~/.claude/skills/security-skills"
      ],
      "_inferred": true
    }
  }
}

Cursor uses the same mcpServers schema as Claude Desktop. Project config wins over global.

VS Code → Cline → MCP Servers → Edit
{
  "mcpServers": {
    "security-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/eth0izzle/security-skills",
        "~/.claude/skills/security-skills"
      ],
      "_inferred": true
    }
  }
}

Click the MCP Servers icon in the Cline sidebar, then "Edit Configuration".

~/.codeium/windsurf/mcp_config.json
{
  "mcpServers": {
    "security-skill": {
      "command": "git",
      "args": [
        "clone",
        "https://github.com/eth0izzle/security-skills",
        "~/.claude/skills/security-skills"
      ],
      "_inferred": true
    }
  }
}

Same shape as Claude Desktop. Restart Windsurf to pick up changes.

~/.continue/config.json
{
  "mcpServers": [
    {
      "name": "security-skill",
      "command": "git",
      "args": [
        "clone",
        "https://github.com/eth0izzle/security-skills",
        "~/.claude/skills/security-skills"
      ]
    }
  ]
}

Continue uses an array of server objects rather than a map.

~/.config/zed/settings.json
{
  "context_servers": {
    "security-skill": {
      "command": {
        "path": "git",
        "args": [
          "clone",
          "https://github.com/eth0izzle/security-skills",
          "~/.claude/skills/security-skills"
        ]
      }
    }
  }
}

Add to context_servers. Zed hot-reloads on save.

claude mcp add security-skill -- git clone https://github.com/eth0izzle/security-skills ~/.claude/skills/security-skills

One-liner. Verify with claude mcp list. Remove with claude mcp remove.

Use Cases

Real-world ways to use security-skills

Produce a STRIDE threat model for a new feature

👤 Security engineers, staff+ engineers owning a feature's security review ⏱ ~45 min advanced

When to use: Design review for a feature that touches user data, auth, or external networks.

Prerequisites
  • Feature design doc or architecture diagram — Paste into chat or point Claude at the file
  • Skill installed — git clone https://github.com/eth0izzle/security-skills ~/.claude/skills/security-skills
Flow
  1. Walk the system
    Use security-skills. Here's the design for [feature]. Enumerate trust boundaries and data flows.✓ Copied
    → Named trust boundaries, explicit data flow arrows
  2. Apply STRIDE
    For each boundary, call out Spoofing, Tampering, Repudiation, Info Disclosure, DoS, Elevation risks.✓ Copied
    → Table with threats scored, not generic 'consider XSS'
  3. Propose mitigations
    Rank the threats by likelihood * impact and propose concrete mitigations for the top 5.✓ Copied
    → Specific controls (rate limit, signed requests, audit log)

Outcome: A threat model doc ready for a security review meeting.

Pitfalls
  • STRIDE becomes checkbox theater — Demand concrete attacker stories — 'attacker with X wants Y, does Z'
Combine with: filesystem

Sweep a repo's dependencies for known CVEs

👤 Dev teams responding to a security advisory ⏱ ~30 min intermediate

When to use: A new CVE drops and you need to know where you're exposed.

Flow
  1. Point at the manifest
    Use security-skills. Audit package-lock.json for dependencies with known CVEs published in the last 90 days.✓ Copied
    → List of packages, advisory IDs, severity
  2. Triage by usage
    For each vulnerable dep, grep the codebase — is it actually reachable?✓ Copied
    → Reachable vs unreachable classification
  3. Draft an upgrade plan
    Plan the minimum-risk upgrade order so CI doesn't explode.✓ Copied
    → Ordered upgrade sequence with version pins

Outcome: A concrete patch plan — not 'run npm audit fix' and pray.

Pitfalls
  • Transitive dependencies missed — Use full lockfile, not just top-level manifest
Combine with: filesystem · github

Review Terraform and k8s manifests for common misconfigs

👤 Platform engineers, DevSecOps ⏱ ~30 min intermediate

When to use: Before merging IaC changes into main, or auditing what's already there.

Flow
  1. Point Claude at the IaC directory
    Use security-skills. Scan terraform/ for S3 buckets without encryption, IAM wildcards, public security groups.✓ Copied
    → File+line references with severity
  2. Get fixes
    For each finding, propose the minimal Terraform diff to fix it.✓ Copied
    → HCL snippets showing before/after

Outcome: PR-sized security fixes you can merge incrementally.

Pitfalls
  • False positives on intentional public assets — Tag resources that are intentionally public; the skill should skip them
Combine with: github · filesystem

Combinations

Pair with other MCPs for X10 leverage

security-skill + github

Post findings as PR comments automatically

Review this PR and leave line comments for each security finding.✓ Copied
security-skill + filesystem

Recursive scans across a monorepo

Walk the entire services/ tree and aggregate findings by service.✓ Copied

Tools

What this MCP exposes

ToolInputsWhen to callCost
threat_model system description Design-phase review 0
cve_audit lockfile path After a public CVE drops 0 (uses public advisory data)
iac_review directory path Pre-merge IaC audits 0
secret_scan path or diff Pre-commit or pre-push 0

Cost & Limits

What this costs to run

API quota
None built-in
Tokens per call
Moderate — depends on files inspected
Monetary
Free
Tip
Scope scans to specific directories; don't point at node_modules.

Security

Permissions, secrets, blast radius

Credential storage: None in skill itself
Data egress: None — skill is prompts; be aware inspected code goes to Claude API

Troubleshooting

Common errors and fixes

Skill suggests exploitation techniques

Re-prompt for defensive framing: 'as a defender, how do I prevent X'

Too many false positives on IaC scan

Provide context (prod vs staging; intentional public resources)

Missed a known vulnerability

Claude's knowledge cutoff may lag. Pair with a proper scanner (Trivy, Snyk) for authoritative CVE data.

Alternatives

security-skills vs others

AlternativeWhen to use it insteadTradeoff
Trivy / GrypeYou need an authoritative, up-to-date vulnerability databaseNo LLM reasoning — just raw scan output
tfsec / checkovSpecific IaC scanning with a curated rule setRule-bound; misses nuanced misconfigs

More

Resources

📖 Read the official README on GitHub

🐙 Browse open issues

🔍 Browse all 400+ MCP servers and Skills