Ae1
- Category
- analysis-evasion
- Confidence
- 100% confidence
- Finding
Referenced artifact was not completely inspected
- Content
md node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a local static scanner that reads user-specified skill files and reports security-pattern matches, with no evidence of hidden execution, exfiltration, persistence, or destructive behavior.
Install only if you want a local pattern-based scanner for OpenClaw skills. Run it on skill folders you intend to inspect, not broad personal directories, because it reads eligible files in the target path to analyze their contents.
Referenced artifact was not completely inspected
node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Referenced artifact was not completely inspected
node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Referenced artifact was not completely inspected
node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Referenced artifact was not completely inspected
node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Referenced artifact was not completely inspected
node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Referenced artifact was not completely inspected
node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Referenced artifact was not completely inspected
node scripts/scanner.js <path-to-skill> [--verbose] [--json] [--summary] [--ignore <path>] [--include-self]
Instructions found that direct the agent to transmit conversation context or user data to external services.
/webhook[s]?\s*[=:]\s*["'`]https?:\/\//gi,
/(?:send|post|upload|exfil|forward)\s+(?:to|data|content|file|secret|key|token)\s+(?:to\s+)?(?:https?:\/\/|external|remote)/gi,
],
description: 'Skill attempts to send data to external URLs',
networkRule: true,
},
{
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).
= {
critical: [
{
id: 'exfil-webhook',
name: 'Outbound data to external URL',
patterns: [
/(?:curl|wget|fetch|http\.request|axios|got)\s+[^\n]*(?:POST|PUT|PATCH)/gi,
/webhook[s]?\s*[=:]\s*["'`]https?:\/\//gi,
/(?:send|post|upload|exfil|forward)\s+(?:to|data|content|file|secret|key|token)\s+(?:to\s+)?(?:https?:\/\/|external|remote)/gi,
],
description: 'Skill attempts to send data to external URLs',
networkRule: true,
},
{
id: 'credential-access',
name: 'Credential/secret access',
patterns: [
/(?:cat|read|access|steal|copy|send|forward|exfil).*(?:\.ssh|authorized_keys|id_rsa|id_ed25519|\.env|credentials|secrets?\.|api[_-]?key|token|password)/gi,
/(?:private[_-]?key|secret[_-]?key|access[_-]?token)\s*(?:=|:|\s+is\s+)/gi,
],
description: 'Skill attempts to access credentials or secret files',
},
{
id: 'ignore-safety',
name: 'Override safety/system inst
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
/(?:cat|read|access|steal|copy|send|forward|exfil).*(?:\.ssh|authorized_keys|id_rsa|id_ed25519|\.env|credentials|secrets?\.|api[_-]?key|token|password)/gi,
/(?:private[_-]?key|secret[_-]?key|access[_-]?token)\s*(?:=|:|\s+is\s+)/gi,
],
description: 'Skill attempts to access credentials or secret files',
},
{
id: 'ignore-safety',
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.
},
{
id: 'ignore-safety',
name: 'Override safety/system instructions',
patterns: [
/(?:ignore|override|bypass|disregard|forget)\s+(?:your|all|any|previous|system|safety)\s+(?:instructions|rules|guidelines|prompt|constraints|guardrails)/gi,
/you\s+(?:are|must)\s+(?:now|no longer)\s+(?:a|an|my)\s+/gi,
This pattern attempts to override system instructions or ignore safety constraints. Without LLM analysis, manual review is recommended.
},
{
id: 'ignore-safety',
name: 'Override safety/system instructions',
patterns: [
/(?:ignore|override|bypass|disregard|forget)\s+(?:your|all|any|previous|system|safety)\s+(?:instructions|rules|guidelines|prompt|constraints|guardrails)/gi,
/you\s+(?:are|must)\s+(?:now|no longer)\s+(?:a|an|my)\s+/gi,
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).
patterns: [
/(?:cat|read|access|steal|copy|send|forward|exfil).*(?:\.ssh|authorized_keys|id_rsa|id_ed25519|\.env|credentials|secrets?\.|api[_-]?key|token|password)/gi,
/(?:private[_-]?key|secret[_-]?key|access[_-]?token)\s*(?:=|:|\s+is\s+)/gi,
],
description: 'Skill attempts to access credentials or secret files',
},
{
id: 'ignore-safety',
name: 'Override safety/system instructions',
patterns: [
/(?:ignore|override|bypass|disregard|forget)\s+(?:your|all|any|previous|system|safety)\s+(?:instructions|rules|guidelines|prompt|constraints|guardrails)/gi,
/you\s+(?:are|must)\s+(?:now|no longer)\s+(?:a|an|my)\s+/gi,
/(?:jailbreak|DAN|do anything now|roleplay as)/gi,
],
description: 'Skill attempts to override agent safety guidelines',
},
{
id: 'destructive-commands',
name: 'Destructive system commands',
patterns: [
/(?:rm\s+-rf\s+[\/~]|mkfs|dd\s+if=|:\(\)\s*\{|fork\s*
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.
patterns: [
/(?:ignore|override|bypass|disregard|forget)\s+(?:your|all|any|previous|system|safety)\s+(?:instructions|rules|guidelines|prompt|constraints|guardrails)/gi,
/you\s+(?:are|must)\s+(?:now|no longer)\s+(?:a|an|my)\s+/gi,
/(?:jailbreak|DAN|do anything now|roleplay as)/gi,
],
description: 'Skill attempts to override agent safety guidelines',
},
Without declared permissions the skill's intent is opaque and cannot be validated.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
/webhook[s]?\s*[=:]\s*["'`]https?:\/\//gi,
/(?:send|post|upload|exfil|forward)\s+(?:to|data|content|file|secret|key|token)\s+(?:to\s+)?(?:https?:\/\/|external|remote)/gi,
],
description: 'Skill attempts to send data to external URLs',
networkRule: true,
},
{
The script reads every included file in the supplied skill path using fs.readFileSync, which is a data-access operation over user-provided content. While the tool name and usage imply scanning, there is no explicit user-facing warning, prompt, or log at the point of access describing that file contents will be read and analyzed.
No suspicious patterns detected.