Caspian Discord
TryCaspian/caspian-sdk
Post a Discord message via Caspian to a channel snowflake id.
Learn from public breach disclosures — extract the audit question each one implies and check your own stack.
$ npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install briiirussell/cybersecurity-skills breach-patterns --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/briiirussell/cybersecurity-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/breach-patterns .claude/skills/breach-patterns && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "breach-patterns" agent skill from https://github.com/briiirussell/cybersecurity-skills/tree/main/skills/breach-patterns into .claude/skills/breach-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "breach-patterns", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/briiirussell/cybersecurity-skills/tree/main/skills/breach-patternsType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install briiirussell/cybersecurity-skills breach-patterns --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/briiirussell/cybersecurity-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/skills/breach-patterns .agents/skills/breach-patterns && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "breach-patterns" agent skill from https://github.com/briiirussell/cybersecurity-skills/tree/main/skills/breach-patterns into .agents/skills/breach-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "breach-patterns", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install briiirussell/cybersecurity-skills breach-patterns --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/briiirussell/cybersecurity-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/skills/breach-patterns .cursor/skills/breach-patterns && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "breach-patterns" agent skill from https://github.com/briiirussell/cybersecurity-skills/tree/main/skills/breach-patterns into .cursor/skills/breach-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "breach-patterns", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/briiirussell/cybersecurity-skills.git --path skills/breach-patterns--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install briiirussell/cybersecurity-skills breach-patterns --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/briiirussell/cybersecurity-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/skills/breach-patterns .gemini/skills/breach-patterns && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "breach-patterns" agent skill from https://github.com/briiirussell/cybersecurity-skills/tree/main/skills/breach-patterns into .gemini/skills/breach-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "breach-patterns", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install briiirussell/cybersecurity-skills breach-patternsInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/briiirussell/cybersecurity-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/skills/breach-patterns .github/skills/breach-patterns && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "breach-patterns" agent skill from https://github.com/briiirussell/cybersecurity-skills/tree/main/skills/breach-patterns into .github/skills/breach-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "breach-patterns", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install briiirussell/cybersecurity-skills breach-patterns --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/briiirussell/cybersecurity-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/skills/breach-patterns .opencode/skills/breach-patterns && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "breach-patterns" agent skill from https://github.com/briiirussell/cybersecurity-skills/tree/main/skills/breach-patterns into .opencode/skills/breach-patterns/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "breach-patterns", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
breach-patternsLearn from public breach disclosures — extract the audit question each one implies and check your own stack.
Breach Patterns is an agent skill from briiirussell/cybersecurity-skills. Learn from public breach disclosures — extract the audit question each one implies and check your own stack. Capital One IMDS abuse, LastPass vault exfiltration, Okta Lapsus$, Snowflake credential reuse, MOVEit, SolarWinds, Equifax, Target POS, Codecov, Uber, Twilio — what would you check now if your boss said 'could that happen to us?' Use when the user mentions 'breach analysis,' 'lessons learned,' 'security postmortem,' 'breach patterns,' 'breach lessons,' 'has this happened to us,' 'apply breach lessons,'…
Its SKILL.md is about 3.5k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Databases, covering Retrospectives, Data warehousing and Runbooks and postmortems. It works with Snowflake, Okta and Twilio. The repository describes itself as: Cybersecurity skills for AI coding agents (Claude Code, Cursor, Codex). The licence is MIT.
4 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit c9ade03. It shows what the files ask for, not the result of running them.
Pre-approves these tools, so the agent can use them without asking each time:
ReadGrepGlobBashWebSearchWebFetchFrom allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md (its code samples are markdown).
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Breach Patterns loads about 3.5k tokens when it runs. Until then it costs about 166 tokens; SKILL.md has 1,733 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check noted patterns worth knowing about, such as sudo or a known installer.
allowed-tools: Read, Grep, Glob, Bash, WebSearch, WebFetchAutomated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from briiirussell/cybersecurity-skills at commit c9ade03, republished under its MIT licence (© briiirussell). 1,733 words, ~3,518 tokens.
.claude/skills/breach-patterns/SKILL.md (or your agent's skills folder).The inverse of incident-triage. That skill is "we're on fire, what now." This skill is "go read the breach writeups, extract the audit question each one implies, and check your own stack."
Breaches catalogued here are public, well-documented, and pattern-bearing. Each pattern surfaces a control or check that often falls between OWASP categories — IMDS abuse, supplier credential blast radius, secrets-in-CI, single-sign-on lateral movement, log-tampering pre-breach. These are the controls people add after their first incident; reading other people's breaches is cheaper than writing your own.
Cross-references: every audit skill in this repo. Use this skill to surface "have we considered X?" questions, then pivot to the relevant audit skill for the deep dive. When a breach pattern surfaces a regulatory implication — health data exposure, payment card data exposure, PII exposure — also reach for hipaa-audit, pci-audit, or privacy-engineering to understand the regulatory clock and notification obligations that come with that breach class.
For each breach pattern below:
The output is a "breach-pattern coverage" document — not a fixed report, an evergreen checklist you re-run against your evolving stack.
What happened: A misconfigured WAF allowed SSRF. An attacker used SSRF to reach the EC2 instance metadata service (IMDSv1, no token requirement), pulled temporary IAM credentials, and used them to enumerate and exfiltrate S3 buckets containing 100M+ records.
Audit question: Does any service that takes a URL from user input also have IAM credentials reachable via IMDS?
Check:
MetadataOptions.HttpTokens: required) — see cloud-auditowasp-audit A10 bypass matrix (especially the cloud metadata endpoints row: 169.254.169.254, metadata.google.internal, 169.254.170.2)What happened: Attackers compromised SolarWinds' build pipeline and inserted a backdoor (Sunburst) into the Orion product. Customers who installed legitimate Orion updates received the backdoored binary. The backdoor enabled lateral movement into customer networks, including the US federal government.
Audit questions:
Check:
iam-audit for cross-account trust patternsWhat happened: Attackers initially compromised an engineer's home computer via a vulnerable third-party media plugin. That gave them access to the engineer's corporate vault. Months later, they used that access to exfiltrate customer vault data — including unencrypted URLs that helped target customers for phishing.
Audit questions:
Check:
iam-audit)What happened: Attackers obtained credentials for a third-party support engineer (Sitel). They spammed the engineer with push-notification MFA prompts until the engineer approved one out of habit / annoyance. They then used the support engineer's access to view (but not modify) some Okta customer tenants.
Audit questions:
Check:
iam-auditWhat happened: Attackers used credentials stolen from infostealer malware on personal devices to log into Snowflake customer environments (which had no MFA enforced). They exfiltrated data from Ticketmaster, AT&T, Santander, and others. Snowflake itself wasn't breached — customers were.
Audit questions:
Check:
iam-auditWhat happened: Cl0p ransomware group exploited an SQL injection zero-day (CVE-2023-34362) in Progress MOVEit Transfer. They exfiltrated data from hundreds of customers — many of whom were transferring sensitive HR / financial / health data via MOVEit. Patches arrived after the exploitation campaign was already running.
Audit questions:
Check:
siem-detection)vuln-research)What happened: A flaw in Codecov's Docker image creation process let attackers extract a credential. They modified Codecov's Bash uploader script to exfiltrate environment variables from every CI run using Codecov. CI environments leak: AWS keys, Stripe keys, npm tokens, GitHub tokens.
Audit questions:
Check:
secrets-audit and iam-auditWhat happened: Attackers social-engineered Twitter employees to access an internal admin tool with broad customer-account powers. They used it to hijack high-profile accounts and run a Bitcoin scam.
Audit questions:
Check:
iam-auditWhat happened: Attackers exploited unpatched Apache Struts CVE-2017-5638 (a known vulnerability with a 2-month-old patch available). They were inside for 76 days before detection, exfiltrating 147M credit records. Patch had been available; vulnerability scanning didn't find it because scan target lists were stale.
Audit questions:
Check:
vuln-research)siem-detectionWhat happened: Attackers compromised a contractor's credentials, used MFA-prompt-fatigue to get in, and then explored. They found PowerShell scripts on a network share containing privileged credentials, and from there accessed AWS, GCP, Google Workspace, and Slack. Among the goodies: a Privileged Access Management tool that the attackers could use to grant themselves more access.
Audit questions:
Check:
secrets-auditThis skill should grow with each major public breach. Process:
Good post-mortem sources:
# Breach Pattern Coverage Assessment
## Environment: [name]
## Date: [date]
### Coverage status
| Pattern | Audit question | Status | Owner |
|---------|----------------|--------|-------|
| IMDS abuse (Capital One) | SSRF-to-metadata reachable? | Clean | sec |
| Supplier blast radius (SolarWinds) | CI/CD blast radius? | Gap — plan attached | platform |
| ... | | | |
### Gaps with plans
[For each Gap row above — what's the plan, by when]
### Patterns not yet evaluated
[Patterns where you don't yet have data to mark Clean / Gap]This is a quarterly-rerunable document — not one-and-done. Industry patterns evolve.
incident-triage© briiirussell, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in skills/breach-patterns of briiirussell/cybersecurity-skills.
Open the folder on GitHubat commit c9ade03
Breach Patterns next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Breach Patterns this skillbriiirussell/cybersecurity-skills | 413 | — | ~3.5k | Automated safety check: Notes | MIT | |
| Caspian DiscordTryCaspian/caspian-sdk | 973 | — | ~323 | Automated safety check: Pass | Apache-2.0 | |
| Simplywallstgauss314/skills | 248 | — | ~2.9k | Automated safety check: Pass | MIT | |
| Write Script Snowflakewindmill-labs/windmill | 18k | — | ~2.2k | Automated safety check: Pass | Custom licence | |
| Pure Lsp Execute Parallelfinos/legend-engine | 113 | — | ~927 | Automated safety check: Pass | Apache-2.0 | |
| Plot Structuredanjdewhurst/story-skills | 286 | 1 repos | ~4k | Automated safety check: Notes | MIT |
TryCaspian/caspian-sdk
Post a Discord message via Caspian to a channel snowflake id.
gauss314/skills
Data financiera de 120K+ stocks globales: snowflake scores, valuation, financial health, dividend analysis, insider transactions.
windmill-labs/windmill
MUST use when writing Snowflake queries. An agent skill from windmill-labs/windmill.
finos/legend-engine
Runs 2 to 30 Pure functions or tests concurrently on the warm LSP daemon via pure-lsp execute-parallel, or every test in a package or .pure file with --package/--source.
danjdewhurst/story-skills
This skill should be used when the user asks to "create a plot arc", "story structure", "add a plot point", "story timeline", "track foreshadowing", "pacing", "sagging middle", "act structure"…
adobe/skills
Use this when converting an AI-generated static HTML page (Stardust, Mobirise, Relume, Lovable, v0, Figma-derived, etc.) into an Edge Delivery Services page while preserving the original design and…
briiirussell/cybersecurity-skills
Apply the NIST AI Risk Management Framework (AI RMF 1.0) and adjacent guidance to AI / ML systems — model lifecycle governance, fairness and bias evaluation, robustness, transparency…
briiirussell/cybersecurity-skills
Audit REST, GraphQL, and RPC APIs against the OWASP API Security Top 10 (2023).
briiirussell/cybersecurity-skills
Audit cloud infrastructure (AWS, GCP, Azure) for misconfigurations, excessive permissions, and security gaps.
briiirussell/cybersecurity-skills
Audit container images, Dockerfiles, and Kubernetes manifests for misconfigurations, excessive privileges, exposed secrets, and runtime risks.
briiirussell/cybersecurity-skills
Audit cryptography implementation — algorithm choice, key sizes, KDF parameters, IV/nonce handling, signature verification, randomness, TLS configuration, and key rotation.
briiirussell/cybersecurity-skills
Map your security posture against the NIST Cybersecurity Framework 2.0 (Govern, Identify, Protect, Detect, Respond, Recover).
Learn from public breach disclosures — extract the audit question each one implies and check your own stack. Breach Patterns is an agent skill from briiirussell/cybersecurity-skills. Learn from public breach disclosures — extract the audit question each one implies and check your own stack.
Breach Patterns fits situations like: the user mentions breach analysis; lessons learned; security postmortem; breach patterns.
Run `npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a claude-code`. Or copy the skill folder (skills/breach-patterns in briiirussell/cybersecurity-skills) into .claude/skills/breach-patterns in your project. Claude Code loads it when a task matches its description.
Run `npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a codex`. Or copy the skill folder (skills/breach-patterns in briiirussell/cybersecurity-skills) into .agents/skills/breach-patterns in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add briiirussell/cybersecurity-skills --skill breach-patterns -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/breach-patterns, .gemini/skills/breach-patterns, .github/skills/breach-patterns and .opencode/skills/breach-patterns in your project.
SKILL.md names no scripts, command-line tools or credentials: Breach Patterns is instructions for the agent only. Our summary lists: Docker. Its frontmatter pre-approves these tools: Read, Grep, Glob, Bash, WebSearch, WebFetch.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found notes only (pre-approves every shell command (allowed-tools: bash)), nothing it rates as a warning. It is not a guarantee. Review the folder before installing.
Breach Patterns is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 3.5k tokens (SKILL.md is roughly 14k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Breach Patterns: Caspian Discord (TryCaspian/caspian-sdk, 973 stars), Simplywallst (gauss314/skills, 248 stars), Write Script Snowflake (windmill-labs/windmill, 18k stars) and Pure Lsp Execute Parallel (finos/legend-engine, 113 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
briiirussell (a GitHub user) maintains it in briiirussell/cybersecurity-skills, which has 413 GitHub stars. The repository holds 25 skills in this directory. The repository was last updated on May 27, 2026.
Source: briiirussell/cybersecurity-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.