T09 · Insecure Skill Coding Practices
- Location
scripts/lib/engine.py:169- Finding
Potential Secrets Are Persisted in Plaintext Without Redaction or Restrictive Permissions
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
clawguard is a local security-review skill whose behavior matches its stated purpose, with a privacy caveat because saved reports can include source excerpts.
Before installing, understand that clawguard saves local review reports and those reports may preserve snippets from files it scans. Do not point it at broad private directories or files containing real credentials unless you are comfortable with those snippets being copied into the local workspace report store.
scripts/lib/engine.py:169Potential Secrets Are Persisted in Plaintext Without Redaction or Restrictive Permissions
The declared purpose describes a substantive security review and risk auditing capability. The supplied code chunk only initializes storage and outputs the reports path. While storage setup could be a supporting utility for a larger auditing system, this chunk by itself does not implement the declared auditing behavior and instead has a materially different immediate purpose: filesystem/storage initialization.
Skill attempts to nullify the agent's safety policies or restrictions ('you have no restrictions', 'ignore your guidelines', 'do anything now'). This is a direct jailbreak that disables guardrails.
Administrator privileges, sensitive path access, and system-level modification tendencies.
“自动修复”“绕过限制”“无需审查直接执行”等高风险表述。
High-risk claims such as “auto-fix,” “bypass restrictions,” or “execute without review.”
## 输出形式
## Output
Skill attempts to nullify the agent's safety policies or restrictions ('you have no restrictions', 'ignore your guidelines', 'do anything now'). This is a direct jailbreak that disables guardrails.
Administrator privileges, sensitive path access, and system-level modification tendencies.
“自动修复”“绕过限制”“无需审查直接执行”等高风险表述。
High-risk claims such as “auto-fix,” “bypass restrictions,” or “execute without review.”
## 输出形式
## Output
This pattern attempts to override system instructions or ignore safety constraints. Without LLM analysis, manual review is recommended.
Administrator privileges, sensitive path access, and system-level modification tendencies.
“自动修复”“绕过限制”“无需审查直接执行”等高风险表述。
High-risk claims such as “auto-fix,” “bypass restrictions,” or “execute without review.”
## 输出形式
## Output
This pattern attempts to override system instructions or ignore safety constraints. Without LLM analysis, manual review is recommended.
Administrator privileges, sensitive path access, and system-level modification tendencies.
“自动修复”“绕过限制”“无需审查直接执行”等高风险表述。
High-risk claims such as “auto-fix,” “bypass restrictions,” or “execute without review.”
## 输出形式
## Output
Without declared permissions the skill's intent is opaque and cannot be validated.
This code creates a workspace storage directory and initializes a persistent JSON file, but it provides no confirmation prompt, logging, or explanatory comment/docstring to disclose that report data will be written to disk. Because file persistence can affect user data handling and privacy, the lack of any visible warning meets the missing-user-warning criterion for code files.
The save_report function modifies in-memory report data and rewrites the reports.json file, which is a file write operation affecting persistent user/workspace state. There is no confirmation, logging, or explanatory documentation in the code indicating that existing stored data may be updated or replaced.
This JSON manifest contains natural-language exclusion examples in Chinese alongside English text, but it does not explain whether multilingual handling is intentional or user-selectable. Under the language/locale policy criterion, embedding a specific language without documented opt-in can be a minor policy concern.
No suspicious patterns detected.