PHP2

PHP2(url二次编码) 随笔 第1张

抓包查看 什么也没有  那就扫一下目录吧 御剑开启

SRE实战 互联网时代守护先锋,助力企业售后服务体系运筹帷幄!一键直达领取阿里云限量特价优惠。

发现了index.phps  可能你没扫到 那说明你该把它添加到你的字典里了

访问

PHP2(url二次编码) 随笔 第2张

感觉好像少了点什么,查看一下源代码

PHP2(url二次编码) 随笔 第3张

让我们传入一个id 不能直接传入admin  但是对id使用urldecode以后的值还必须是admin     这个时候就要使用url二次编码了

说一下我对url二次编码的理解

当我们在url输入数据的时候,url会对其进行url编码 比如输入空格的时候会自动编码为%20 而当服务器在接收这些数据的时候会自动进行url解码

PHP2(url二次编码) 随笔 第4张

可以看到当我使用hackbar的load时,url中的'变成了%27,当服务器接到数据后 %27又会被解码为'

二次编码就是在%27的基础上再进行一次编码  就会变成%2527 因为%进行url编码以后为%25

 

这道题就利用了这个原理,当看到php里有urldecode的时候就要想到二次编码

我们对admin进行url编码,使用御剑1.5的内置编码工具

PHP2(url二次编码) 随笔 第5张

对其再次进行url编码   就是%2561%2564%256D%2569%256E

当我们以这种形式输入到url中时,服务器端会解码为%61%64%6D%69%6E而不是admin,而php urldecode会再次解码为admin 这样就绕过了上面的限制并且满足了下面的条件

最后拿到flag

扫码关注我们
微信号:SRE实战
拒绝背锅 运筹帷幄