Analyze emails for phishing, scam indicators, and security threats
npx skills add https://github.com/claude-office-skills/skills --skill Suspicious Email Analyzer
Analyze emails for phishing attempts, scams, and security threats to protect against fraud.
This skill helps you:
"Is this email legitimate?"
"Check this email for phishing"
"Analyze this suspicious message"
Include:
## Email Security Assessment
### Sender Analysis
- [ ] **Domain mismatch**: Display name doesn't match email domain
- [ ] **Lookalike domain**: microsoft.corn, amaz0n.com
- [ ] **Free email for business**: Official company using gmail.com
- [ ] **Random characters**: [email protected]
- [ ] **No reply-to**: Cannot respond to sender
### Content Analysis
- [ ] **Urgency pressure**: "Act NOW", "Account suspended"
- [ ] **Threat language**: "Legal action", "Account closure"
- [ ] **Too good to be true**: Prize winner, inheritance
- [ ] **Generic greeting**: "Dear Customer" vs your name
- [ ] **Grammar/spelling errors**: Unusual mistakes
- [ ] **Requests sensitive info**: Password, SSN, credit card
- [ ] **Unexpected attachment**: Especially .exe, .zip, .docm
### Link Analysis
- [ ] **Hover reveals different URL**: Display vs actual link
- [ ] **Shortened URLs**: bit.ly, tinyurl hiding destination
- [ ] **HTTP (not HTTPS)**: Insecure for sensitive pages
- [ ] **Misspelled domains**: paypa1.com, netlfix.com
- [ ] **IP address URLs**: http://192.168.1.1/login
- [ ] **Excessive subdomains**: secure.login.verify.site.com
### Technical Indicators
- [ ] **Missing security headers**: SPF, DKIM, DMARC fail
- [ ] **Unusual sending time**: 3 AM from "local bank"
- [ ] **Bulk email markers**: Mass mail headers present
# Email Security Analysis
## Summary
| Attribute | Value |
|-----------|-------|
| **Threat Level** | ๐ด HIGH / ๐ MEDIUM / ๐ก LOW / ๐ข SAFE |
| **Confidence** | [X]% |
| **Verdict** | Likely Phishing / Suspicious / Legitimate |
## Sender Analysis
### Email Address
- **Display Name**: PayPal Security Team
- **Actual Address**: [email protected]
- **Status**: ๐ด SUSPICIOUS
### Issues Found
1. โ Domain "paypa1-verify.com" is not official PayPal
2. โ Uses number "1" instead of letter "l"
3. โ Domain registered 3 days ago
## Content Analysis
### Subject: "Urgent: Your Account Has Been Limited"
- ๐ด Uses urgency tactic
- ๐ด Threatening language
### Body Issues
| Issue | Example | Severity |
|-------|---------|----------|
| Generic greeting | "Dear Customer" | ๐ก Medium |
| Urgency | "within 24 hours" | ๐ด High |
| Threat | "account suspended" | ๐ด High |
| Grammar | "Please to verify" | ๐ Medium |
### Requests Made
- โ Asks to click link
- โ Requests login credentials
- โ Asks for personal information
## Link Analysis
### Link Found
- **Display**: "Verify Your Account"
- **Actual URL**: http://paypa1-verify.com/login
- **Status**: ๐ด DANGEROUS
### URL Issues
1. โ Domain is not paypal.com
2. โ Uses HTTP (insecure)
3. โ Suspicious path mimics login
## Conclusion
### Verdict: ๐ด PHISHING ATTEMPT
This email shows multiple indicators of a phishing attack:
1. Fake sender domain mimicking PayPal
2. Urgency and threat tactics
3. Link to fraudulent website
4. Request for login credentials
### Recommended Actions
1. โ
Do NOT click any links
2. โ
Do NOT reply to this email
3. โ
Report to [email protected]
4. โ
Delete the email
5. โ
If clicked link, change password immediately
## Phishing Attack Types
### 1. Credential Phishing
**Goal**: Steal login credentials
**Pretends to be**: Banks, email providers, social media
**Tactics**: Fake login pages, urgent account issues
**Example**: "Your account password expires today"
### 2. CEO/Business Email Compromise
**Goal**: Wire transfer fraud
**Pretends to be**: Executive, vendor, partner
**Tactics**: Urgency, authority, secrecy
**Example**: "Please wire $50K for urgent deal, keep confidential"
### 3. Technical Support Scam
**Goal**: Remote access or payment
**Pretends to be**: Microsoft, Apple, ISP
**Tactics**: Fake virus alerts, account compromise
**Example**: "We detected virus on your computer, call now"
### 4. Invoice/Payment Scam
**Goal**: Payment to fraudulent account
**Pretends to be**: Vendor, client, internal
**Tactics**: Fake invoices, changed bank details
**Example**: "Updated bank account for invoice payment"
### 5. Package Delivery Scam
**Goal**: Credentials or malware
**Pretends to be**: FedEx, UPS, USPS, DHL
**Tactics**: Failed delivery, tracking issues
**Example**: "Package could not be delivered, click to reschedule"
### 6. Tax/Government Scam
**Goal**: Personal info or payment
**Pretends to be**: IRS, SSA, government agency
**Tactics**: Legal threats, refund promises
**Example**: "IRS Notice: Immediate action required"
## How to Spot the Difference
### Banking Email Example
| Aspect | Legitimate | Phishing |
|--------|------------|----------|
| From | [email protected] | [email protected] |
| Greeting | "Hi John Smith" | "Dear Customer" |
| Urgency | "Review when convenient" | "IMMEDIATE ACTION REQUIRED" |
| Links | Links to chase.com | Links to chase-verify.com |
| Action | "Log in to your account" | "Enter password here" |
| Tone | Professional, calm | Threatening, urgent |
| Personalization | Account ending 4532 | No specifics |
## Response Protocol
### If Email is SUSPICIOUS (๐ด๐ )
1. โ Do NOT click links
2. โ Do NOT download attachments
3. โ Do NOT reply
4. โ Do NOT call numbers in email
5. โ
Verify through official channels
- Go to official website directly (type URL)
- Call known customer service number
6. โ
Report the email
- Forward to IT security
- Report to company being impersonated
7. โ
Delete the email
### If You Already Clicked
1. โ
Disconnect from internet (if malware suspected)
2. โ
Change passwords immediately
3. โ
Enable 2-factor authentication
4. โ
Monitor accounts for suspicious activity
5. โ
Run antivirus scan
6. โ
Report to IT department
7. โ
Consider credit monitoring if financial info shared
### Reporting Channels
- **Generic phishing**: [email protected]
- **IRS scams**: [email protected]
- **FTC**: reportfraud.ftc.gov
- **Company specific**: Usually [email protected]
## Email Header Deep Dive
### Key Headers to Review
| Header | What It Shows |
|--------|---------------|
| From | Displayed sender |
| Return-Path | Actual reply address |
| Received | Server path (bottom = origin) |
| SPF | Sender authorized? |
| DKIM | Signature valid? |
| DMARC | Policy result |
### Authentication Results
| Result | Meaning |
|--------|---------|
| pass | Legitimate |
| fail | Likely spoofed |
| softfail | Possibly spoofed |
| none | No policy set |
Build communication features with Twilio: SMS messaging, voice calls, WhatsApp Business API, and user verification (2FA). Covers the full spectrum from simple notifications to complex IVR systems and multi-channel authentication. Critical focus on compliance, rate limits, and error handling. Use when: twilio, send SMS, text message, voice call, phone verification.
| Interact with Google Chat - list spaces, send messages, read conversations, and manage DMs. find a chat room, send a DM, or create a new chat space. Lightweight alternative to full Google Workspace MCP server with standalone OAuth authentication.
Hunting skill for auth bypass vulnerabilities. Built from 12 public bug bounty reports across SAML XSW / parser-differential (GitHub Enterprise CVE-2025-25291/25292), SAML signature stripping (Uber, Rocket.Chat, samlify CVE-2025-47949), SAML domain enforcement bypass via control characters (HackerOne 2024), partner-portal cross-IdP assertion reuse (Slack), WordPress XMLRPC bypassing SSO (Uber), JWT alg-confusion HS256/RS256 (Jitsi), JWT signature-validation skip (Linktree, Newspack), and token-audience confusion (Argo CD CVE-2023-22482). For standalone JWT signature/crypto forging (alg:none, key confusion, kid/jku) see hunt-jwt-crypto; this skill covers JWT only inside SSO/SAML/token-trust bypass chains. SAML assertion-layer attacks (XSW, comment injection, signature stripping, XXE-in-assertion) are owned by hunt-saml; this skill owns the broader cross-protocol auth-bypass taxonomy. Use when hunting auth bypass โ see the Legacy-Protocol Matrix for branded-UI vs legacy-endpoint patterns.
Use when the user asks to "personalize the email", "add merge tags / dynamic content", "set up conditional blocks per segment", or "make first-name and product-recommendation fields fall back safely"; produces a merge-tag map with per-tag fallbacks, conditional-block rules with per-segment variations, a fallback-safety audit, and a PII guard on what may render, informing the SEND E (Engagement/personalization) dimension. Not for building the segments โ use list-segment-builder; not for writing the base copy โ use email-creative-builder; not for scoring EQS or running vetoes โ use email-quality-auditor. ้ฎไปถไธชๆงๅ/ๅๅนถๆ ็ญพ/ๆกไปถๅ ๅฎนๅ/ๅ ๅบ้ป่ฎคๅผ
Manage PR crises. Use when: reputational threat emerges, need stakeholder messaging, or communication timeline.
Audit and harden your SaaS tool stack โ enforce SSO, review OAuth grants, manage shadow IT, and secure admin accounts across Slack, GitHub, Google Workspace, and AWS. Use when tightening security across company SaaS tools.
>- Investigator OPSEC โ threat-model who might notice you, control your attribution surface across IP, ASN, browser and TLS fingerprint, timing and logged-in accounts, separate research identity from real identity, build and age a sockpuppet research persona, and choose between VPN, residential proxy and Tor. Use when setting up a research account, avoiding tipping off a subject, worrying about LinkedIn profile-view leakage, needing a burner phone or email, or hardening a research VM or browser profile. Applies to covert due diligence, insider-threat investigation, source protection in journalism, and law-enforcement online work. Reference at useosint.com/skills/investigate-without-getting-made.
De-identify a session transcript (file or folder) by redacting PII LOCALLY before any sharing or cloud use. Produces a redacted GREEN copy with unique reserved-sentinel placeholders ([CONFIDE_PERSON_0001], [CONFIDE_EMAIL_0001], [CONFIDE_DATE_0002]...) plus a counts-only stats summary, and a local secret <name>.map.json (0600, gitignored) that enables confide:rehydrate to restore real values after a cloud analysis. Use when the user says "anonymize this transcript", "redact PII", "de-identify session", "make safe to share", "strip personal data", "anonymize notes before sending to an LLM", or points at a transcript/folder that should be scrubbed. Local-only by default โ raw text never leaves the machine; the map is the only artifact with originals and stays local; nothing printed is PII; human review is still required before sharing.
Take claude-office-skills/suspicious email analyzer from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side โ one of them will be ignored.