โœ“ Verified ๐Ÿ’ป Development โœ“ Enhanced Data

Secucheck

Comprehensive security audit for OpenClaw.

Rating
4.2 (198 reviews)
Downloads
17,335 downloads
Version
1.0.0

Overview

Comprehensive security audit for OpenClaw.

โœจKey Features

1

๐Ÿ” Comprehensive: Channels, agents, cron, skills, sessions, network, runtime

2

๐Ÿ‘ค 3 Expertise Levels: Beginner / Intermediate / Expert

3

๐ŸŒ Localized: Final report in user's language

4

๐ŸŽฏ Attack Scenarios: Real-world exploitation paths

5

โšก Runtime Checks: VPN, containers, privileges, network exposure

6

๐ŸŽจ Dashboard: Visual HTML report with security score

7

--

8

Everything below is for the agent executing this skill.*

9

--

Complete Documentation

View Source โ†’

secucheck - OpenClaw Security Audit

Comprehensive security audit skill for OpenClaw deployments. Analyzes configuration, permissions, exposure risks, and runtime environment with context-aware recommendations.


Summary

secucheck performs read-only security audits of your OpenClaw setup:

  • 7 audit domains: Runtime, Channels, Agents, Cron Jobs, Skills, Sessions, Network
  • 3 expertise levels: Beginner (analogies), Intermediate (technical), Expert (attack vectors)
  • Context-aware: Considers VPN, single-user, self-hosted scenarios
  • Runtime checks: Live system state (network exposure, containers, privileges)
  • Dashboard: Visual HTML report with security score
  • Localized output: Final report matches user's language
Never modifies configuration automatically. All fixes require explicit user confirmation.


Quick Start

Installation

bash
clawhub install secucheck

Usage

Ask your OpenClaw agent:
  • "security audit"
  • "secucheck"
  • "run security check"

Expertise Levels

When prompted, choose your level:
  • Beginner - Simple analogies, no jargon
  • Intermediate - Technical details, config examples
  • Expert - Attack vectors, edge cases, CVEs
All levels run the same checksโ€”only explanation depth varies.

Dashboard

text
"show dashboard" / "visual report"
Opens an HTML report in your browser.


Example Output

text
๐Ÿ”’ Security Audit Results

๐ŸŸก Needs Attention

| Severity | Count |
|----------|-------|
| ๐Ÿ”ด Critical | 0 |
| ๐ŸŸ  High | 0 |
| ๐ŸŸก Medium | 2 |
| ๐ŸŸข Low | 3 |

### ๐ŸŸก Agent "molty": exec + external content processing
...


Features

  • ๐Ÿ” Comprehensive: Channels, agents, cron, skills, sessions, network, runtime
  • ๐Ÿ‘ค 3 Expertise Levels: Beginner / Intermediate / Expert
  • ๐ŸŒ Localized: Final report in user's language
  • ๐ŸŽฏ Attack Scenarios: Real-world exploitation paths
  • โšก Runtime Checks: VPN, containers, privileges, network exposure
  • ๐ŸŽจ Dashboard: Visual HTML report with security score

Agent Instructions

Everything below is for the agent executing this skill.


When to Use

Trigger this skill when:

  • User requests security checkup/audit
  • Auto-trigger: Installing skills, creating/modifying agents, adding/modifying cron jobs
  • Periodic review (recommended: weekly)

Expertise Levels

LevelIdentifierStyle
Beginner1, beginnerAnalogies, simple explanations, no jargon
Intermediate2, intermediateTechnical details, config examples
Expert3, expertAttack vectors, edge cases, CVE references

Execution Flow

Step 1: Ask Level (before running anything)

Present options in user's language. Example (English):

text
What level of technical detail do you prefer?

1. ๐ŸŒฑ Beginner - I'll explain simply with analogies
2. ๐Ÿ’ป Intermediate - Technical details and config examples
3. ๐Ÿ” Expert - Include attack vectors and edge cases

๐Ÿ“Œ All levels run the same checksโ€”only explanation depth varies.

STOP HERE. Wait for user response.

Step 2: Run Audit

bash
bash ~/.openclaw/skills/secucheck/scripts/full_audit.sh

Returns JSON with findings categorized by severity.

Step 3: Format Output

Parse JSON output and format based on user's expertise level. Final report must be in user's language.

#### Report Structure (Organize by Category)

text
๐Ÿ”’ Security Audit Results

๐Ÿ“Š Summary Table
| Severity | Count |
|----------|-------|
| ๐Ÿ”ด Critical | X |
| ...

โšก Runtime
- [findings related to RUNTIME category]

๐Ÿค– Agents  
- [findings related to AGENT category]

๐Ÿ“ Workspace
- [findings related to WORKSPACE category]

๐Ÿงฉ Skills
- [findings related to SKILL category]

๐Ÿ“ข Channels
- [findings related to CHANNEL category]

๐ŸŒ Network
- [findings related to NETWORK category]

Group findings by their category field, not just severity. Within each category, show severity icon and explain.

Step 4: Auto-Open Dashboard

After text report, automatically generate and serve dashboard:

bash
bash ~/.openclaw/skills/secucheck/scripts/serve_dashboard.sh

The script returns JSON with url (LAN IP) and local_url (localhost). Use the url field (not localhost) when telling the user โ€” they may access from another device.

Example:

text
๐Ÿ“Š ๋Œ€์‹œ๋ณด๋“œ๋„ ์—ด์—ˆ์–ด์š”: http://192.168.1.200:8766/secucheck-report.html

If running in environment where browser can be opened, use browser tool to open it.

Cross-Platform Support

Scripts run on Linux, macOS, and WSL. Check the JSON output for platform info:

json
{
  "os": "linux",
  "os_variant": "ubuntu",
  "in_wsl": false,
  "in_dsm": false,
  "failed_checks": ["external_ip"]
}

Platform Detection

FieldValues
oslinux, macos, windows, unknown
os_variantubuntu, arch, dsm, wsl, version string
in_wsltrue if Windows Subsystem for Linux
in_dsmtrue if Synology DSM

Handling Failed Checks

If failed_checks array is non-empty, run fallback commands based on platform:

#### Network Info Fallbacks

PlatformCommand
Linuxip addr show or ifconfig
macOSifconfig
WSLip addr show (or check Windows via cmd.exe /c ipconfig)
WindowsPowerShell: Get-NetIPAddress
DSMifconfig or /sbin/ip addr
#### Gateway Binding Fallbacks

PlatformCommand
Linuxss -tlnp \grep :18789 or netstat -tlnp
macOSlsof -iTCP:18789 -sTCP:LISTEN
WindowsPowerShell: Get-NetTCPConnection -LocalPort 18789
#### File Permissions Fallbacks

PlatformCommand
Linux/macOSls -la ~/.openclaw
WindowsPowerShell: Get-Acl $env:USERPROFILE\.openclaw

Windows Native Support

If os is windows and scripts fail completely:

  • Use PowerShell commands directly:
powershell
# Network exposure
Get-NetTCPConnection -LocalPort 18789 -State Listen

# File permissions
Get-Acl "$env:USERPROFILE\.openclaw"

# Process info
Get-Process | Where-Object {$_.Name -like "*openclaw*"}
  • Report what you can check and note Windows-specific limitations.

Minimal Environments (Docker, DSM)

Some environments lack tools. Check output and supplement:

Missing ToolFallback
curlwget -qO-
ssnetstat
ipifconfig or /sbin/ip
pgrepps aux \grep

Agent Decision Flow

text
1. Run full_audit.sh
2. Check "failed_checks" in output
3. For each failed check:
   a. Identify platform from os/os_variant
   b. Run platform-specific fallback command
   c. Incorporate results into report
4. Note any checks that couldn't complete

Dashboard Generation

When user requests visual report:

bash
bash ~/.openclaw/skills/secucheck/scripts/serve_dashboard.sh

Returns:

json
{
  "status": "ok",
  "url": "http://localhost:8766/secucheck-report.html",
  "pid": 12345
}

Provide URL directly to user.

Detailed Check References

Read these only when deep explanation needed:

FileDomain
checks/runtime.mdLive system state
checks/channels.mdChannel policies
checks/agents.mdAgent permissions
checks/cron.mdScheduled jobs
checks/skills.mdInstalled skills
checks/sessions.mdSession isolation
checks/network.mdNetwork configuration

Attack Scenario Templates

Use these for expert-level explanations:

FileScenario
scenarios/prompt-injection.mdExternal content manipulation
scenarios/session-leak.mdCross-session data exposure
scenarios/privilege-escalation.mdTool permission abuse
scenarios/credential-exposure.mdSecret leakage
scenarios/unauthorized-access.mdAccess control bypass

Risk Levels

text
๐Ÿ”ด Critical - Immediate action required. Active exploitation possible.
๐ŸŸ  High     - Significant risk. Should fix soon.
๐ŸŸก Medium   - Notable concern. Plan to address.
๐ŸŸข Low      - Minor issue or best practice recommendation.
โšช Info     - Not a risk, but worth noting.

Risk Matrix

text
Tool Permissions
              Minimal       Full
         โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
Exposure โ”‚   ๐ŸŸข     โ”‚   ๐ŸŸก     โ”‚
  Low    โ”‚  Safe    โ”‚  Caution โ”‚
         โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ผโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค
         โ”‚   ๐ŸŸก     โ”‚   ๐Ÿ”ด     โ”‚
  High   โ”‚ Caution  โ”‚ Critical โ”‚
         โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

Exposure = Who can talk to the bot (DM policy, group access, public channels)
Tool Permissions = What the bot can do (exec, file access, messaging, browser)

Context-Aware Exceptions

Don't just pattern match. Consider context:

ContextAdjustment
Private channel, 2-3 trusted membersLower risk even with exec
VPN/Tailscale only accessNetwork exposure less critical
Self-hosted, single userSession isolation less important
Containerized environmentPrivilege escalation less severe
Always ask about environment if unclear.

Applying Fixes

CRITICAL RULES:

  • Never auto-apply fixes. Always show suggestions first.
  • Warn about functional impact. If a fix might break something, say so.
  • Get explicit user confirmation before any config changes.
Example flow:
text
Agent: "Changing this setting will disable exec in #dev channel.
        If you're using code execution there, it will stop working.
        Apply this fix?"
User: "yes"
Agent: [apply fix via gateway config.patch]

Language Rules

  • Internal processing: Always English
  • Thinking/reasoning: Always English
  • Final user-facing report: Match user's language
  • Technical terms: Keep in English (exec, cron, gateway, etc.)

Auto-Review Triggers

Invoke automatically when:

  • Skill installation: clawhub install or manual addition
  • Agent creation/modification: New agent or tool changes
  • Cron job creation/modification: New or modified scheduled tasks
For auto-reviews, focus only on changed component unless full audit requested.

Quick Commands

User RequestAction
"check channels only"Run channels.md check
"audit cron jobs"Run cron.md check
"full audit"All checks
"more detail"Re-run with verbose output

Trust Hierarchy

Apply appropriate trust levels:

LevelEntityTrust Model
1OwnerFull trust โ€” has all access
2AI AgentTrust but verify โ€” sandboxed, logged
3AllowlistsLimited trust โ€” specified users only
4StrangersNo trust โ€” blocked by default

Incident Response Reference

If compromise suspected:

Containment

  • Stop gateway process
  • Set gateway.bind to loopback (127.0.0.1)
  • Disable risky DM/group policies

Rotation

  • Regenerate gateway auth token
  • Rotate browser control tokens
  • Revoke and rotate API keys

Review

  • Check gateway logs and session transcripts
  • Review recent config changes
  • Re-run full security audit

Files Reference

text
~/.openclaw/skills/secucheck/
โ”œโ”€โ”€ SKILL.md              # This file
โ”œโ”€โ”€ skill.json            # Package metadata
โ”œโ”€โ”€ README.md             # User documentation
โ”œโ”€โ”€ scripts/
โ”‚   โ”œโ”€โ”€ full_audit.sh     # Complete audit (JSON output)
โ”‚   โ”œโ”€โ”€ runtime_check.sh  # Live system checks
โ”‚   โ”œโ”€โ”€ gather_config.sh  # Config extraction (redacted)
โ”‚   โ”œโ”€โ”€ gather_skills.sh  # Skill security scan
โ”‚   โ”œโ”€โ”€ gather_agents.sh  # Agent configurations
โ”‚   โ”œโ”€โ”€ serve_dashboard.sh # Generate + serve HTML report
โ”‚   โ””โ”€โ”€ generate_dashboard.sh
โ”œโ”€โ”€ dashboard/
โ”‚   โ””โ”€โ”€ template.html     # Dashboard template
โ”œโ”€โ”€ checks/
โ”‚   โ”œโ”€โ”€ runtime.md        # Runtime interpretation
โ”‚   โ”œโ”€โ”€ channels.md       # Channel policy checks
โ”‚   โ”œโ”€โ”€ agents.md         # Agent permission checks
โ”‚   โ”œโ”€โ”€ cron.md           # Cron job checks
โ”‚   โ”œโ”€โ”€ skills.md         # Skill safety checks
โ”‚   โ”œโ”€โ”€ sessions.md       # Session isolation
โ”‚   โ””โ”€โ”€ network.md        # Network exposure
โ”œโ”€โ”€ scenarios/
โ”‚   โ”œโ”€โ”€ prompt-injection.md
โ”‚   โ”œโ”€โ”€ session-leak.md
โ”‚   โ”œโ”€โ”€ privilege-escalation.md
โ”‚   โ”œโ”€โ”€ credential-exposure.md
โ”‚   โ””โ”€โ”€ unauthorized-access.md
โ””โ”€โ”€ templates/
    โ”œโ”€โ”€ report.md         # Full report template
    โ”œโ”€โ”€ finding.md        # Single finding template
    โ””โ”€โ”€ summary.md        # Quick summary template

Security Assessment Questions

When auditing, consider:

  • Exposure: What network interfaces can reach this agent?
  • Authentication: What verification does each access point require?
  • Isolation: What boundaries exist between agent and host?
  • Trust: What content sources are considered "trusted"?
  • Auditability: What evidence exists of agent's actions?
  • Least Privilege: Does agent have only necessary permissions?

Remember: This skill exists to make OpenClaw self-aware of its security posture. Use regularly, extend as needed, never skip the audit.

Installation

Terminal bash

openclaw install secucheck
    
Copied!

๐Ÿ’ปCode Examples

...

.txt
---

## Features

- ๐Ÿ” **Comprehensive**: Channels, agents, cron, skills, sessions, network, runtime
- ๐Ÿ‘ค **3 Expertise Levels**: Beginner / Intermediate / Expert
- ๐ŸŒ **Localized**: Final report in user's language
- ๐ŸŽฏ **Attack Scenarios**: Real-world exploitation paths
- โšก **Runtime Checks**: VPN, containers, privileges, network exposure
- ๐ŸŽจ **Dashboard**: Visual HTML report with security score

---

# Agent Instructions

*Everything below is for the agent executing this skill.*

---

## When to Use

Trigger this skill when:
- User requests security checkup/audit
- **Auto-trigger**: Installing skills, creating/modifying agents, adding/modifying cron jobs
- Periodic review (recommended: weekly)

## Expertise Levels

| Level | Identifier | Style |
|-------|------------|-------|
| Beginner | `1`, `beginner` | Analogies, simple explanations, no jargon |
| Intermediate | `2`, `intermediate` | Technical details, config examples |
| Expert | `3`, `expert` | Attack vectors, edge cases, CVE references |

## Execution Flow

### Step 1: Ask Level (before running anything)

Present options in user's language. Example (English):

๐Ÿ“Œ All levels run the same checksโ€”only explanation depth varies.

-all-levels-run-the-same-checksonly-explanation-depth-varies.txt
**STOP HERE. Wait for user response.**

### Step 2: Run Audit

bash ~/.openclaw/skills/secucheck/scripts/full_audit.sh

bash-openclawskillssecucheckscriptsfullauditsh.txt
Returns JSON with findings categorized by severity.

### Step 3: Format Output

Parse JSON output and format based on user's expertise level.
**Final report must be in user's language.**

#### Report Structure (Organize by Category)

- [findings related to NETWORK category]

--findings-related-to-network-category.txt
Group findings by their `category` field, not just severity.
Within each category, show severity icon and explain.

### Step 4: Auto-Open Dashboard

After text report, automatically generate and serve dashboard:

bash ~/.openclaw/skills/secucheck/scripts/serve_dashboard.sh

bash-openclawskillssecucheckscriptsservedashboardsh.txt
The script returns JSON with `url` (LAN IP) and `local_url` (localhost).
**Use the `url` field** (not localhost) when telling the user โ€” they may access from another device.

Example:

๐Ÿ“Š ๋Œ€์‹œ๋ณด๋“œ๋„ ์—ด์—ˆ์–ด์š”: http://192.168.1.200:8766/secucheck-report.html

---http19216812008766secucheck-reporthtml.txt
If running in environment where browser can be opened, use browser tool to open it.

## Cross-Platform Support

Scripts run on Linux, macOS, and WSL. Check the JSON output for platform info:

}

.txt
### Platform Detection

| Field | Values |
|-------|--------|
| `os` | `linux`, `macos`, `windows`, `unknown` |
| `os_variant` | `ubuntu`, `arch`, `dsm`, `wsl`, version string |
| `in_wsl` | `true` if Windows Subsystem for Linux |
| `in_dsm` | `true` if Synology DSM |

### Handling Failed Checks

If `failed_checks` array is non-empty, run fallback commands based on platform:

#### Network Info Fallbacks

| Platform | Command |
|----------|---------|
| Linux | `ip addr show` or `ifconfig` |
| macOS | `ifconfig` |
| WSL | `ip addr show` (or check Windows via `cmd.exe /c ipconfig`) |
| Windows | PowerShell: `Get-NetIPAddress` |
| DSM | `ifconfig` or `/sbin/ip addr` |

#### Gateway Binding Fallbacks

| Platform | Command |
|----------|---------|
| Linux | `ss -tlnp \| grep :18789` or `netstat -tlnp` |
| macOS | `lsof -iTCP:18789 -sTCP:LISTEN` |
| Windows | PowerShell: `Get-NetTCPConnection -LocalPort 18789` |

#### File Permissions Fallbacks

| Platform | Command |
|----------|---------|
| Linux/macOS | `ls -la ~/.openclaw` |
| Windows | PowerShell: `Get-Acl $env:USERPROFILE\.openclaw` |

### Windows Native Support

If `os` is `windows` and scripts fail completely:

1. Use PowerShell commands directly:

Get-Process | Where-Object {$_.Name -like "*openclaw*"}

get-process--where-object-name--like-openclaw.txt
2. Report what you can check and note Windows-specific limitations.

### Minimal Environments (Docker, DSM)

Some environments lack tools. Check output and supplement:

| Missing Tool | Fallback |
|--------------|----------|
| `curl` | `wget -qO-` |
| `ss` | `netstat` |
| `ip` | `ifconfig` or `/sbin/ip` |
| `pgrep` | `ps aux \| grep` |

### Agent Decision Flow

4. Note any checks that couldn't complete

4-note-any-checks-that-couldnt-complete.txt
## Dashboard Generation

When user requests visual report:

}

.txt
Provide URL directly to user.

## Detailed Check References

Read these only when deep explanation needed:

| File | Domain |
|------|--------|
| `checks/runtime.md` | Live system state |
| `checks/channels.md` | Channel policies |
| `checks/agents.md` | Agent permissions |
| `checks/cron.md` | Scheduled jobs |
| `checks/skills.md` | Installed skills |
| `checks/sessions.md` | Session isolation |
| `checks/network.md` | Network configuration |

## Attack Scenario Templates

Use these for expert-level explanations:

| File | Scenario |
|------|----------|
| `scenarios/prompt-injection.md` | External content manipulation |
| `scenarios/session-leak.md` | Cross-session data exposure |
| `scenarios/privilege-escalation.md` | Tool permission abuse |
| `scenarios/credential-exposure.md` | Secret leakage |
| `scenarios/unauthorized-access.md` | Access control bypass |

## Risk Levels

Tags

#web_and-frontend-development #security

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author jooneyp
Last Updated 3/10/2026
๐Ÿš€
Optimized for
Claude 3.5
๐Ÿง 

Ready to Install?

Get started with this skill in seconds

openclaw install secucheck