-1

大家下午好,我正在开发一个页面,就它而言,它有一个 index.php,当我想转到某个选项卡(例如:联系人)时,我将它包含在 php 中,这样当用户转到索引时.php?tab=contact,它包括contact.php...但是,我知道这种方法存在安全漏洞,我想知道您是否可以帮助我。我在考虑可能会限制可以包含在当前文件夹中的文件,以便用户无法访问主目录中的文件。我也在考虑使用 iframe,但我不喜欢它们,所以我宁愿不使用它们。您认为最好/更安全的方法是什么?提前谢谢你。

4

1 回答 1

2

不安全的方法是包含用户想要包含的任何内容

include $input_from_user;  // /etc/passwd?

基于输入参数包含文件的安全方法是检查预期值。(伪代码)

switch($input_from_user) {
case "contents": include contents.php; break;
case "foo":      include foo.php; break;
default:         showLoginPrompt(); break; // or some other safe action
}
于 2013-07-06T21:12:44.397 回答