在访问网站的时候,会时不时的出现403 Forbidden错误,浏览器会给出403 Forbidden错误提示403 Forbidden是HTTP协议中的一个状态码,可以简单的理解为没有权限访问此站。该状态表示服务器理解了本次请求但是拒绝执行该任务,该请求不该重发给服务器。服务器接收了本次请求,并且知道了要怎么处理,但是由于某些原因并不执行该任务。这个时候服务器就返回给客户端一个403的状态码。上面说到的某些原因,可能是什么原因呢?总结汇总如下几个情况会导致产生403
403.1错误是由于"执行"访问被禁止而造成的,若试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会出现此种错误。【目录没执行权限,切换上传文件到有权限执行脚本的目录../等方式跳目录】
403.2错误是由于"读取"访问被禁止而造成的。导致此错误是由于没有可用的默认网页并且没有对目录启用目录浏览,或者要显示的HTML网页所驻留的目录仅标记为"可执行"或"脚本"权限。【跑目录,跑文件】
403.3错误是由于"写入"访问被禁止而造成的,当试图将文件上载到目录或在目录中修改文件,但该目录不允许"写"访问时就会出现此种错误。【目录没写权限】
403.4错误是由于要求SSL而造成的,您必须在要查看的网页的地址中使用"https"。【https访问】
403.5错误是由于要求使用128位加密算法的Web浏览器而造成的,如果您的浏览器不支持128位加密算法就会出现这个错误,您可以连接微软网站进行浏览器升级。
403.6错误是由于IP地址被拒绝而造成的。如果服务器中有不能访问该站点的IP地址列表,并且您使用的IP地址在该列表中时您就会返回这条错误信息。【尝试修改请求头】
403.7错误是因为要求客户证书,当需要访问的资源要求浏览器拥有服务器能够识别的安全套接字层(SSL) 客户证书时会返回此种错误。
403.8错误是由于禁止站点访问而造成的,若服务器中有不能访问该站点的DNS名称列表,而您使用的DNS名称在列表中时就会返回此种信息。请注意区别403.6与403.8错误。
403.9错误是由于连接的用户过多而造成的,由于Web服务器很忙,因通讯量过多而无法处理请求时便会返回这条错误。
403.10错误是由于无效配置而导致的错误,当您试图从目录中执行CGI、ISAPI或其他可执行程序,但该目录不允许执行程序时便会返回这条错误。
403.11错误是由于密码更改而导致无权查看页面。【tomcat默认登录账号密码错误出现403】
403.12错误是由于映射器拒绝访问而造成的。若要查看的网页要求使用有效的客户证书,而您的客户证书映射没有权限访问该Web站点时就会返回映射器拒绝访问的错误。
403.13错误是由于需要查看的网页要求使用有效的客户证书而使用的客户证书已经被吊销,或者无法确定证书是否已吊销造成的。
403.14错误Web 服务器被配置为不列出此目录的内容,拒绝目录列表。
403.15错误是由于客户访问许可过多而造成的,当服务器超出其客户访问许可限制时会返回此条错误。
403.16错误是由于客户证书不可信或者无效而造成的。
403.17错误是由于客户证书已经到期或者尚未生效而造成的。
渗透测试在不知道是属于那一种情况的时候就要求我们在遇到403的页面的时候要不断的测试,从中寻找突破点。
技巧1:遇到403了,上目录扫描工具,扫目录,扫文件 【403.14错误Web 服务器被配置为不列出此目录的内容,拒绝目录列表】
技巧2:通过http://mail.xxxx.com 访问的地址换成 https://mail.xxxxx.com 【403.4错误是由于要求SSL而造成的,您必须在要查看的网页的地址中使用"https"。】
技巧3:通过切换IP,好几次在渗透的时候开的国外的代理,访问国内被渗透对象,显示403.切换成国内的IP就访问正常
技巧4:请修改客户端请求头中的Host,很多WEB应用通过获取HTTP HOST头来获得当前请求访问的位置,当服务器获取HOST的方式不当时,我们可以通过修改Host值来进行绕过【二级域名】。
技巧5:尝试使用X-Original-URL和X-Rewrite-URL标头绕过Web服务器的限制。通过支持X-Original-URL和X-Rewrite-URL标头,用户可以使用X-Original-URL或X-Rewrite-URL HTTP请求标头覆盖请求URL中的路径,尝试绕过对更高级别的缓存和Web服务器的限制。
技巧6:尝试使用Referer标头绕过Web服务器的限制,Referer 请求头包含了当前请求页面的来源页面的地址,即表示当前页面是通过此来源页面里的链接进入的。服务端一般使用 Referer 请求头识别访问来源。
技巧7:伪造代理绕过限制,一般开发者会通过Nginx代理识别访问端IP限制对接口的访问,尝试使用 X-Forwarded-For、X-Forwared-Host等标头绕过Web服务器的限制。
- X-Originating-IP: 127.0.0.1
- X-Remote-IP: 127.0.0.1
- X-Client-IP: 127.0.0.1
- X-Forwarded-For: 127.0.0.1
- X-Forwared-Host: 127.0.0.1
- X-Host: 127.0.0.1
- X-Custom-IP-Authorization: 127.0.0.1
技巧8:扩展名绕过
基于扩展名,用于绕过403受限制的目录。
site.com/admin => 403
site.com/admin/ => 200
site.com/admin// => 200
网上有公开的burp测试插件,可完成自动扫描403请求。
工具地址,关注公众号回复 403 获取下载地址