SE

security-audit

Audits Rust projects for security vulnerabilities and dangerous code patterns.

Install

mkdir -p .claude/skills/security-audit-hiroshiyui && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/13334" && unzip -o skill.zip -d .claude/skills/security-audit-hiroshiyui && rm skill.zip

Installs to .claude/skills/security-audit-hiroshiyui

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Perform a project-wide security and safety audit of the 5thPlanet workspace.
76 charsno explicit “when” trigger
Advanced

Key capabilities

  • Audit dependencies for known RustSec advisories
  • Flag duplicate transitive dependencies
  • Verify `unsafe_code = "forbid"` lint is intact
  • Review `Bus` trait implementations for address arithmetic issues
  • Check for integer underflow in addressing modes
  • Confirm no `build.rs` executes network requests or untrusted binaries

How it works

The skill performs a multi-step audit including dependency analysis, unsafe code lint verification, static review of trust boundaries, and build-time checks to identify security and safety risks.

Inputs & outputs

You give it
Project workspace for 5thPlanet
You get back
Report of identified security risks with severity and remediation steps

When to use security-audit

  • Security audit for rust projects
  • Check for dependency vulnerabilities
  • Verify safe code linting

About this skill

When performing a security audit, always follow these steps:

  1. Audit dependencies — run cargo audit (install with cargo install cargo-audit if missing) against Cargo.lock to check for known RustSec advisories. Then run cargo tree --workspace --duplicates to flag duplicate transitive dependencies that could mask CVE fixes. Treat any unmaintained or yanked crate as a Medium finding even without a known vuln.

  2. Verify the unsafe-code lint is intact — the workspace Cargo.toml must keep [workspace.lints.rust] unsafe_code = "forbid". Grep for any per-crate #![allow(unsafe_code)] overrides; any that exist must carry a justification comment and a soundness argument. New unsafe blocks land as Critical findings until justified.

  3. Static review of trust boundaries — the only trust boundary in M1 is the Bus trait. Audit each Bus impl (notably sh2::harness::MemBus and any future Saturn bus) for:

    • Address arithmetic that could panic on hostile or out-of-range inputs (use wrapping_* and explicit bounds, never raw Vec indexing in production paths).
    • Integer underflow on pre-decrement / post-increment addressing modes.
    • Mutable state shared across CPU instances without documented synchronization (relevant once the Saturn bus and the dual SH-2 land).
  4. Static review of host-facing future code — for any code that will eventually touch the host (file I/O for CD images, save states, BIOS loading, SDL2 frontend), confirm:

    • File paths are validated and canonicalized before opening.
    • Image loaders bound their allocations (no Vec::with_capacity(untrusted_u32 as usize)).
    • Save-state deserialization uses a versioned format and rejects unknown versions.

    (Most of these don't exist yet — note the gap as a roadmap reminder rather than a finding.)

  5. Build-time / supply-chain check — confirm no build.rs in any workspace crate executes network requests or shells out to untrusted binaries. Confirm Cargo.lock is committed and matches the manifest.

  6. Report findings — document all identified risks grouped by category (Dependencies, Unsafe Code, Trust Boundaries, Host Boundary, Build/Supply Chain). Classify each by severity (Critical / High / Medium / Low) and provide concrete remediation steps. For each finding, cite the file path, line number, and the relevant audit advisory ID (when applicable).

When not to use it

  • When the request is for correctness bugs
  • When the request is for security holes
  • When the request is for performance issues

Prerequisites

cargo-audit

Limitations

  • It does not apply the fixes, only lists them
  • It explicitly excludes correctness bugs, security holes, and performance from its scope

How it compares

This audit focuses specifically on over-engineering and complexity, providing a targeted review for simplification and reduction of code, unlike a general code review.

Compared to similar skills

security-audit side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
security-audit (this skill)02moNo flagsAdvanced
codebase-cleanup-deps-audit24moNo flagsIntermediate
qa-security01moReviewIntermediate
dependency-audit04moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

You might also like

codebase-cleanup-deps-audit

sickn33

You are a dependency security expert specializing in vulnerability scanning, license compliance, and supply chain security. Analyze project dependencies for known vulnerabilities, licensing issues, outdated packages, and provide actionable remediation strategies.

26

qa-security

christopherlouet

Perform a security audit based on OWASP. Use when the user wants to verify security, look for vulnerabilities, or before a production deployment.

00

dependency-audit

hadsie

Audit Python dependencies for vulnerabilities, outdated

00

contrib-pr-review

homeassistant-ai

Review a contribution PR for safety, quality, and readiness. Checks for security concerns, test coverage, size appropriateness, and intent alignment. Use when reviewing external contributions.

14

verifier

oleyna80

Pre-merge quality gate. Use to verify code is ready to ship: route contracts (status, Content-Type, body), TypeScript, tests, CSP/CSRF headers, schema alignment, secret leak scan. Issues structured READY or BLOCKED verdict with file:line evidence. Read-only. Для верификации, проверки перед мержем, и

00

senior-security

davila7

Comprehensive security engineering skill for application security, penetration testing, security architecture, and compliance auditing. Includes security assessment tools, threat modeling, crypto implementation, and security automation. Use when designing security architecture, conducting penetration tests, implementing cryptography, or performing security audits.

3191

Search skills

Search the agent skills registry