agentsclimarketplace

Security regression tests

Skill ShieldNet-360/secure-vibe/skills/security-regression-tests

SecureVibe — prevention-first security for AI-written code. Signed SKILL.md knowledge that makes AI coding assistants write secure code at generation time, plus a deterministic CI gate. Offline · keyless · Ed25519-signed. By ShieldNet360.

Install
npx -y skills add ShieldNet-360/secure-vibe --skill security-regression-tests

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Lock every confirmed security fix with a deterministic regression test so CI re-verifies it on every build (no live probing)

SKILL.md

4.0 KB, as published. Nobody here has run it

Security Regression Tests

Rules (for AI agents)

ALWAYS

  • For every confirmed and fixed security finding, add a regression test that pins the secure behaviour, and commit it. The test is the durable, CI-side verification — it re-checks the fix on every build, unlike a one-off live probe.
  • Structure each test as attack + control: the attack input now yields the secure outcome (403/404, rejected, escaped, not evaluated, no exec), AND a legitimate input still succeeds. Both assertions matter — the attack half guards the vulnerability; the control half catches an over-correction that breaks the feature.
  • Map the test to the finding's class:
    • IDOR/BOLA → authenticate as A, request B's resource id → 403/404.
    • Broken auth → forged / expired / none-alg token → 401.
    • Mass assignment → POST an extra privileged field → it is ignored, never persisted.
    • SQLi / XSS / SSTI → the payload is parameterized / escaped / not evaluated.
    • Secret → the secret is absent from the built artifact and loaded from the env.
  • Prefer the smallest tier that proves it: a unit test on the handler/guard covers most authz/validation; use an integration test only when the bug lives at a boundary (routing, middleware order, ORM).
  • Name and place the test so a reviewer sees it guards a security fix (test_idor_orders_cross_tenant_403) and reference the finding.

NEVER

  • Close a confirmed finding without a regression test — "fixed by inspection" rots; the next refactor silently reintroduces it.
  • Assert only the happy path — without the attack assertion the test does not guard the bug at all.
  • Put a live-target probe inside CI as the verification. CI must be deterministic and offline; the regression test replaces the probe. Live probing stays an in-session, agent-driven activity ([[dynamic-verification]]).
  • Hardcode a real secret/token into a fixture to exercise a secret check — use an obviously-fake sentinel.

KNOWN FALSE POSITIVES

  • A refuted candidate (not a real bug) needs no regression test — do not add tests for non-issues.
  • Config / infra findings (a Dockerfile USER, a workflow permission, a bad dependency) are locked by the scanner gate in CI (secure-vibe audit --fail-on), not a unit test — there, the gate is the regression check.

Context (for humans)

Verification splits by where it runs. In an interactive session an agent can confirm a finding live against a running target ([[dynamic-verification]]). CI has no agent and must never send attack traffic — so the CI-side verification is a regression test: when you fix a finding you also write a deterministic test that replays the attack input and asserts the secure outcome, plus a control that the feature still works. That test runs on every build, turning a one-time confirmation into a permanent guard.

This is how "VERIFY" shows up in a pipeline: not a probe, but a committed test that your normal suite and the secure-vibe audit gate enforce. A confirmed bug that ships without one is a bug waiting to come back.

References

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.