0


PHP伪协议

进来是这样

我们查看网页源代码

发现上面是一段PHP代码

对于第一个if我们只要让参数中不要出现_这个符号即可采用%20绕过对于第二个if我们首先传入的参数中要有2333其次要匹配pregmatch所以搜索换行符的URL编码%0a绕过

b%20u%20p%20t=23333%0a 即可绕过

提示我们有个PHP文件我们进去

告诉我们需要是127.0.0.1所以hackbar修改一下

发现是一团乱码不懂是啥然后百度一下这个是JSfuck编码我们解码得到

说明我们需要用post传参方式传参所以我们用hackbar传一下

得到了他的源码接着我们对这段源码进行代码审计

可以看到重点是这三段if条件

我们之前修改了第一个if接着我们对第二个进行条件分析

这里我们需要用伪协议进行绕过我们需要满足第二个if条件并且读取flag.php分析这一段代码

定义了一个change类然后对这个文件进行了base64的解码所以我们需要构造一下poc来输出flag.php的base64编码

代码如下

然后我们生成编码结果

最后我们写出payload:?2333=data://text/plain;base64,dG9kYXQgaXMgYSBoYXBweSBkYXk=&file=ZmpdYSZmXGI=(dG9kYXQgaXMgYSBoYXBweSBkYXk=这个为todat is a happy day的base64编码)

最终获取到flag

标签: php

本文转载自: https://blog.csdn.net/weixin_55190422/article/details/120442567
版权归原作者 VN's king 所有, 如有侵权,请联系我们删除。

“PHP伪协议”的评论:

还没有评论