T06 · System Persistence
Note
- Location
- SKILL.md:60
- Finding
- Bluetooth Service Persistently Enabled Without Explicit User Consent<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md`, lines 60–65 **Vulnerability Type**: Persistent startup-service configuration beyond the minimum necessary for immediate recovery **Risk Level**: Low ```bash sudo systemctl start bluetooth sudo systemctl enable bluetooth bluetoothctl list # Controller <MAC> <host> [default] bluetoothctl show # Powered: yes (and HCI/LMP version, supported profiles) ``` ### Technical Analysis The documented recovery procedure runs both `systemctl start bluetooth` and `systemctl enable bluetooth` with root privileges. Starting the service is sufficient to restore Bluetooth during the current boot. Enabling it separately changes the host's boot-time service configuration so that Bluetooth starts automatically in future sessions. This persistent change may be legitimate on a system intended to use Bluetooth regularly, but it is not strictly required to diagnose or immediately repair an inactive service. The instructions do not distinguish temporary recovery from persistent configuration and do not require confirmation before making the lasting change. Consequently, an agent following the Skill literally could exceed the user's intended scope. This is a system-persistence concern rather than evidence of a backdoor: the command enables the standard operating-system Bluetooth service and does not install attacker-controlled code. ### Attack Path 1. A user invokes the Skill to diagnose a temporary Bluetooth failure. 2. The agent follows the documented fix and executes the commands with `sudo`. 3. `systemctl start bluetooth` restores the service for the current boot. 4. `systemctl enable bluetooth` additionally modifies system service configuration. 5. On subsequent boots, the Bluetooth service starts automatically even if the user intended only a temporary repair. No external attacker-controlled payload or privilege-escalation mechanism is present. Exploitation depends on an agent applying the persistent comm ...[truncated 715 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions Separate immediate recovery from optional persistence: ```bash sudo systemctl start bluetooth bluetoothctl list bluetoothctl show ``` Before enabling startup persistence, explain its effect and obtain explicit user confirmation: ```bash # Run only if the user wants Bluetooth to start automatically after reboot. sudo systemctl enable bluetooth ``` Additional hardening measures: 1. Check the existing state with `systemctl is-enabled bluetooth` before changing it. 2. Ask whether the requested repair should apply only to the current boot or persist across reboots. 3. Avoid combining `start` and `enable` into a single unconditional procedure. 4. Document rollback using `sudo systemctl disable bluetooth`. 5. If Bluetooth is needed only temporarily, stop it after use with `sudo systemctl stop bluetooth`. ]]>
