PHP<=7.4.21 Development Server源码泄露漏洞 例题

打开题目

dirsearch扫描发现存在shell.php

非预期解

访问shell.php,往下翻直接就看到了flag..

正常解法

访问shell.php

看见php的版本是7.3.33

我们知道

PHP<=7.4.21时通过php -S开起的WEB服务器存在源码泄露漏洞,可以将PHP文件作为静态文件直接输出源码

读取不完整,有不可见字符

我们复制进16进制编辑器里面看看

正常结果应该是

但是我的16进制转文本导出来的结果如下

所以我们根本很难将其转换文emoji

那我们反推

我们知道

就知道了emoji的16进制是

F0 9F 91 BD

get传参

得到根目录下的所有文件

直接cat /flag得到flag

知识点:

1.在16进制数中,两个字符是一个字节。

2.php特殊版本7.4.21

PHP<=7.4.21时通过php -S开起的WEB服务器存在源码泄露漏洞,可以将PHP文件作为静态文件直接输出源码

复现的时候记得要关掉Burp自动修改Content-Length的功能

 "\r\n"就是bp中的换行,即留一行空着

知识点参考:PHP<=7.4.21 Development Server源码泄露漏洞

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值