Back to skill

Security audit

Rdk X5 Monitor

Security checks for vulnerabilities and agentic risk

Overview

The skill is mostly a read-only RDK X5 hardware monitor, but it includes troubleshooting advice that can terminate processes or run a privileged cleanup command.

Review this skill before installing if you expect strict read-only monitoring. Its normal status commands are appropriate, but do not let an agent run `kill` or `sudo apt clean` from this skill without explicit confirmation and a clear understanding of the target process or files affected.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • Skill Instruction HijackingAlters the agent's session goals or safety constraints when the skill loads
  • Agent Memory PoisoningWrites attacker-controlled rules into memory that affect later sessions
  • Remote Payload Retrieval and ExecutionFetches external code whose behavior can change after review
  • Embedded Malicious CodeShips malicious scripts inside the skill and executes them locally
Findings (1)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
SKILL.md:93
Finding
Read-Only Monitoring Skill Recommends Privileged and State-Changing Operations<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 93–96 **Vulnerability Type**: Least-privilege and declared-scope violation **Risk Level**: Medium ### Evidence The following is an English translation of the complete affected table section; command literals are preserved exactly: ```markdown | Symptom | Cause | Resolution | |---------|-------|------------| | CPU remains at 100% | A process is consuming all resources | Use `top` to identify the high-usage process; use `kill` or reduce the workload | | Temperature above 90°C | Insufficient cooling | Install a heat sink or fan; reduce the BPU workload | | BPU ratio always remains at 0 | No inference task is running | This is normal; the value will increase after starting AI inference | | Disk is full | Logs or backups are too large | Run `du -sh /var/log/*`; run `sudo apt clean` | ``` ### Technical Analysis The Skill declares itself as a read-only system-monitoring capability and explicitly directs system-changing operations to a separate system-management Skill. Most documented commands comply with that boundary by reading procfs, sysfs, network, memory, and filesystem statistics. The troubleshooting guidance violates this boundary in two ways: 1. `kill` terminates or signals a process and therefore changes system state. If used without identifying the correct process and signal, it can interrupt critical applications or system services. 2. `sudo apt clean` requests elevated execution and deletes cached package files. This is a privileged, state-changing maintenance operation rather than a monitoring query. The file does not automatically execute either command, and it does not independently bypass authentication or grant new privileges. Exploitation requires an agent or user to follow the recommendations and, for the `sudo` command, already possess suitable sudo authorization. Nevertheless, embedding these recommendations in a read-only Skill breaks least-privilege separation and c ...[truncated 1710 chars]
Remediation
<![CDATA[ ## Remediation Suggestions 1. Remove `kill` and `sudo apt clean` from this read-only monitoring Skill. 2. Restrict troubleshooting instructions to diagnostic commands that do not modify system state, such as: - `top` - `ps` - `du -sh /var/log/*` - `df -h` 3. Refer users to the designated system-management Skill when remediation requires process termination, cache deletion, workload changes, or other administrative actions. 4. Require explicit user confirmation before any state-changing command is executed. 5. Before process termination, display the target PID, process owner, full command line, intended signal, and likely operational impact. 6. Avoid recommending broad privileged commands. If package-cache cleanup is necessary, explain precisely what will be deleted and verify available disk space before and after the operation. 7. Add an explicit policy to the Skill stating that it must not execute commands using `sudo`, terminate processes, delete files, or modify system configuration. ]]>
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Excessive AgencyUnrestricted Tool Access, Autonomous Decision Making, Scope Creep
  • MCP Tool PoisoningHidden Instructions, Unicode Deception, Parameter Description Injection
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
  • Data ExfiltrationExternal Transmission, Env Variable Harvesting, File System Enumeration
Findings (4)

Description-Behavior Mismatch

Medium
Confidence
97% confidence
Finding
The skill is explicitly described as read-only monitoring, but the troubleshooting table includes operational actions that change system state, such as killing processes and cleaning package caches. This creates scope drift: an agent or user relying on the skill may perform destructive or privileged actions under a monitoring skill, increasing the chance of misuse or accidental disruption.

Context-Inappropriate Capability

Medium
Confidence
96% confidence
Finding
Providing unjustified remediation commands in a monitoring-only skill is dangerous because it normalizes taking action from a context that should only inspect status. Even if the commands are common admin steps, they can terminate important workloads or alter package state when triggered by an automated agent without proper escalation boundaries.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Content
| CPU 100% 持续 | 进程占满 | `top` 查看高占用进程;`kill` 或降低负载 |
| 温度 >90°C | 散热不足 | 加装散热片/风扇;降低 BPU 负载 |
| BPU ratio 始终 0 | 无推理任务运行 | 正常现象;启动 AI 推理后会上升 |
| 磁盘满 | 日志或备份过大 | `du -sh /var/log/*`;`sudo apt clean` |
Confidence
95% confidence
Finding
Including `sudo apt clean` in a read-only monitoring skill introduces privileged execution guidance that exceeds the declared scope. Although `apt clean` is not typically catastrophic, it still performs a privileged state-changing operation and can train an agent to invoke sudo where only inspection was expected.

Natural-Language Policy Violations

Low
Confidence
84% confidence
Finding
The skill content and operational headings are presented in Chinese, and there is no indication that users may choose another language or locale. Under the policy, forcing a specific language without opt-in is a natural-language policy concern unless the locale constraint is explicitly justified.

Static analysis

No suspicious patterns detected.