0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

渗透测试如何利用403页面

jf_Fo0qk3ln 来源:xpshuai.cn 2023-01-05 10:11 次阅读

0x01 前言




做渗透时经常会碰到扫到的资产403的情况,特别是资产微乎其微的情况下,面试有时也会问到,这里做个总结!

0x02 利用姿势




1.端口利用

扫描主机端口,找其它开放web服务的端口,访问其端口,挑软柿子。

2.修改HOST

Host在请求头中的作用:在一般情况下,几个网站可能会部署在同一个服务器上,或者几个web系统共享一个服务器,通过host头来指定应该由哪个网站或者web系统来处理用户的请求。而很多WEB应用通过获取HTTP HOST头来获得当前请求访问的位置,但是很多开发人员并未意识到HTTP HOST头由用户控制,从安全角度来讲,任何用户输入都是认为不安全的。

修改客户端请求头中的Host可以通过修改Host值修改为子域名或者ip来绕过来进行绕过二级域名;首先对该目标域名进行子域名收集,整理好子域名资产(host字段同样支持IP地址)。先Fuzz测试跑一遍收集到的子域名,这里使用的是Burp的Intruder功能。若看到一个服务端返回200的状态码,即表面成功找到一个在HOST白名单中的子域名。我们利用firefox插件来修改HOST值,成功绕过访问限制。

3.覆盖请求URL

尝试使用X-Original-URLX-Rewrite-URL标头绕过Web服务器的限制。通过支持X-Original-URLX-Rewrite-URL标头,用户可以使用这俩请求标头覆盖请求URL中的路径,尝试绕过对更高级别的缓存和Web服务器的限制

Request
GET /auth/login HTTP/1.1
Response
HTTP/1.1 403 Forbidden

Reqeust
GET / HTTP/1.1
X-Original-URL: /auth/login
Response
HTTP/1.1 200 OK

或者:

Reqeust
GET / HTTP/1.1
X-Rewrite-URL: /auth/login
Response
HTTP/1.1 200 OK


4.Referer标头绕过

尝试使用Referer标头绕过Web服务器的限制。

介绍:Referer请求头包含了当前请求页面的来源页面的地址,即表示当前页面是通过此来源页面里的链接进入的。服务端一般使用Referer请求头识别访问来源。

Request
GET /auth/login HTTP/1.1
Host: xxx
Response
HTTP/1.1 403 Forbidden

Reqeust
GET / HTTP/1.1
Host: xxx
ReFerer//xxx/auth/login
Response
HTTP/1.1 200 OK

或者

Reqeust
GET /auth/login HTTP/1.1
Host: xxx
ReFerer//xxx/auth/login
Response
HTTP/1.1 200 OK


5.代理IP

一般开发者会通过Nginx代理识别访问端IP限制对接口的访问,尝试使用X-Forwarded-ForX-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

如:

Request
GET /auth/login HTTP/1.1
Response
HTTP/1.1 401 Unauthorized

Reqeust
GET /auth/login HTTP/1.1
X-Custom-IP-Authorization: 127.0.0.1
Response
HTTP/1.1 200 OK


6.扩展名绕过

基于扩展名,用于绕过403受限制的目录。


	

site.com/admin => 403 site.com/admin/ => 200 site.com/admin// => 200 site.com//admin// => 200 site.com/admin/* => 200 site.com/admin/*/ => 200 site.com/admin/. => 200 site.com/admin/./ => 200 site.com/./admin/./ => 200 site.com/admin/./. => 200 site.com/admin/./. => 200 site.com/admin? => 200 site.com/admin?? => 200 site.com/admin??? => 200 site.com/admin..;/ => 200 site.com/admin/..;/ => 200 site.com/%2f/admin => 200 site.com/%2e/admin => 200 site.com/admin%20/ => 200 site.com/admin%09/ => 200 site.com/%20admin%20/ => 200


7.扫描的时候 遇到403了,上目录扫描工具,扫目录,扫文件(记住,扫描的时候要打开探测403,因为有些网站的目录没有权限访问会显示403,但是在这个目录下面的文件,我们或许能扫描到并访问 )


声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 服务器
    +关注

    关注

    12

    文章

    9034

    浏览量

    85211
  • URL
    URL
    +关注

    关注

    0

    文章

    139

    浏览量

    15313
  • 渗透
    +关注

    关注

    0

    文章

    20

    浏览量

    6269

原文标题:渗透测试如何利用403页面

文章出处:【微信号:菜鸟学信安,微信公众号:菜鸟学信安】欢迎添加关注!文章转载请注明出处。

收藏 人收藏

    评论

    相关推荐

    什么是渗透作用_金属封装又是如何发生渗透

      渗透作用使得芯片封装中没有绝对的气密性封装,那么什么是渗透作用?金属封装又是如何发生渗透的呢?   渗透:气体从密度大的一侧向密度小的一侧渗入、扩散、通过、和逸出固体阻挡层的过程。
    的头像 发表于 11-22 10:27 198次阅读

    TLV320ADC3101可以正确设置和读写PAGE0的数据,但是读取PAGE4上的寄存器值都为0,为什么?

    如题,通过csl库提供的程序,可以正确设置和读写PAGE0的数据,但是读取PAGE4上的寄存器值都为0,很奇怪,数据手册好像也没有说读取PAGE4与读取其他页面上的寄存器有什么不同,不知道有没有谁遇到同样问题,在线等!!!
    发表于 10-30 08:02

    TFP501、TFP403参考设计

    电子发烧友网站提供《TFP501、TFP403参考设计.pdf》资料免费下载
    发表于 09-29 09:53 0次下载
    TFP501、TFP<b class='flag-5'>403</b>参考设计

    Linux内核中的页面分配机制

    Linux内核中是如何分配出页面的,如果我们站在CPU的角度去看这个问题,CPU能分配出来的页面是以物理页面为单位的。也就是我们计算机中常讲的分页机制。本文就看下Linux内核是如何管理,释放和分配这些物理
    的头像 发表于 08-07 15:51 247次阅读
    Linux内核中的<b class='flag-5'>页面</b>分配机制

    TFP403数字接收器数据表

    电子发烧友网站提供《TFP403数字接收器数据表.pdf》资料免费下载
    发表于 06-29 09:33 0次下载
    TFP<b class='flag-5'>403</b>数字接收器数据表

    全自动绝缘油耐压测试仪的操作步骤——每日了解电力知识

    ) 2.在图1页面下,按 设置 键进入下一级页面(图2); 3.在图2页面下,按 选择 键移动光标√ 至 GB1986处,按 确认 键即可进入国标1986设置子页面(图3)。 在图3
    的头像 发表于 06-17 10:23 508次阅读
    全自动绝缘油耐压<b class='flag-5'>测试</b>仪的操作步骤——每日了解电力知识

    鸿蒙开发:【页面栈及任务链】

    单个UIAbility组件可以实现多个页面,并在多个页面之间跳转,这种UIAbility组件内部的页面跳转关系称为“页面栈”,由ArkUI框架统一管理,如下图中的UIAbility1
    的头像 发表于 06-14 10:10 389次阅读
    鸿蒙开发:【<b class='flag-5'>页面</b>栈及任务链】

    鸿蒙OS开发:典型页面场景【一次开发,多端部署】实战(音乐专辑

    本小节将以音乐专辑为例,介绍如何使用自适应布局能力和响应式布局能力适配不同尺寸窗口。
    的头像 发表于 05-24 20:33 587次阅读
    鸿蒙OS开发:典型<b class='flag-5'>页面</b>场景【一次开发,多端部署】实战(音乐专辑<b class='flag-5'>页</b>)

    STM32F103利用I2C读写EEPROM时,利用写入时,读回的数据和写入的数据不一致,为什么?

    在STM32F103芯片中,利用I2C读写EEPROM时,单字节写入,读回的数据和写入的一致;但是当利用写入时,读回的数据和写入的数据不一致,这是什么原因导致的?
    发表于 03-20 07:01

    touchgfx4.20.0页面层数比较多容易出现卡死现象怎么解决?

    页面层数比较多,添加了表格等控件,当点击最上层页面的时候,很容易出现卡死现象,通过stm32ide调试,找不到死机的地方,既不是进入死循环,也没进入硬件fault中断,像是ui任务死机了;请问这个怎么查找解决?
    发表于 03-08 08:01

    LABVIEW WEB发布,H5页面,可读写VI数据

    账号: a12345 密码: 12345678 普通用户 账号: b12345 密码: 12345678 只有普通用户可以登录手机页面
    发表于 02-25 00:29

    鸿蒙页面示例

    @Component 标签修饰UI,相当于Android的view,所有的UI组件都要使用@Component标签 @Entry标签 表明当前是一个页面,不是一个视图。多个组件组合时只能有一个
    的头像 发表于 02-01 11:24 435次阅读

    AT32F403A系列 数据手册

    电子发烧友网站提供《AT32F403A系列 数据手册.pdf》资料免费下载
    发表于 01-22 10:06 6次下载

    介绍一款基于java的渗透测试神器-CobaltStrike

    Cobalt Strike是一款基于java的渗透测试神器,常被业界人称为CS神器。
    的头像 发表于 01-16 09:16 907次阅读
    介绍一款基于java的<b class='flag-5'>渗透</b><b class='flag-5'>测试</b>神器-CobaltStrike

    浅谈Web渗透之信息收集(上)

    信息收集在渗透测试过程中是最重要的一环,本篇重点讨论Whois查询与域名信息收集。
    的头像 发表于 12-15 15:18 952次阅读
    浅谈Web<b class='flag-5'>渗透</b>之信息收集(上)