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.
67
81%
Does it follow best practices?
Impact
—
No eval scenarios have been run
Passed
No known issues
Structured workflow for responding to potentially compromised user accounts using the PICERL model.
USER_ID - Username or email of the potentially compromised userCASE_ID - SOAR case ID for documentationALERT_GROUP_IDENTIFIERS - Alert group identifiers from SOARINITIAL_ALERT_DETAILS - Summary of triggering alertAfter 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:
Step 5.4: Communicate with User
Inform the user:
Step 5.5: Monitor Account
Enhanced monitoring for 30 days:
Use /document-in-case with recovery status.
Use /generate-report with:
Review:
| Likelihood | Disable Account | Reset Password | Terminate Sessions |
|---|---|---|---|
| Confirmed | ✅ Immediate | ✅ | ✅ |
| High | ✅ Recommended | ✅ | ✅ |
| Medium | Consider | ✅ | ✅ |
| Low | No | Consider | Consider |
| Mechanism | Where to Check |
|---|---|
| Email forwarding | Mail rules |
| Delegate access | Mailbox permissions |
| OAuth apps | Connected applications |
| Inbox rules | Mail filters |
| Recovery options | Account settings |
| API tokens | Developer settings |
086cbf6
If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.