Bypass 403 Forbidden 403页面绕过技巧

发布时间 2023-11-26 17:36:38作者: 让-雅克-卢梭
  • 介绍

根据基础设施分析师所做的配置,有一些方法可以解决 403 禁止错误,通常是通过配置何时不允许您访问该目录或文件的某些资源。

我创建了这个快速文档来演示一些技术,包括我已经使用它并设法通过 403错误并访问数据库管理登录页面。


一些技巧?

注意力 

在使用下面的技术之前,值得为每次尝试更改 HTTP 方法,例如 GET、POST、PATCH、OPTIONS、TRACE...

  1. 方法HTTP 标头模糊测试

在某些情况下,可以通过更改请求的标头并包含内部地址来访问页面和私有文件,以下是一些示例;

  • X-ProxyUser-Ip: 127.0.0.1
  • 客户端IP:127.0.0.1
  • 主机:本地主机
  • X-起源-IP:127.0.0.1
  • X-转发-For:127.0.0.1
  • X-远程-IP:127.0.0.1
  • X-远程-地址:127.0.0.1
  • X-真实IP:127.0.0.1
  1. 方法路径模糊测试

我们可以尝试对 url 进行一些更改,例如使用特殊字符或包含 HTML 编码;

  • test.com/admin/*
  • test.com/*admin/
  • test.com/%2fadmin/
  • test.com%2fadmin%2f
  • test.com/./admin/
  • test.com//admin/./
  • test.com///admin///
  • test.com//admin//
  • test.com/ADMIN/
  • test.com/;/admin/
  • test.com//;//admin/

Bypass实例1

下面的示例是在 phpmyadmin 控制台中使用的绕过,配置为仅使用特定 IP xxxx 上下文 /phpmyadmin/ 进行访问

我做了一些尝试改变上下文,例如;

  • /phpmyadmin/*
  • /./phpmyadmin/
  • //phpmyadmin//
  • /*/phpmyadmin/

然而,没有成功:(

经过几次尝试通过 403 后,我尝试将上下文更改为;

  • ///phpmyadmin///

在本例中,使用 3 个斜杠 (///),我们设法传递 403 错误并访问 phpmyadmin 登录页面。?

Bypass实例2

在此示例中,我们使用 2 个斜杠 (//) 访问 WordPress 登录面板。

在此 url 中,我们无法使用带有 3 个斜杠的相同上下文,但是,我们设法使用上下文中的另一个更改。

使用下面的上下文

  • //wp-admin//


工具提示 ✅

一些开发人员创建了一些工具来帮助识别我们设法通过 403 错误的可能页面。下面的 github 项目 ( iamj0ker ) 已经过测试,我们能够验证一些禁止的条目。

github.com/iamj0ker/bypass-403

对于那些使用Burpsuite Professional 的用户,商店中有一个插件可以验证权限被拒绝的上下文,称为403 Bypasser

403 旁路者

为了找到可能具有 403 权限的目录,我们可以使用Dirsearch对目录和文件执行暴力破解