External Script Fetching
- Category
- Supply Chain
- Confidence
- 90% confidence
- Finding
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
- Content
用法:
bash curl "https://v1.hitokoto.cn?c=j"参数:
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a small Chinese joke fetcher that clearly matches its stated purpose and does not show hidden persistence, credential access, or remote code execution.
Install only if you are comfortable with the skill making outbound HTTPS requests to third-party joke services. Treat returned jokes as untrusted remote content, and avoid using it in environments where any external network request is restricted.
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
用法:
curl "https://v1.hitokoto.cn?c=j"
参数:
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
用法:
curl "https://v1.hitokoto.cn?c=j"
参数:
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
curl -s "https://v1.hitokoto.cn?c=j" | python3 -m json.tool
curl -s "https://api.jokeapi.cn/joke/Any?safe-mode" | python3 -m json.tool
### 使用 Python
Remote code is downloaded and executed. This bypasses code review and could introduce malicious code.
#!/bin/bash
# 获取一言搞笑
curl -s "https://v1.hitokoto.cn?c=j" | python3 -c "
import sys, json
d = json.load(sys.stdin)
print(f'「{d['hitokoto']}」')
The title and overview explicitly define the skill as a Chinese joke API skill and all instructions/content are presented only in Chinese, with no opt-in or alternative language/locale path. Under the policy, forcing a specific language without user choice is a natural-language policy violation unless the constraint is clearly justified as region-specific.
The skill sends requests to a third-party API, which creates an external data transmission path and a dependency on an untrusted remote service. Even though the transmitted data here is only a joke request, using external endpoints can expose metadata such as IP address, request timing, and user-agent, and the remote content is not under the skill author's control.
用法:
curl "https://api.jokeapi.cn/joke/Any?safe-mode"
This example performs a live request to an external joke API, creating the same third-party transmission risk and trust boundary issue. While the payload is low sensitivity, the skill normalizes contacting untrusted infrastructure and consuming arbitrary remote content.
curl -s "https://v1.hitokoto.cn?c=j" | python3 -m json.tool
curl -s "https://api.jokeapi.cn/joke/Any?safe-mode" | python3 -m json.tool
### 使用 Python
The Python example fetches content from a third-party endpoint and parses its response, which is a real external transmission and remote-content ingestion path. In context the risk is moderate rather than high because no secrets are sent and the content is only printed, but it still introduces privacy, availability, and supply-chain concerns.
print(f"{data['hitokoto']} - {data['from']}")
# 简短笑话
resp = requests.get("https://api.jokeapi.cn/joke/Any?safe-mode")
data = resp.json()
if data['type'] == 'single':
print(data['joke'])
The script's natural-language interface, help text, and output messaging are entirely in Chinese, and its branding explicitly targets Chinese jokes, with no option or disclosure for alternate language/locale behavior. This can violate language/locale policy when a skill forces a specific language without user opt-in or documented justification.
Data is being sent to an external URL. This could be legitimate telemetry or data exfiltration. Manual review is recommended.
# 获取简短笑话
get_simple_joke() {
local result
result=$(curl -s --max-time 5 "https://api.jokeapi.cn/joke/Any?safe-mode" 2>/dev/null) || {
echo "简短笑话 API 获取失败"
return 1
}
The script makes an HTTP request to an external service using curl, which transmits system/request metadata such as IP address and user agent, but there is no explicit user warning about contacting third-party APIs. Although the script's purpose implies fetching remote jokes, the file itself does not disclose this network behavior in a user-facing way beyond function comments.
This curl invocation sends a request to api.jokeapi.cn, but the script does not provide a clear warning or disclosure that it will reach out to an external service. For a safety/quality audit, external network access should be visibly disclosed to users, especially when contacting third-party endpoints.