agentsclimarketplace

Secure code review

Skill ShieldNet-360/secure-vibe/dist/claude-skills/.claude/skills/secure-code-review

Apply OWASP Top 10 and CWE Top 25 patterns during code generation and review — Applies to: when generating new code; when reviewing pull requests; when refactoring security-sensitive paths (auth, input handling, file I/O); when adding new HTTP handlers or endpointsFrom its SKILL.md

Install
npx -y skills add ShieldNet-360/secure-vibe --skill secure-code-review

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

  • 15 stars15 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.

SKILL.md

2.9 KB, 607 tokens by cl100k_base, as published. Nobody here has run it

<!-- Native skill bundle for Claude Code. Generated by `secure-vibe dev regenerate`. --> <!-- Do not edit by hand; the source of truth is skills/secure-code-review/SKILL.md. -->

Secure Code Review

Apply OWASP Top 10 and CWE Top 25 patterns during code generation and review

ALWAYS

  • Use parameterized queries / prepared statements for all database access. Never build SQL by string concatenation, even for "trusted" inputs.
  • Validate input at the trust boundary — type, length, allowed characters, allowed range — and reject before processing.
  • Encode output for the rendering context (HTML escape for HTML, URL encode for query params, JSON encode for JSON output).
  • Use the language's built-in cryptography library, never custom-rolled crypto. Prefer AES-GCM for symmetric encryption, Ed25519 / RSA-PSS for signatures, Argon2id / bcrypt for password hashing.
  • Use crypto/rand (Go), secrets module (Python), crypto.randomBytes (Node.js), or the platform CSPRNG for any random value involved in security (tokens, IDs, session keys).
  • Set explicit security headers on HTTP responses: Content-Security-Policy, Strict-Transport-Security, X-Content-Type-Options: nosniff, Referrer-Policy.
  • Use the principle of least privilege for file paths, database users, IAM policies, and process privileges.

NEVER

  • Build SQL/NoSQL queries by string concatenation with user input.
  • Pass user input directly to exec, system, eval, Function(), child_process, subprocess.run(shell=True), or any other command-execution path.
  • Trust client-side validation. Always re-validate server-side.
  • Use MD5 or SHA1 for any new security-sensitive purpose (passwords, signatures, HMAC). Use SHA-256 / SHA-3 / BLAKE2 / Argon2id instead.
  • Use ECB mode for any encryption, ever. Prefer GCM, CCM, or ChaCha20-Poly1305.
  • Use == for password comparison — use a constant-time comparison (hmac.compare_digest, crypto.timingSafeEqual, subtle.ConstantTimeCompare).
  • Allow user input to determine file paths without canonicalization and allowlist checks (defends against ../../../etc/passwd style path traversal).
  • Disable TLS certificate verification in production code — verify=False, InsecureSkipVerify: true, rejectUnauthorized: false.

KNOWN FALSE POSITIVES

  • Internal admin tools intentionally executing shell commands against trusted, fixed arguments are acceptable when documented and code-reviewed.
  • Cryptographic test vectors using MD5 / SHA1 for compatibility with documented protocols (e.g. legacy interop tests) are acceptable.
  • Constant-time comparison is overkill for non-secret comparisons (string equality in logs, tag matching).

What ships with it: 1 file

828 B alongside SKILL.md

Keep looking

Skills are one crate of 325,949. 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.