T09 · Insecure Skill Coding Practices
- Location
SKILL.md:66- Finding
RTSP Credentials Exposed in Command-Line Arguments
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This media skill is mostly purpose-aligned, but it includes an unsafe RTSP credential example and VNC remote desktop enablement without enough security guidance.
Review before installing. Use this skill only on intended RDK X5 devices, avoid copying real camera credentials into command lines, prefer least-privileged camera accounts and protected credential handling, and only enable VNC on trusted networks with strong authentication and a clear plan to disable it when not needed.
SKILL.md:66RTSP Credentials Exposed in Command-Line Arguments
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# 选择音频设备(PulseAudio 通道同步,v3.4.1+)
sudo srpi-config
# → Audio Options
# 查看设备
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
# 选择音频设备(PulseAudio 通道同步,v3.4.1+)
sudo srpi-config
# → Audio Options
# 查看设备
The skill manifest explicitly says it should not be used for running AI algorithms, but the RTSP section is labeled 'RTSP 拉流 + AI 推理' and directs users to launch a client and view inference-style results in a browser. This creates scope drift and may cause the agent to invoke a media skill for AI-related workflows outside its declared boundary, weakening tool selection and policy enforcement.
The RTSP example embeds a username and password directly in the connection URI without any warning about credential handling. Users may copy this pattern into shell history, logs, screenshots, or shared docs, leading to credential disclosure and reuse risks on cameras or related systems.
Enabling a VNC server via an elevated configuration tool exposes a remote desktop service, potentially increasing the attack surface if authentication, network exposure, and encryption are not addressed. In a media skill, remote desktop setup is sensitive because it can grant broad interactive access to the device beyond media functions.
sudo srpi-config
# → Interface Options → VNC → Enable
The manifest enumerates audio handling, video codec use, RTSP streaming, display configuration, LCD adaptation, and VNC server setup, but does not mention running a WebSocket-based preview service. Exposing media through a separate WebSocket service is an additional serving capability that is not clearly declared in the skill's stated scope.
No suspicious patterns detected.