如何在php中连接2个函数


How to concatenate 2 function in php

我有一个应用程序,代码如下:

<?php 
if(isset($_GET['function'])){ 
        $_GET['function'](); 
} 
?> 

所以如果我输入这个网址:http://localhost/?function=phpinfo

我将在屏幕上看到phpinfo函数的输出。

我能在url中连接2个函数吗,比如这个例子:

http://localhost/?function=shell_exec('ls')与phpinfo

所以我想看到第一个函数输出。。

如果你可能会问我为什么需要这个,是因为我正在用钢笔测试这种情况下的web应用程序。。

顺便说一下,任何破解这种情况的建议都会有所帮助。

谢谢你的帮助。。

不能连接函数,因为它本身不是代码注入,即:不能影响解析器读取代码的方式。此外,在您提供的示例中,您无法控制传递给函数的任何参数,因此您的建议是不可行的。

您必须找到一种方法,将控制权传递给直接对用户提供的输入($_GET、$_POST等)执行不安全操作的函数,以便利用远程代码执行的这一弱点。根据应用程序的复杂性,您可能能够识别在用户提供的数据上调用system、eval、unserialize或其他危险函数的函数。