T03 · Remote Payload Retrieval and Execution
- Location
SKILL.md:23- Finding
Mutable Remote Executable Is Downloaded and Trusted Without Integrity Verification
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This skill is a local file-transfer helper, but it installs unpinned external code and can auto-accept nearby network files into the workspace, so it needs review before use.
Only install this after pinning and verifying the CLI source, changing receive mode to require explicit approval for each transfer, using safe temporary-file handling for text payloads, and treating received files as untrusted before opening, extracting, installing, or deploying them.
SKILL.md:23Mutable Remote Executable Is Downloaded and Trusted Without Integrity Verification
SKILL.md:245Arbitrary Text Payload Is Interpolated Into a Shell Command
SKILL.md:250Predictable Shared Temporary Files Permit Symlink Attacks and Session Collisions
SKILL.md:324LAN Receiver Automatically Accepts Files Without Sender Authentication or Transfer Approval
YARA rule matched a hack tool or exploit indicator (offensive tools, reconnaissance, privilege escalation, or exploit frameworks).
---
name: localsend
description: Send and receive files to/from nearby devices using the LocalSend protocol. Trigger with /localsend to get an interactive Telegram menu with real inline buttons — device discovery, file sending, text sending, and receiving.
metadata:
openclaw:
emoji: "📡"
trigger: "/localsend"
requires:
bins:
- localsend-cli
- openssl
install: |
cp ./localsend-cli ~/.local/bin/localsend-cli && chmod +x ~/.local/bin/localsend-cli
---
# LocalSend
Interactive file transfer between devices on the local network using **real Telegram inline keyboard bu
The send-text flow constructs shell commands around user-provided text and performs filesystem operations in /tmp, creating risk of command injection, shell metacharacter abuse, unsafe redirection, or symlink/race issues depending on how the agent materializes the command. Even if the example is illustrative, it normalizes passing untrusted content through the shell instead of using safe file APIs or securely created temporary files.
echo "user's text" > /tmp/localsend-text.txt
localsend-cli send --to "Fast Potato" /tmp/localsend-text.txt
rm /tmp/localsend-text.txt
The receive instructions start a background listener with auto-accept enabled and save incoming files directly to disk, but the skill lacks a prominent upfront warning to the user about this behavior. Users may not realize they are exposing local storage to unsolicited nearby transfers, which increases the chance of receiving malicious or sensitive content without informed consent.
The trigger condition includes broad natural-language phrases about sending or receiving files locally, which may match ordinary conversation and unintentionally invoke the skill. In an agent context, accidental invocation can lead to device discovery, file selection prompts, or receive-mode activation without the user intending to start a network file-transfer workflow.
Skill grants unrestricted tool access without appropriate constraints. An agent with unfettered tool access can perform arbitrary actions including file modification, network requests, and code execution.
]
Do NOT run any commands yet. Wait for the button tap.
---
Using generic phrases like 'scan', 'discover', or 'find devices' as triggers is ambiguous and likely to overlap with normal user requests unrelated to LocalSend. That can cause unsolicited network discovery activity and selection of nearby devices, which is especially risky in stateful agent workflows.
The receive flow is activated by vague phrases like 'receive', 'start receiving', or 'listen', all of which can appear in unrelated chat contexts. Since receive mode starts a background listener and can auto-accept files, accidental triggering has meaningful security consequences beyond simple UI confusion.
The receive workflow expands a file-transfer skill into post-receipt actions like extract, deploy, install, preview, and open-folder. Those actions materially increase the trust boundary: untrusted files arriving over the network could be turned into executable or high-impact follow-on operations, enabling code execution, unsafe deployment, or opening malicious content with minimal additional user friction.
The skill description presents LocalSend as a nearby file-transfer utility, but the documented receive behavior includes deployment and file-handling features unrelated to simple transfer. This mismatch can mislead users and downstream agents about the capability scope, causing them to approve or invoke the skill under a lower-risk mental model than is warranted.
Skill enables autonomous high-impact decisions without human-in-the-loop verification. Critical operations (destructive commands, financial transactions, data deletion) should require explicit user confirmation.
## Receive Flow
Run HTTPS server on port 53317, handle `/prepare-upload` and `/upload` endpoints. Each device uses a self-signed TLS certificate; clients skip verification.
## Error Codes
The protocol explicitly states that clients skip TLS certificate verification while using self-signed certificates. This removes authentication from TLS and enables machine-in-the-middle attacks on the local network, allowing an attacker to impersonate a device, intercept transfers, or inject malicious content despite the use of HTTPS.
No suspicious patterns detected.