前言

在总结PHP常见的命令执行的时候,看到了一个能学到很多姿势的题目。源自Ph神的小密圈。。看了一下时间是2017年一月份发出来的。又一次有加小密圈的冲动!!奈何荷包紧缩呀!P神博客原文

问题如下

如下下代码如何getshell

1
2
3
4
5
6
<?php
$param = $_REQUEST['param'];
if(strlen($param)<17 && stripos($param,'eval') === false && stripos($param,'assert') === false) {
eval($param);
}
?>

就一个if条件,输入的参数必须小于17,不能用evalassert函数。上一篇博客总结了一些能用于RCE的函数,但是除去asserteval似乎就没几个了,大多都是用其他方法变相的调用这两个函数。本着学习的态度,来尝试一下各位师傅的思路。

命令执行的利用