Php 本地文件包含?如何修补此问题
我正在尝试将我的php fusion修补到一个新漏洞。但我不完全在脆弱之下 请先看这里: 我知道本地文件包含是什么,但是仅仅设置一个get变量如何使它进入显示的代码段,它甚至没有使用get变量 多亏有人清理了这件事。我想修补这个,如果有什么需要修补的话 这是因为PHP中的地狱设置 启用该选项后,可以使用代码中的名称直接访问get变量。在哪里Php 本地文件包含?如何修补此问题,php,security,Php,Security,我正在尝试将我的php fusion修补到一个新漏洞。但我不完全在脆弱之下 请先看这里: 我知道本地文件包含是什么,但是仅仅设置一个get变量如何使它进入显示的代码段,它甚至没有使用get变量 多亏有人清理了这件事。我想修补这个,如果有什么需要修补的话 这是因为PHP中的地狱设置 启用该选项后,可以使用代码中的名称直接访问get变量。在哪里 $_GET['somevar'] 也是 $somevar; 它可能没有设置在您的服务器上(实际上不应该设置),因此您可能不会受到此攻击。但是,如果它被
$_GET['somevar']
也是
$somevar;
它可能没有设置在您的服务器上(实际上不应该设置),因此您可能不会受到此攻击。但是,如果它被启用,请对此采取措施
在你的特殊情况下,我很确定这条线
$folder_level = "";
在脚本开始时,将清除url中可能设置的任何内容。修补本地文件包含(LFI)和远程文件包含(RFI)漏洞的最佳方法是使用白名单
$safe_folders=array("test","config","includes","special");
if(in_array($folder_level,$safe_folders)){
require_once $folder_level."/config.php";
}
你发布的其他代码都是垃圾。。。显然是因为它被黑客攻击,而攻击代码被公开发布
$safe_folders=array("test","config","includes","special");
if(in_array($folder_level,$safe_folders)){
require_once $folder_level."/config.php";
}