PHP2(url二次编码)

PHP2

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

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

访问

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

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

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

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

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

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

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

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

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

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

最后拿到flag

猜你喜欢

转载自www.cnblogs.com/sharpff/p/10728794.html