RPO漏洞分析与利用

RPO,全称(Relative Path Overwirte)相对路径覆盖,它主要利用浏览器的一些特性与服务器的配置差异导致的。通俗来说就是浏览器与服务器两者对请求的解析不一致,并没有做到同步解析。因而我们可以通过相对路径来引入其他的资源文件,以至于达到我们的目的。

这里以www.xxx.com/test为例。

第一步:

比如我们输入一个请求http://www.xxx.com/test/%2f..%2f,该请求送至服务端进行解析结果为www.xxx.com,因为%2f相当于/,/test/%2f..%2f则相当于/test/../,即/根目录,因此此时服务端会返回www.xxx.com中的内容。

第二步:

但是客户端浏览器这边并不会正常的识别%2f为/,他会认为%2f..%2f只是一个界面,而该页面的最终路径为/test/。页面中如果出现如style.css的超链接,那么访问该链接时会自动拼接到www.xxx.com/test/style.css后,即拼接到test/这个路径下。

第三步:

因此加载css时向服务端发送的请求为www.xxx.com/test/style.css,再利用服务端的一些配置,他会返回找到的有效的数据如www.xxx.com/test/中的内容,返回给客户端。

第四步:

客户端便加载次内容并作为css内容,从而造成RPO攻击。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值