【发布时间】:2013-06-25 14:44:10
【问题描述】:
我正在尝试包含来自 cookie 的文件
说我的 cookie 有值
$file = $_COOKIE['PageValue'];
我想像这样包含这个文件
include '$file';
有没有办法做到这一点?
干杯
【问题讨论】:
我正在尝试包含来自 cookie 的文件
说我的 cookie 有值
$file = $_COOKIE['PageValue'];
我想像这样包含这个文件
include '$file';
有没有办法做到这一点?
干杯
【问题讨论】:
if( file_exists($_SERVER['DOCUMENT_ROOT'].$file){
include $_SERVER['DOCUMENT_ROOT'].$file;
}
!!一个非常大的警告! 这个例子太简单了。始终验证用户输入,尤其是在包含文件时。
好的做法是检查 $file 是否在包含允许 $files 的数组中,或者检查数据库。
这是一个脆弱的部分,XSS 指日可待。
您可能想阅读以下内容:http://en.wikipedia.org/wiki/File_inclusion_vulnerability
【讨论】:
【讨论】:
是的,你写了答案:
include $file; // No quotes!
但是,您应该清理您的输入,最好将可能包含的文件列入白名单。如需更多帮助,请发布您的代码示例,或向我们提供更多信息,了解您想要完成的工作。
【讨论】: