apk-redteam-pipeline
End-to-end Android APK red-team pipeline — automated APK acquisition (Play Store + apkpure + apkmirror fallback), jadx…
Microsoft 365 / Entra ID red-team attack chain — current 2026 reality. AADSTS code reference, user enumeration vectors (with hardening status), Smart Lockout math, Conditional Access bypass options, ROPC + SAML SSO browser flow, Burp/Playwright templates. Built from authorized
Claude Code
$ npx -y skills add elementalsouls/Claude-BugHunter --skill m365-entra-attack --agent claude-code
Codex
$ npx skills add elementalsouls/Claude-BugHunter --skill m365-entra-attack -a codex -y
Cursor
$ npx skills add elementalsouls/Claude-BugHunter --skill m365-entra-attack -a cursor -y
Gemini CLI
$ npx skills add elementalsouls/Claude-BugHunter --skill m365-entra-attack -a gemini-cli -y
GitHub Copilot
$ npx skills add elementalsouls/Claude-BugHunter --skill m365-entra-attack -a github-copilot -y
OpenCode
$ npx skills add elementalsouls/Claude-BugHunter --skill m365-entra-attack -a opencode -y
Windsurf
$ npx skills add elementalsouls/Claude-BugHunter --skill m365-entra-attack -a windsurf -y
name: m365-entra-attack description: Microsoft 365 / Entra ID red-team attack chain — current 2026 reality. AADSTS code reference, user enumeration vectors (with hardening status), Smart Lockout math, Conditional Access bypass options, ROPC + SAML SSO browser flow, Burp/Playwright templates. Built from authorized red-team work where ROPC spray surfaced pre-existing lockouts and CA-blocked credentials, plus real-time external attacker activity correlation. Use for any M365/Entra credential attack, password spray, user enumeration, CA-bypass exploration, or active-attacker-detection scenario. sources: authorized-engagement, microsoft-docs, AADInternals report_count: 1
Trigger when:
DO NOT use for:
---
# For each owned domain msftrecon -d client.example msftrecon -d clientltd.example msftrecon -d sister-brand-school.example
Key fields in output:
**Red flag:** if the org has multiple Entra tenants for sister domains, each is a separate attack surface with its own user list, lockout policy, and CA configuration. Don't assume one spray covers all.
---
| AADSTS | Meaning | Lockout impact | What to do | |---|---|---|---| | 50034 | User does not exist | None | Skip; remove from spray list | | 50126 | Invalid username/password | +1 attempt counter | User exists — try alternate password later (within cap) | | 50053 | Account locked (Smart Lockout) | None (already locked) | Pre-existing → flag to SOC; don't retry | | 53003 | CA blocked token issuance | +1 attempt counter | **PASSWORD VALID** — STOP, password is correct | | 50076 | MFA required | +1 attempt counter | **PASSWORD VALID** — second factor needed | | 50079 | Strong auth required | +1 attempt counter | **PASSWORD VALID** — same as 50076 | | 50158 | External auth required | +1 attempt counter | **PASSWORD VALID** — federated MFA | | 530003 | Device-state required | +1 attempt counter | **PASSWORD VALID** — needs compliant device | | 65001 | Consent required | +1 attempt counter | App-consent issue, not auth | | 700016 | App not in tenant | None | User in different tenant — adjust target | | 90002 | Tenant does not exist | None | Tenant typo / dead tenant |
**Critical insight:** any code in {53003, 50076, 50079, 50158, 530003} means **the password is correct** — Microsoft only returns these AFTER successful credential validation. Document as a confirmed-valid finding even if you can't get a token.
---
**Microsoft default policy:**
**Engagement discipline:**
**Mathematical guarantee:** with 1 attempt per user, **you cannot cause Smart Lockout** (1 < 10). Any AADSTS50053 you see is therefore pre-existing → use this for active-attacker detection (see `mid-engagement-ir-detection` skill).
---
GET /getuserrealm.srf?login=<email>&xml=1
Returns identical XML for any email matching tenant's owned domain. **Tenant-level only, not user-level.**
POST /common/GetCredentialType
{"username":"<email>", "isOtherIdpSupported":true, ...}Returns `AADSTS1659001` (missing flowToken) without proper session — can't enumerate.
GET /autodiscover/autodiscover.json/v1.0/<email>?Protocol=AutodiscoverV1
Returns identical 200 + same JSON body for any address. Hardened ~2024.
**OneDrive personal-site differential:**
GET /personal/<user>_<domain>_com/_layouts/15/onedrive.aspx HTTP/1.1 Host: <tenant>-my.sharepoint.com
**Caveats:**
**2026-05-17 re-verification (authorized-e
A self-contained Claude skill bundle for bug hunting and external red-team work · 83 skills · 15 slash commands · 681 disclosed-report patterns (433 now individually cited & auditable) across 24 core vulnerability classes · enterprise identity +
End-to-end Android APK red-team pipeline — automated APK acquisition (Play Store + apkpure + apkmirror fallback), jadx…
Local-tooling companion to the bug-bounty orchestrator — carries the SAME complete bug-bounty workflow, but reach for THIS…
Use at the START of any bug bounty hunting session, when switching targets, or when feeling lost about what to do next. Master…
Complete bug bounty workflow — recon (subdomain enumeration, asset discovery, fingerprinting, HackerOne scope, source code…
Bugcrowd-specific reporting tactics complementing report-writing: VRT category search-and-fallback strategy when no exact match…
Cloud IAM red-team attack chain across AWS, Azure, GCP — focused on EXTERNAL exploitation paths and post-credential-discovery…
Use for authorized security assessment of REST, GraphQL, WebSocket, or SOAP APIs, including discovery, authentication,…
Extract and decrypt Windows DPAPI-protected secrets (Credential Manager, browser logins/cookies, Wi-Fi credentials, KeePass keys)…
Clean and finalize authorized natural-language text intended for readers by auditing suspicious invisible Unicode and rewriting…