Back to skill

Security audit

clawec-amazon-asin-traffic-source

Security checks for vulnerabilities and agentic risk

Overview

This skill is a disclosed ClawEC API integration for Amazon ASIN traffic-source analysis, with expected network and API-key use but no hidden persistence or destructive behavior.

Install only if you intend to use ClawEC for Amazon ASIN traffic-source analysis and are comfortable sending ASIN research parameters and your ClawEC API key to clawec.com. Store the API key carefully, avoid pasting it into shared logs, and review the third-party service terms for business-data handling.

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
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
  • MCP Least PrivilegeUnderdeclared Capability, Wildcard Permission, Missing Permission Declaration
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
Findings (14)

Tp4

High
Category
MCP Tool Poisoning
Confidence
96% confidence
Finding

声明的核心能力是对亚马逊 ASIN 流量来源进行分析,但实际代码没有接收 ASIN,也没有调用任何分析型接口或执行 AI 解读逻辑。它只是请求一个名为 traffic_source/search/logs 的日志接口,并支持分页读取日志。这属于与声明功能 materially different 的主要用途,且访问资源从“分析数据”变成了“日志数据”,因此应判定为描述与行为不匹配。

Content

No source excerpt is available for this finding.

Env Variable Harvesting

High
Category
Data Exfiltration
Confidence
60% confidence
Finding

Code enumerates, copies, or searches environment variables for secrets. Bulk environment access can collect credentials unrelated to the skill's stated purpose.

Content

Scanner excerpt · scripts/search_and_poll.sh (reported line 36)May include surrounding context.

sh
script_dir = sys.argv[3]
args = sys.argv[4:]

env = os.environ.copy()
search_sh = os.path.join(script_dir, "search.sh")
logs_sh = os.path.join(script_dir, "logs.sh")
detail_sh = os.path.join(script_dir, "log_detail.sh")

Undeclared Tool Scope

Medium
Category
MCP Least Privilege
Confidence
84% confidence
Finding

The skill documents use of environment variables and shell commands but does not declare any tool scope or allowed-tools restrictions. In an agent environment, this broadens the execution surface and can let the skill invoke shell or access secrets more freely than necessary, increasing the chance of unintended command execution or credential exposure.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
88% confidence
Finding

The file presents all user-facing instructions and operational guidance in Chinese only, which effectively forces a specific language experience. Under the policy, language restrictions should either be optional for the user or clearly justified as region-specific.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
88% confidence
Finding

The skill sends ASIN search parameters and an authorization bearer token to an external third-party service. While this is central to the skill's purpose, it still creates a real data-transmission and secret-handling risk: user-supplied business data and API credentials leave the local environment, and misuse or leakage could expose account access or sensitive commercial research activity.

Content

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

| JP | 日本 |

bash
curl -s -X POST "https://www.clawec.com/api/aigc/ec/amazon/traffic_source/search" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $CLAWEC_API_KEY" \
  -d '{"marketplace":"US","asin":"B0XXXXXX","month":"202505","trafficSource":true,"trafficKeyword":true,"aiInterpret":true}'

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

This code file performs an outbound HTTP request and includes a bearer token from an environment variable in the Authorization header, but the script provides no confirmation prompt, print/log message, or inline documentation warning the user that credentials will be transmitted. Because network transmission of sensitive data is safety-relevant, the lack of any visible disclosure meets the missing-warning criteria for code files.

Content

No source excerpt is available for this finding.

External Transmission

Medium
Category
Data Exfiltration
Confidence
70% confidence
Finding

Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.

Content

Scanner excerpt · scripts/search.sh (reported line 27)May include surrounding context.

sh
body={"marketplace":m or "US","asin":asin.strip().upper(),"month":month,"trafficSource":ts=="true","trafficListingStat":tls=="true","trafficKeyword":tk=="true","keywordOrder":ko=="true","aiInterpret":ai=="true"}
print(json.dumps(body, ensure_ascii=False))
' "$MARKETPLACE" "$ASIN" "$MONTH" "$TS" "$TLS" "$TK" "$KO" "$AI")
curl -s -X POST "https://www.clawec.com/api/aigc/ec/amazon/traffic_source/search" -H "Content-Type: application/json" -H "Authorization: Bearer $API_KEY" -d "$PAYLOAD"

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
93% confidence
Finding

Line L27 performs an HTTP POST to a remote service and includes both the ASIN/month payload and an Authorization bearer token, but the script provides no confirmation prompt, visible notice, or explanatory comment/docstring about this transmission. For code files, network calls that transmit user or system data should have some form of user disclosure unless clearly warned elsewhere, which is not evident in this file.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The script presents usage/help and error messages in Chinese only, such as the environment variable descriptions and missing-argument error. Under the policy, forcing a specific language without user opt-in is a natural-language policy violation unless the locale restriction is explicitly justified.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

The usage and error messages are hard-coded in Chinese, which imposes a specific language on all users. There is no opt-in, alternative locale support, or documentation justifying a Chinese-only audience, so this is a natural-language locale policy issue.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
81% confidence
Finding

This shell script performs an HTTP request to an external service using a bearer token from an environment variable and transmits the user-provided log identifier. There is no confirmation prompt, visible disclosure, or inline warning explaining that data is being sent off-host, which fits the missing-warning criteria for code files.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
96% confidence
Finding

The parameter-expansion error text is hard-coded in Chinese ("请设置环境变量 CLAWEC_API_KEY"), which imposes a specific language on users regardless of their locale or preference. This is a natural-language policy issue because the file does not provide any opt-in, fallback, or documented justification for the locale-specific messaging.

Content

No source excerpt is available for this finding.

Natural-Language Policy Violations

Low
Category
Not specified by scanner
Confidence
95% confidence
Finding

User-facing strings at L04, L19, and L20 are in Chinese, and the script does not provide any option to select another language or indicate that the locale restriction is intentional. This creates a natural-language policy concern because the skill imposes a specific language without user opt-in.

Content

No source excerpt is available for this finding.

Missing User Warnings

Low
Category
Not specified by scanner
Confidence
84% confidence
Finding

This code launches helper scripts via subprocess to perform search, log lookup, and detail retrieval, but there is no confirmation prompt and no user-facing disclosure in comments, docstrings, or printed messages explaining that external commands will be executed. Because subprocess execution is a safety-relevant operation under the rule, the lack of any warning or disclosure is a quality/safety gap.

Content

No source excerpt is available for this finding.