Back to skill

Security audit

security-audit-assistant

Security checks for vulnerabilities and agentic risk

Overview

This skill is not clearly malicious, but it needs review because it requests managed-node and cron authority while shipping an incomplete scanner and unsafe root-level fix guidance.

Install only if you are comfortable granting managed-node execution and cron-related authority. Treat its audit results as unreliable until the mock executor is replaced with real OpenClaw node execution, and do not run the suggested sudo fixes on production systems without reviewing them, making backups, validating SSH and firewall changes, and planning rollback access.

Vulnerability Patterns
  • Unauthorized Access and Privilege EscalationObtains permissions beyond the task's legitimate needs
  • Insecure Skill Coding PracticesFinds exploitable flaws such as hardcoded secrets or command injection
  • 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
Findings (3)

T05 · Unauthorized Access and Privilege Escalation

Warning
Location
HOOK.md:9
Finding

Unused Cron Permission Violates Least Privilege

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Warning
Location
scripts/audit.js:17
Finding

Unsafe Root-Level Remediation Commands Can Cause Persistent System Changes

Content
View full analysis
Remediation
View remediation

T09 · Insecure Skill Coding Practices

Warning
Location
scripts/audit.js:114
Finding

Mock Command Executor Produces False Audit Results

Content
View full analysis
Remediation
View remediation
Vulnerability Patterns
  • Privilege EscalationExcessive Permissions, Sudo/Root Execution, Credential Access
  • Tool MisuseTool Parameter Abuse, Chaining Abuse, Unsafe Defaults
  • 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 (42)

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

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

md
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · scripts/audit.js (reported line 95)May include surrounding context.

js
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · scripts/audit.js (reported line 97)May include surrounding context.

js
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Credential Access

High
Category
Privilege Escalation
Confidence
60% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · scripts/audit.js (reported line 99)May include surrounding context.

js
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Credential Access

High
Category
Privilege Escalation
Confidence
95% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

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

md
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Credential Access

High
Category
Privilege Escalation
Confidence
95% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · scripts/audit.js (reported line 104)May include surrounding context.

js
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Credential Access

High
Category
Privilege Escalation
Confidence
95% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · scripts/audit.js (reported line 106)May include surrounding context.

js
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Credential Access

High
Category
Privilege Escalation
Confidence
95% confidence
Finding

Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.

Content

Scanner excerpt · scripts/audit.js (reported line 108)May include surrounding context.

js
| Passwords | Password aging enabled, no default accounts | Medium |
| Services | Unnecessary services disabled (telnet, vsftpd) | Low |
| Logging | Auditd/rsyslog enabled and rotating | Medium |
| File Permissions | /etc/passwd, /etc/shadow correct perms | High |

**Total checks**: ~20 per node

Chaining Abuse

High
Category
Tool Misuse
Confidence
80% confidence
Finding

The chained command edits sshd_config and immediately restarts SSH with root privileges, increasing the chance of an operator executing multiple impactful actions without intermediate validation. If the edit is incorrect or environment-specific, the restart can break remote access and cause immediate administrative lockout.

Content

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

md
❌ HIGH RISK:
1. SSH password authentication is ENABLED
   Fix: sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd

⚠️  MEDIUM:
2. Security updates available (5 packages)

Ae1

High
Category
analysis-evasion
Confidence
100% confidence
Finding

Referenced artifact was not completely inspected

Content

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

md
- **Script**: `scripts/audit.js` (~150 lines, Node.js)

Intent-Code Divergence

High
Category
Not specified by scanner
Confidence
99% confidence
Finding

The file header claims the script performs baseline security checks, but the only command runner is a stub that never executes any real checks. In a security-audit skill, this is dangerous because it can produce misleading reports and create false assurance that a node was assessed when it was not.

Content

No source excerpt is available for this finding.

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 82)May include surrounding context.

md
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 18)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 27)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 36)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 45)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 54)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 72)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 90)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
89% confidence
Finding

The skill advertises 'one-click fix commands' and automated scheduling for security changes without clearly warning users to review commands first or consider service impact. In a system-administration context, this can lead operators to run privileged remediation blindly, causing outages, lockouts, or unintended configuration drift.

Content

No source excerpt is available for this finding.

Missing User Warnings

Medium
Category
Not specified by scanner
Confidence
94% confidence
Finding

The sample output includes direct system-modifying commands such as editing sshd_config, restarting SSH, and upgrading packages, but provides no caution about access loss, package side effects, or maintenance windows. Because the skill targets admins and small teams, users may treat the examples as safe defaults and apply them without validation.

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 82)May include surrounding context.

⚠️ MEDIUM: 2. Security updates available (5 packages) Fix: sudo apt update && sudo apt upgrade -y

✅ All checks completed in 8 seconds.

text

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 78)May include surrounding context.

md
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 111)May include surrounding context.

md
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {

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 · scripts/audit.js (reported line 18)May include surrounding context.

js
risk: 'high',
    command: 'grep -E "^PasswordAuthentication" /etc/ssh/sshd_config | awk \'{print $2}\'',
    expected: 'no',
    fix: "sudo sed -i 's/PasswordAuthentication yes/no/' /etc/ssh/sshd_config && sudo systemctl restart sshd",
    os: ['ubuntu', 'debian', 'centos']
  },
  {