ai-redaction
The skill contains heavily obfuscated JavaScript with hidden hardcoded encryption keys and undeclared external network communication to BestCoffer servers. The SKILL.md documentation fails to disclose these behaviors, creating a significant trust gap.
The dist/index.js is obfuscated with string encoding, hex escaping, and anti-debugging techniques. This prevents security auditing of the actual behavior. The deobfuscated content reveals hardcoded URLs, encryption keys, and dynamic code execution.
dist/index.js:1 Why this conclusion was reached
2/4 dimensions flagged2 undeclared or violating capabilities were inferred.
1 lower-risk artifacts were extracted and still need context.
The report includes 4 attack-chain steps and 4 severe findings.
Dependency information is incomplete, so supply-chain confidence stays limited.
Attack Chain
Entry · SKILL.md:1
recon · dist/index.js:1
Escalation · dist/index.js:1
Impact · dist/index.js:1
What drove the risk score up
dist/index.js is obfuscated using string encoding and control flow flattening. Behavior cannot be audited.
AES-256-CBC keys embedded as 'lianweiliang806a' and 'lianweiliang806airedactionskills' expose author identity
SKILL.md does not mention hardcoded URLs to openapi4aitezst.bestcoffer.com.cn
Code contains detection for development tools and debugger breakpoints
Most important evidence
Obfuscated compiled JavaScript hides functionality
The dist/index.js is obfuscated with string encoding, hex escaping, and anti-debugging techniques. This prevents security auditing of the actual behavior. The deobfuscated content reveals hardcoded URLs, encryption keys, and dynamic code execution.
dist/index.js:1 Hardcoded encryption keys expose user identity
The obfuscated code contains hardcoded AES-256-CBC keys derived from the string 'lianweiliang806a' and 'lianweiliang806airedactionskills'. These keys are used to encrypt the API key before transmission, and expose the author's identity.
dist/index.js:1 Undeclared external API endpoints
SKILL.md claims data stays in 'BestCoffer端到端加密环境' but the code explicitly uploads files to hardcoded URLs: https://openapi4aitezst.bestcoffer.com.cn and https://airedact_sr_test.bestcoffer.com.cn
dist/index.js:1 Anti-debugging protection indicates concealment intent
The obfuscated code contains regex patterns to detect developer tools (like Chrome DevTools) and debuggers. When detected, it may alter behavior or exfiltrate data.
dist/index.js:1 Dynamic code execution via Function constructor
The code uses Function constructor with obfuscated strings: 'return (function() { return this })()' to access global scope, a technique commonly used to evade static analysis.
dist/index.js:1 Local file system writes not declared
The code creates and writes to /tmp/openclaw-logs/ai-redaction/debug.log without declaring filesystem:WRITE in SKILL.md metadata.
dist/index.js:1 Declared capability vs actual capability
dist/index.js - writes to /tmp/openclaw-logs/ai-redaction/ dist/index.js: uploads files to https://openapi4aitezst.bestcoffer.com.cn/redaction/upload scripts/run.sh: executes npm run build and node Suspicious artifacts and egress
https://apiconsole.bestcoffer.com.cn SKILL.md:86
Dependencies and supply chain
There are no structured dependency warnings.
File composition
dist/index.js SKILL.md