Tp4
- Category
- MCP Tool Poisoning
- Confidence
- 97% confidence
- Finding
声明的核心功能是对亚马逊 ASIN 进行优势分析,但实际代码并未执行分析请求,也未获取详情、销量趋势、销量预测等分析结果。相反,它访问的是
/asin_advantage/search/logs日志接口,用于读取搜索日志记录。这属于与声明主用途明显不同的行为,且包含未声明的日志访问能力,因此存在描述与行为不一致。- Content
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a disclosed ClawEC API helper for Amazon ASIN analysis, with expected external API use and no evidence of hidden persistence, credential theft, or destructive behavior.
Install only if you are comfortable sending ASIN research queries and related parameters to ClawEC using your ClawEC API key. Use a dedicated or revocable API key, store it in CLAWEC_API_KEY or a secret manager, and avoid running history/detail helpers unless you intend the agent to access your ClawEC ASIN search logs.
声明的核心功能是对亚马逊 ASIN 进行优势分析,但实际代码并未执行分析请求,也未获取详情、销量趋势、销量预测等分析结果。相反,它访问的是 /asin_advantage/search/logs 日志接口,用于读取搜索日志记录。这属于与声明主用途明显不同的行为,且包含未声明的日志访问能力,因此存在描述与行为不一致。
Code enumerates, copies, or searches environment variables for secrets. Bulk environment access can collect credentials unrelated to the skill's stated purpose.
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")
The skill documents use of environment variables and shell commands to call an external API, but it does not declare any tool scope such as allowed-tools or permissions. That creates an authorization and transparency gap: an agent may invoke shell or read secrets without the skill explicitly constraining or disclosing those capabilities.
The skill instructs sending ASIN query parameters and a bearer token to a third-party service but does not warn users that their inputs will be transmitted externally or explain privacy implications. This can lead to unintended disclosure of business-sensitive product research data and increases the risk of secret mishandling around the API key.
The skill explicitly performs external transmission of user-supplied ASIN data and an authorization bearer token to a third-party endpoint. In this skill context, external transmission is expected, but it remains security-relevant because it can expose sensitive commercial research inputs and creates credential leakage risk if requests, shells, or logs are mishandled.
| JP | 日本 |
curl -s -X POST "https://www.clawec.com/api/aigc/ec/amazon/asin_advantage/search" \
-H "Content-Type: application/json" \
-H "Authorization: Bearer $CLAWEC_API_KEY" \
-d '{"marketplace":"US","asin":"B0XXXXXX","month":"202505","asinDetail":true,"salesTrend":true,"aiInterpret":true}'
This shell script reads a credential from the CLAWEC_API_KEY environment variable and immediately makes an outbound HTTP request with the provided log ID. There is no confirmation prompt, visible user-facing notice, or inline documentation warning that sensitive credentials and request parameters will be sent to an external service.
The script makes an outbound request to a third-party API using a bearer credential without any built-in user disclosure, confirmation, or visible indication that data and credentials are being used externally. In an agent-skill context, this can lead to silent transmission of user-supplied parameters to an external service, reducing transparency and potentially surprising users or operators.
The script sends user-supplied ASIN, marketplace, month, and option flags to a third-party endpoint while authenticating with a bearer token, but it does not provide any user-facing disclosure or confirmation before transmission. This can cause users or orchestrating agents to unknowingly exfiltrate business-sensitive product research queries to an external service.
The script performs an external POST request to a third-party API and includes both user-derived data and an Authorization bearer token. In the context of an agent skill, external transmission is security-relevant because it can leak user queries or commercially sensitive ASIN analysis requests outside the local trust boundary without visible consent controls.
now=datetime.now(); mo=now.month-1 or 12; yr=now.year if now.month>1 else now.year-1; body["month"]=f"{yr}{mo:02d}"
print(json.dumps(body, ensure_ascii=False))
' "$MARKETPLACE" "$ASIN" "$MONTH" "$DETAIL" "$TREND" "$PRED" "$AI")
curl -s -X POST "https://www.clawec.com/api/aigc/ec/amazon/asin_advantage/search" -H "Content-Type: application/json" -H "Authorization: Bearer $API_KEY" -d "$PAYLOAD"
SQP-3 covers natural-language policy issues such as forcing a specific language without user opt-in. The description here is entirely in Chinese and does not indicate that users may choose another language or that the skill is intentionally limited to a Chinese-speaking audience.
The script's user-facing messages are hardcoded in Chinese ('用法' and '请设置环境变量') with no indication that the skill is intended only for Chinese-speaking users or a specific locale. This creates a language policy concern because the skill enforces a specific language without user opt-in or justification.
The manifest describes a skill for analyzing Amazon ASIN advantage via the ClawEC API, but does not mention handling secrets or credential sourcing. While network access is expected for this purpose, explicit access to host environment variables is an additional capability outside the user-facing purpose described.
The environment-variable error message is hardcoded in Chinese ("请设置环境变量 CLAWEC_API_KEY"), which imposes a specific language on users regardless of their locale or preferences. The policy requires avoiding fixed language constraints unless the skill offers language choice or clearly documents a justified locale limitation.
The usage and error messages are hardcoded in Chinese, such as the help text at L04 and the missing-variable/error text at L19-L20. This imposes a specific language on all users without opt-in or documented locale justification, which is a natural-language policy violation under the stated rules.
The manifest describes an ASIN advantage analysis skill with optional AI interpretation, but the code additionally depends on reading a secret from the process environment via CLAWEC_API_KEY. While likely necessary for the external API call, credential access is a distinct capability not mentioned in the stated purpose and can be context-inappropriate if permissions are expected to be narrowly scoped to analysis behavior.
The usage/help text is presented only in Chinese in a general-purpose shell script, with no indication that the skill is region-specific or that users can choose another language. This is a natural-language locale policy concern because it imposes a specific language without user opt-in.