Back to skill

Security audit

rust-best-practice

Security checks for vulnerabilities and agentic risk

Overview

This is a Rust best-practices reference skill with a broad Rust trigger, but I found no hidden execution, persistence, credential access, or data-exfiltration behavior.

Installers should be aware that this skill may load often in conversations that merely mention Rust-related terms, increasing context use. Otherwise, it appears to be normal Rust engineering guidance; still review any generated cargo commands or dependency changes before allowing an agent to run or apply them.

Vulnerability Patterns
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (5)

Vague Triggers

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The skill is configured to trigger on a very broad set of common Rust-related terms and instructs the agent to always load it proactively. This can cause unnecessary invocation in loosely related contexts, increasing prompt surface area, consuming context budget, and making the agent more susceptible to instruction precedence or indirect prompt-injection effects from unneeded skill content.

Content

No source excerpt is available for this finding.

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

Scanner excerpt · SKILL.md (reported line 30)May include surrounding context.

md
property-based testing (`proptest`/`quickcheck`), fuzzing, doctest, coverage | `references/08-testing-and-quality.md` |

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

Scanner excerpt · references/11-cli-and-systems-tools.md (reported line 79)May include surrounding context.

md
- [ ] Hand-rolled `std::env::args()` parsing instead of `clap` for anything beyond a single flag
- [ ] Errors/diagnostics printed to `stdout` instead of `stderr`, breaking pipeline composability
- [ ] ANSI color codes emitted unconditionally without checking TTY/`NO_COLOR`
- [ ] `process::Command` output/exit status never checked
- [ ] Hardcoded `/`-separated paths instead of `Path`/`PathBuf`
- [ ] Program always exits 0 regardless of actual success/failure

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

Scanner excerpt · references/12-project-structure-workspaces-and-dependencies.md (reported line 92)May include surrounding context.

md
- [ ] Hand-rolled `std::env::args()` parsing instead of `clap` for anything beyond a single flag
- [ ] Errors/diagnostics printed to `stdout` instead of `stderr`, breaking pipeline composability
- [ ] ANSI color codes emitted unconditionally without checking TTY/`NO_COLOR`
- [ ] `process::Command` output/exit status never checked
- [ ] Hardcoded `/`-separated paths instead of `Path`/`PathBuf`
- [ ] Program always exits 0 regardless of actual success/failure

Autonomous Decision Making

Medium
Category
Excessive Agency
Confidence
75% confidence
Finding

Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.

Content

Scanner excerpt · references/13-security-and-supply-chain.md (reported line 81)May include surrounding context.

md
- [ ] Hand-rolled `std::env::args()` parsing instead of `clap` for anything beyond a single flag
- [ ] Errors/diagnostics printed to `stdout` instead of `stderr`, breaking pipeline composability
- [ ] ANSI color codes emitted unconditionally without checking TTY/`NO_COLOR`
- [ ] `process::Command` output/exit status never checked
- [ ] Hardcoded `/`-separated paths instead of `Path`/`PathBuf`
- [ ] Program always exits 0 regardless of actual success/failure

Static analysis

No suspicious patterns detected.