AI短信发送工具

PassAudited by VirusTotal on May 6, 2026.

Overview

Type: OpenClaw Skill Name: sms-send Version: 1.0.0 The skill bundle provides a legitimate integration with the Chuanglan (创蓝) SMS platform. The core logic in `send-sms.sh` uses standard tools (curl, jq) to interact with the official API endpoint (smssh.253.com) using user-provided credentials, and there are no signs of data exfiltration, malicious execution, or prompt injection.

Findings (0)

Artifact-based informational review of SKILL.md, metadata, install specs, static scan signals, and capability signals. ClawScan does not execute the skill or run runtime probes.

What this means

A mistaken or overly broad agent invocation could send paid SMS messages to many recipients, causing cost, privacy, or reputation impact.

Why it was flagged

The skill exposes a command that sends real SMS messages and documents bulk sending up to 1000 recipients, but the artifacts do not include confirmation, preview, rate-limit, spend-limit, or recipient-validation guidance.

Skill content
sms-send --phone <手机号> --template <模板ID> [--vars '<变量JSON>']; 批量发送时多个手机号用逗号分隔,最多1000个
Recommendation

Require explicit user confirmation before every send, add a preview of recipients/template/variables, cap bulk recipient counts by default, and use account quotas or test credentials.

What this means

If the environment is misconfigured or influenced, the SMS account password could be sent to an unintended endpoint; local process listings or logs may also expose the request body while curl runs.

Why it was flagged

The API password is embedded in the request body, the destination URL can be overridden by an undocumented environment variable, and the body is supplied to curl as a command-line argument.

Skill content
: "${CHANGLAN_API_URL:=https://smssh.253.com/msg/sms/v2/tpl/send}" ... "password": "${CHANGLAN_PASSWORD}" ... curl ... -d "${request_body}"
Recommendation

Pin or validate the official HTTPS API host, document any endpoint override, send the request body via stdin or a protected temporary file, and use a dedicated low-quota Chuanglan account with IP whitelist controls.

What this means

This is normal local configuration plumbing, but a tampered or untrusted .env file could run commands when the SMS command is used.

Why it was flagged

The script loads .env with shell source, which executes shell syntax in that file rather than only parsing key/value credentials.

Skill content
if [[ -f "$ENV_FILE" ]]; then source "$ENV_FILE"; fi
Recommendation

Prefer OpenClaw secret storage or environment variables; if .env is used, keep it private and parse it as data rather than sourcing it as shell code.

What this means

Phone numbers and message-template variables will be shared with the SMS provider as part of sending messages.

Why it was flagged

Recipient phone numbers, template IDs, and template variables are sent to the Chuanglan SMS provider API, which is expected for this skill but is still a third-party data flow.

Skill content
"phoneNumbers": "${phone}", "templateId": "${template}" ... curl -s -m 30 -X POST "${CHANGLAN_API_URL}"
Recommendation

Only send numbers and variables the user has approved, ensure recipient consent/compliance, and keep provider/account access limited to this purpose.