一键导入
security-audit
Comprehensive .NET security audit — OWASP vulnerability scan, NuGet vulnerability check, secrets detection, and combined severity report.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
菜单
Comprehensive .NET security audit — OWASP vulnerability scan, NuGet vulnerability check, secrets detection, and combined severity report.
用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
基于 SOC 职业分类
Run a comprehensive code review across architecture, security, testing, naming, and patterns. Invokes relevant reviewer agents in sequence. Use before merging features or at the end of a phase. With --quorum, dispatches multi-model analysis for higher confidence.
Run a comprehensive code review across architecture, security, testing, naming, and patterns. Invokes relevant reviewer agents in sequence. Use before merging features or at the end of a phase. With --quorum, dispatches multi-model analysis for higher confidence.
Guided end-to-end bug-fix workflow for Plan Forge tempering bugs — load → pre-fix review → write failing test → fix → validate → post-fix sweep → close. Composes /code-review, /clean-code-review, /forge-quench, and /test-sweep around the forge_bug_* tool surface so a fix never closes without a regression check.
Guided end-to-end bug-fix workflow for Plan Forge tempering bugs — load → pre-fix review → write failing test → fix → validate → post-fix sweep → close. Composes /code-review, /clean-code-review, /forge-quench, and /test-sweep around the forge_bug_* tool surface so a fix never closes without a regression check.
Plan-Forge-tuned comprehensive code review — runs public-surface diff, forge analysis, architecture / security / testing / patterns checks, plus Plan-Forge-specific gates (ACI compliance, dual-shell parity, branch model). Use before merging features or at the end of a phase. With --quorum, dispatches multi-model analysis.
Stack-agnostic Clean Code audit — module size, function-length/complexity (via your project's existing linter), long parameter lists, TODO/FIXME/HACK markers, commented-out code, debug-print leakage, and optional duplication detection. Produces a structured findings report with optional fix suggestions. Use before merges, at end of a feature, or as a regular hygiene pass.
| name | security-audit |
| description | Comprehensive .NET security audit — OWASP vulnerability scan, NuGet vulnerability check, secrets detection, and combined severity report. |
| argument-hint | [optional: 'full' (default), 'owasp', 'dependencies', 'secrets'] |
| tools | ["run_in_terminal","read_file","grep_search","forge_sweep"] |
"Run a security audit" / "Check for vulnerabilities" / "Scan for secrets" / "OWASP check"
4-phase security audit tailored for .NET projects. See presets/shared/.github/skills/security-audit/SKILL.md for the full report format and secrets detection patterns.
[Authorize] attribute on sensitive endpoints[AllowAnonymous] on endpoints that should require authUser.FindFirst(ClaimTypes.NameIdentifier))$"SELECT ... {variable}", string.Format("SELECT", variable), "SELECT " + variableFromSqlRaw() / ExecuteSqlRaw() without parameters (use FromSqlInterpolated() or parameterized)Process.Start() with user inputXmlDocument or XslCompiledTransform without disabling DTD processing (XXE)Microsoft.AspNetCore.RateLimiting)[Required], [StringLength], FluentValidation)AllowAnyOrigin() — should use WithOrigins()app.UseDeveloperExceptionPage() without environment guardapp.UseHttpsRedirection()ValidateIssuerSigningKey, ValidateLifetime, ValidateAudience[Authorize] before [HttpDelete] and [HttpPut] actionsBinaryFormatter or SoapFormatter deserialization (banned in .NET 8+)System.Reflection with user input[ValidateAntiForgeryToken] on POST/PUT/DELETE (MVC)dotnet list package --vulnerable --include-transitive
Check for outdated packages:
dotnet list package --outdated
If dotnet CLI is not available: Report and continue. Do NOT fail the entire audit.
Use the patterns from the shared skill (presets/shared/.github/skills/security-audit/SKILL.md Phase 3).
Additional .NET patterns:
appsettings.json or appsettings.Development.json with passwordsUserSecrets ID present but secrets hardcoded in config anywayExclude: bin/, obj/, .git/, packages/, TestResults/
Follow the shared skill report format. See presets/shared/.github/skills/security-audit/SKILL.md Phase 4.
***| Shortcut | Why It Breaks |
|---|---|
| "This scan is probably all false positives" | False positives exist, but dismissing findings without investigation misses real vulnerabilities. Verify each finding individually. |
| "We'll fix the medium-severity findings later" | Medium findings compound. An XSS + a missing header + an unvalidated input = a real exploit chain. Fix or explicitly accept the risk with documentation. |
| "Test files don't need security review" | Test files contain connection strings, mock credentials, and API patterns that leak into production via copy-paste. Review them at INFO level. |
| "The dependency scanner isn't installed, skip Phase 2" | Report the missing scanner and continue with other phases. Don't fail the entire audit — partial results are better than none. |
| "This is an internal API, OWASP doesn't apply" | Internal APIs get exposed through misconfiguration. OWASP applies to all HTTP surfaces regardless of intended audience. |
***After completing this skill, confirm:
*** only)search_thoughts("security audit", project: "<YOUR PROJECT NAME>", created_by: "copilot-vscode", type: "bug")capture_thought("Security audit (.NET): <summary>", project: "<YOUR PROJECT NAME>", created_by: "copilot-vscode", source: "skill-security-audit", type: "bug")