Back to skill

Security audit

vps-lite-boot

Security checks for vulnerabilities and agentic risk

Overview

This skill is a clearly scoped VPS troubleshooting guide that performs high-impact system changes, but it discloses them and requires confirmation, backups, and validation.

Install only if you understand the Vietnamese instructions or can have them translated accurately. Before allowing it to run, confirm you are the VPS owner, review the planned changes, and make sure backups are created before any OpenClaw config or /etc/fstab edit. The fstab and swap steps can affect boot behavior, so do not approve them unless the VPS is actually showing OOM or low-memory symptoms.

Vulnerability Patterns
  • 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
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • Rogue AgentSelf-Modification, Session Persistence
  • Trigger AbuseOverly Broad Trigger, Shadow Command Trigger, Keyword Baiting Trigger
  • Prompt InjectionInstruction Override, Hidden Instructions, Exfiltration Commands
Findings (12)

Chaining Abuse

High
Category
Tool Misuse
Confidence
75% confidence
Finding

Tool calls are chained to bypass individual safety checks or escalate capabilities beyond what any single tool call would allow.

Content

Scanner excerpt · SKILL.md (reported line 122)May include surrounding context.

bash
  SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE

Chaining Abuse

High
Category
Tool Misuse
Confidence
90% confidence
Finding

Piping echo into sudo tee -a /etc/fstab combines shell expansion with a privileged append to a boot-critical file, which is a risky chaining pattern. Even when intended for convenience, this style makes it easier to accidentally persist malformed entries or, if variables ever become user-influenced, to inject unauthorized configuration with root privileges.

Content

Scanner excerpt · SKILL.md (reported line 131)May include surrounding context.

md
- **Ghi fstab an toàn (KHÔNG ghi đè cả file):**
  1. Backup: `sudo cp /etc/fstab /etc/fstab.bak.$(date +%F-%H%M)`
  2. Kiểm tra trùng: `grep -nE '^[^#]*swap' /etc/fstab`
  3. Chỉ append nếu chưa có: `echo "$SWAPFILE none swap sw 0 0" | sudo tee -a /etc/fstab`
  4. **VALIDATE (BẮT BUỘC):** `sudo findmnt --verify --verbose` và `sudo swapon -a` — lỗi thì restore fstab backup ngay. **Sai fstab = máy không boot.**

## Bước 3 — Bảo vệ gateway khỏi OOM Killer (tùy chọn, cần xác nhận)

Natural-Language Policy Violations

Medium
Category
Not specified by scanner
Confidence
96% confidence
Finding

The manifest description and the entire skill instructions are written in Vietnamese, including user-facing trigger examples and required confirmations, with no indication that language is selectable or that the skill is intentionally limited to Vietnamese-speaking users. This creates a natural-language locale constraint that is not opt-in and is not justified as a region-specific skill.

Content

No source excerpt is available for this finding.

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 122)May include surrounding context.

bash
  SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 124)May include surrounding context.

bash
  SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 125)May include surrounding context.

bash
  SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 129)May include surrounding context.

bash
  SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 123)May include surrounding context.

md
SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE
  swapon --show; free -m

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
70% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 132)May include surrounding context.

md
SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE
  swapon --show; free -m

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
80% confidence
Finding

Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.

Content

Scanner excerpt · SKILL.md (reported line 123)May include surrounding context.

md
SWAPFILE=/swapfile
  SWAPSIZE=2G
  sudo fallocate -l $SWAPSIZE $SWAPFILE || sudo dd if=/dev/zero of=$SWAPFILE bs=1M count=2048 status=progress
  sudo chmod 600 $SWAPFILE
  sudo mkswap $SWAPFILE
  sudo swapon $SWAPFILE
  swapon --show; free -m

Sudo/Root Execution

Medium
Category
Privilege Escalation
Confidence
87% confidence
Finding

Appending to /etc/fstab via echo "$SWAPFILE none swap sw 0 0" | sudo tee -a /etc/fstab performs a privileged write using shell-expanded data and directly alters a boot-critical file. Although $SWAPFILE is hardcoded earlier, this pattern is dangerous because similar skills often later substitute user-controlled values, and a malformed or duplicate line can break boot or mount behavior.

Content

Scanner excerpt · SKILL.md (reported line 131)May include surrounding context.

md
- **Ghi fstab an toàn (KHÔNG ghi đè cả file):**
  1. Backup: `sudo cp /etc/fstab /etc/fstab.bak.$(date +%F-%H%M)`
  2. Kiểm tra trùng: `grep -nE '^[^#]*swap' /etc/fstab`
  3. Chỉ append nếu chưa có: `echo "$SWAPFILE none swap sw 0 0" | sudo tee -a /etc/fstab`
  4. **VALIDATE (BẮT BUỘC):** `sudo findmnt --verify --verbose` và `sudo swapon -a` — lỗi thì restore fstab backup ngay. **Sai fstab = máy không boot.**

## Bước 3 — Bảo vệ gateway khỏi OOM Killer (tùy chọn, cần xác nhận)

Session Persistence

Medium
Category
Rogue Agent
Confidence
60% confidence
Finding

Skill establishes unauthorized persistence across sessions via cron jobs, startup scripts, or state files. Session persistence allows an attacker to maintain access beyond the current interaction.

Content

Scanner excerpt · SKILL.md (reported line 140)May include surrounding context.

  • Tạo systemd drop-in (dùng systemctl --user nếu gateway chạy user service):
    bash
    mkdir -p ~/.config/systemd/user/<service>.d
    printf '[Service]\nOOMScoreAdjust=-500\nMemoryHigh=75%%\nMemoryMax=90%%\n' \
      > ~/.config/systemd/user/<service>.d/10-oom.conf
    systemctl --user daemon-reload
    

Static analysis

No suspicious patterns detected.