analyze-content-gaps
Identify content gaps and organizational opportunities. Analyzes missing content areas, redundancies, and consolidation…
Respond to a potentially compromised user account. Use when impossible travel, credential stuffing, successful phishing, or suspicious activity indicates account compromise. Investigates activity, contains the account, removes persistence, and restores access.
$ npx -y skills add dandye/ai-runbooks --skill respond-compromised-account --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/respond-compromised-accountContext preview
The summary Claude sees to decide when to auto-load this skill.
Respond to a potentially compromised user account. Use when impossible travel, credential stuffing, successful phishing, or suspicious activity indicates account compromise. Investigates activity, contains the account, removes persistence, and restores access.
type: Skill name: respond-compromised-account description: "Respond to a potentially compromised user account. Use when impossible travel, credential stuffing, successful phishing, or suspicious activity indicates account compromise. Investigates activity, contains the account, removes persistence, and restores access." required_roles: chronicle: roles/chronicle.editor soar: roles/chronicle.soarAdmin gti: GTI Standard personas: [incident-responder] generated: by: human:dandye at: 2026-02-04T06:10:49-05:00
Structured workflow for responding to potentially compromised user accounts using the PICERL model.
**After completing each phase, you MUST report these outputs:**
| Output | Description | |--------|-------------| | `AFFECTED_ACCOUNTS` | User accounts confirmed or suspected compromised | | `SUSPICIOUS_ACTIVITY` | Summary of anomalous activity detected | | `ACCESS_SCOPE` | Systems/data the account had access to | | `COMPROMISE_LIKELIHOOD` | Assessment level: `Low`, `Medium`, `High`, `Confirmed` |
| Output | Description | |--------|-------------| | `DISABLED_ACCOUNTS` | Accounts that were disabled | | `RESET_PASSWORDS` | Accounts with passwords reset | | `REVOKED_SESSIONS` | Sessions terminated |
| Output | Description | |--------|-------------| | `REMOVED_PERSISTENCE` | Persistence mechanisms removed (forwarding rules, OAuth apps, etc.) | | `CLEANED_ENDPOINTS` | Associated endpoints verified clean |
| Output | Description | |--------|-------------| | `RESTORED_ACCOUNTS` | Accounts re-enabled with new security controls | | `USER_NOTIFICATIONS` | Users notified of incident and required actions |
**Step 2.1: Get Context**
secops-soar.get_case_full_details(case_id=CASE_ID)
Use `/check-duplicates`.
**Step 2.2: Gather Initial Context**
SIEM entity lookup:
secops-mcp.lookup_entity(entity_value=USER_ID)
*(If IDP tools available)*:
**Step 2.3: Analyze User Activity**
Search SIEM for last 96 hours:
secops-mcp.search_security_events(
text="All activity for USER_ID",
hours_back=96
)Look for:
**Step 2.4: Check Related Cases**
Use `/find-relevant-case` with `[USER_ID]`.
**Step 2.5: Assess Compromise Likelihood**
| Level | Indicators | |-------|------------| | **Low** | Single anomalous event, user confirms legitimate | | **Medium** | Multiple anomalies, unverified | | **High** | Clear malicious activity patterns | | **Confirmed** | Known credential theft, attacker actions visible |
Document: `COMPROMISE_LIKELIHOOD`
**Step 2.6: Document Identification**
Use `/document-in-case` with findings and assessment.
---
**Step 3.1: Confirm Containment Actions**
Based on `COMPROMISE_LIKELIHOOD`, use `/confirm-action`:
**High/Confirmed:** > "Disable account [USER_ID] immediately?"
**Medium:** > "Reset password and terminate sessions for [USER_ID]?"
**Low:** > "Force MFA re-enrollment for [USER_ID]?"
**Step 3.2: Execute Containment**
*(Requires Identity Provider tools)*
Actions by severity:
**Step 3.3: Verify Containment**
Monitor for continued activity:
secops-mcp.search_security_events(
text="Activity from USER_ID after containment",
hours_back=1
)Use `/document-in-case` with containment status.
---
**Step 4.1: Investigate Attacker Actions**
Thoroughly review what the attacker did while in the account:
secops-mcp.search_security_events(
text="All actions by USER_ID during compromise window",
hours_back=96
)Focus on:
**Step 4.2: Check for Persistence**
*(Requires email/cloud platform tools)*
Look for:
**Step 4.3: Remove Persistence**
Delete/revoke all identified persistence:
**Step 4.4: Endpoint Investigation**
If account accessed specific endpoints:
Trigger endpoint triage to check for:
Use `/document-in-case` with eradication findings.
---
**Step 5.1: Ensure Threat Removed**
Verify:
**Step 5.2: Secure Account**
**Step 5.3: Re-enable Account**
*(If disabled during containment)*
Re-enable with:
This repository provides security operations runbooks and role-based guides for AI-assisted cybersecurity workflows.
Identify content gaps and organizational opportunities. Analyzes missing content areas, redundancies, and consolidation…
Comprehensive content quality and maintenance assessment. Evaluates documentation quality, relevance, maintenance needs, and…
Check for duplicate or similar cases. Use before deep analysis to avoid investigating the same incident twice. Takes a CASE_ID…
Close a case or alert with proper reason and documentation. Use when triage determines an alert is FP/BTP or investigation is…
Automated content similarity and grouping analysis. Groups related documents by topic, purpose, or content similarity.
Ask the user to confirm before taking a significant action. Use before containment, remediation, or other impactful operations to…