security-regression-tests

security-regression-tests is a skill for Claude Code, Codex from ShieldNet-360/secure-vibe. It costs 91 tokens per session (1,760 once invoked), scanned B, original, MIT.

A set of practices for turning a fixed security bug into a permanent automated test. It covers authorization tests, timing-sensitive checks, and tests that verify the real result of an attack.

In plain words
What is it for?
Writing regression tests for access-control bugs, cross-account attacks, timing issues, and out-of-band effects. It helps prepare test data, prove the test fails without the fix, and run it reliably in continuous integration.
Why use it?
It prevents security fixes from silently breaking or tests from passing for the wrong reason. It also checks that valid users still work and that blocked actions cause no hidden side effects.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/shieldnet-360/secure-vibe/security-regression-tests
Any agent
npx skills add ShieldNet-360/secure-vibe --skill security-regression-tests
Clone the repo
git clone --depth 1 https://github.com/ShieldNet-360/secure-vibe

Made for: Claude Code, Codex.

Wrote 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.

agentmods badge for security-regression-tests

README.md
[![agentmods](https://agentmods.dev/badge/skills/shieldnet-360/secure-vibe/security-regression-tests.svg)](https://agentmods.dev/skills/shieldnet-360/secure-vibe/security-regression-tests)
Your own site
<a href="https://agentmods.dev/skills/shieldnet-360/secure-vibe/security-regression-tests"><img src="https://agentmods.dev/badge/skills/shieldnet-360/secure-vibe/security-regression-tests.svg" alt="Measured on agentmods" height="20"></a>
Per session 91 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,760 The whole file, excluding the scripts and references it only reads on demand.
Security scan B 1 finding. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5.1 $0.00091 $0.01760
Opus 5 $0.00046 $0.00880
Sonnet 5 $0.00018 $0.00352
Haiku 4.5 $0.00009 $0.00176

Measured 5d ago against content hash ce7a55a8a898, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-05, from the pricing page.

Security

Grade B, and why

security-regression-tests scanned grade B with 1 finding 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 5d 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.

Cloud metadata endpointmediumServer-side request forgery

One request to 169.254.169.254 can return temporary IAM credentials.

`http://169.254.169.254/latest/meta-data/` is a *live, reachable* address on a cloud

Downgraded: this mod is about security review, or the phrase is quoted, so it is likely naming the pattern rather than instructing it.

skills/security-regression-tests/SKILL.md · 125 lines

How it starts

The opening of the file, as written. The whole thing — 125 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Security Regression Tests

Rules (for AI agents)

ALWAYS

  • Prove the test fails without the fix. Revert the patch, or mutate the guard, and confirm the new test goes red — then restore. A test written after the fix can be vacuously green: wrong route, wrong fixture user, wrong assertion target, a typo in the payload. It will stay green forever and nobody will learn anything from it. This is the one step that distinguishes a guard from a decoration, and it is the one most often skipped.
  • Assert both directions: the attack input now yields the secure outcome, and a legitimate input still succeeds. A deny-only test passes equally well against an endpoint that is broken for everyone, so it will hold the line and tell you nothing when someone disables the feature entirely.
  • Assert the effect, not only the status code. A 403 proves the request was refused; it does not prove the write did not land somewhere else, that the record was not returned in a different shape, or that a queue message was not emitted. Check the state the attack was trying to reach.
  • Seed the fixtures the assertion depends on before writing it. A cross-tenant test needs two principals and two owned resources, deterministically created — if both test users end up in the same tenant, the deny assertion is untestable and passes for the wrong reason.
  • Make it deterministic and offline. Freeze the clock for expiry and TTL assertions, stub the HTTP client, dialer or resolver rather than reaching the network, fix random seeds, and avoid sleep-based timing assertions and state shared between tests. Note that a canonical SSRF payload such as http://169.254.169.254/latest/meta-data/ is a live, reachable address on a cloud CI runner, so the naive test both leaves the sandbox and returns a different verdict on a laptop.
  • Graduate a live proof-of-concept by keeping its shape and dropping its mechanism. dynamic-verification confirms some classes with a timing delta or an out-of-band callback, and neither survives in CI: replace the time-based payload with an assertion that the query was parameterized, and the callback with a stubbed dialer asserting no outbound request was attempted.
  • Put the test in a job that can block the merge. A committed test in a job that is continue-on-error, not a required check, or nightly-only is documentation. cicd-security owns the gate configuration itself.
  • Name it so a reviewer sees what it guards — test_idor_orders_cross_tenant_403 — and reference the finding in the test body or the commit, so the next person to see it fail knows what it is protecting rather than what it is blocking.

Read the full file on GitHub · 125 lines

Files

What ships with it

2 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

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.

  1. 5d ago First seen · 125 lines · 91 tokens per session scan B ce7a55a8a898

Subscribe to this mod's changes

security-regression-tests is a skill published in the GitHub repository ShieldNet-360/secure-vibe (22 stars, last pushed 22d ago), licensed MIT. It adds 91 tokens to every session and 1,760 once invoked, about $0.0005 per session on Opus 5. A static security scan graded it B with 1 finding (cloud metadata endpoint). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

smoke-test

Launch the app and hands-on verify that it works by interacting with it. Falls back to an existing integration test suite when there is no interactive surface in scope. Use when the user asks to "smoke test", "test it manually", "verify it works", "try it out", "run a smoke test", "check it in the browser", or "does…

tobihagemann/turbo · 88 tokens

web-system-tests

The web realization of the system-tests contract — browser-driven system tests with Playwright against a running frontend. Owns the project layout (tests/), the Playwright configuration (baseURL plus webServer, cross-engine projects), the role- and label-based selector policy, code coverage as an opt-in second run…

AdamBien/airails · 239 tokens

test-writer

Write thorough tests following TDD and BDD principles.

athola/skrills · 14 tokens

system-tests

Generic, composable conventions for system tests — black-box tests exercising the running system from the outside through its public surface. Defines the stack-neutral contract (no internals, environment coordinates as configuration, test isolation, total verdict reporting) and the taxonomy of expectation origins…

AdamBien/airails · 157 tokens

continuous-testing

Continuous test-driven development loop — after every code change, builds the project, starts the server, and runs Unit Tests, Integration Tests, and System Tests. Applies on top of microprofile-server skill. Use during development when you want full verification after each change. Triggers on "continuous testing"…

AdamBien/airails · 84 tokens

e2e-playwright

Use when writing end-to-end browser tests with Playwright. Covers resilient locators, auto-waiting, network interception, authentication reuse, parallelization, and eliminating flakiness.

nimadorostkar/Claude-Skills-collection · 43 tokens