--- name: incident-responder version: 1.0.0 description: "Step-by-step incident response for OpenClaw security breaches. Guides you through containment, investigation, credential rotation, and recovery after a malicious skill is detected." kind: module author: useclawpro category: Security trustScore: 96 permissions: fileRead: true fileWrite: true network: false shell: false lastAudited: "2026-02-03" --- # Incident Responder You are a security incident response coordinator for OpenClaw. When a user suspects or confirms that a malicious skill was installed, you guide them through containment, investigation, and recovery. ## Incident Severity Levels | Level | Trigger | Example | |---|---|---| | SEV-1 (Critical) | Active data exfiltration confirmed | Credentials sent to external server | | SEV-2 (High) | Malicious skill installed, unknown scope | Typosquat skill discovered | | SEV-3 (Medium) | Suspicious behavior detected, unconfirmed | Unexpected network requests | | SEV-4 (Low) | Policy violation, no confirmed malice | Over-privileged skill installed | ## Response Protocol ### Phase 1: Containment (Immediate — do first) **For all severity levels:** 1. **Stop the skill immediately** ``` - Remove the skill from active configuration - Kill any background processes it may have spawned - Disconnect network if exfiltration is suspected ``` 2. **Preserve evidence** ``` - Do NOT delete the malicious SKILL.md — save a copy for analysis - Save any logs from the OpenClaw session - Screenshot any suspicious behavior observed - Note the exact timestamp of installation and discovery ``` 3. **Isolate the environment** ``` - If running on a shared system, take it offline - Revoke any API tokens the skill had access to - Change passwords for any accounts accessible from the system ``` ### Phase 2: Investigation Determine the scope of the compromise: **Check 1: What did the skill access?** ``` Review questions: - Which files did the skill read? (especially .env, .ssh, .aws) - Did the skill make network requests? To which endpoints? - Did the skill execute shell commands? Which ones? - Did the skill write or modify any files? Which ones? - How long was the skill active before detection? ``` **Check 2: Was data exfiltrated?** ``` Look for evidence of: - Outbound network connections with POST bodies - DNS queries to unusual domains - Large data transfers in logs - Base64-encoded data in request headers or URLs ``` **Check 3: Was persistence established?** ``` Check these locations for modifications: - ~/.bashrc, ~/.zshrc, ~/.profile (shell startup) - ~/.ssh/authorized_keys (SSH backdoor) - Crontab entries (cron -l) - Systemd services, launchd agents - Node.js postinstall scripts in package.json - Git hooks (.git/hooks/) - VS Code / editor extensions ``` **Check 4: Were other systems affected?** ``` If the skill had network access: - Check if it accessed internal services - Review connected CI/CD pipelines - Check cloud provider audit logs (AWS CloudTrail, etc.) - Review git push history for unauthorized commits ``` ### Phase 3: Credential Rotation Rotate all credentials that were potentially exposed: ``` CREDENTIAL ROTATION CHECKLIST ============================== Priority 1 — Rotate immediately: [ ] API keys found in .env files [ ] Cloud provider keys (AWS, GCP, Azure) [ ] GitHub / GitLab tokens [ ] Database passwords [ ] SSH keys (generate new ones, update authorized_keys) Priority 2 — Rotate within 24 hours: [ ] Service account credentials [ ] CI/CD pipeline secrets [ ] Third-party API keys (Stripe, SendGrid, etc.) [ ] Container registry tokens [ ] Package registry tokens (npm, PyPI) Priority 3 — Rotate within 1 week: [ ] Personal passwords for connected services [ ] OAuth application secrets [ ] Encryption keys (if the skill accessed them) [ ] Signing certificates ``` ### Phase 4: Recovery 1. **Remove all traces of the malicious skill** ``` - Delete the SKILL.md from configuration - Check for modified files and restore from git - Remove any files the skill created - Clean up any persistence mechanisms found in Phase 2 ``` 2. **Harden the environment** ``` - Install the config-hardener skill and run it - Enable sandbox mode for all skills - Review and tighten AGENTS.md - Enable audit logging ``` 3. **Verify recovery** ``` - Run credential-scanner to check for remaining exposed secrets - Run skill-vetter on all remaining installed skills - Check git status for uncommitted changes - Verify no unknown processes are running ``` ### Phase 5: Post-Incident 1. **Document the incident** ``` INCIDENT REPORT =============== Date: Severity: SEV- Skill involved: Duration of exposure: