$ _SERVER可以伪造成PHP吗?

时间:2012-01-10 11:05:32

标签: php security file server-side-includes

在PHP中,可以通过$_GET$_POST$_COOKIE的输入进行远程文件包含。我知道这是不可能的,但有可能(任何机会)伪造$_SERVER的价值吗?

我的意思是,即使在极少数情况下,$_SERVER也可以成为远程文件包含的来源吗?

2 个答案:

答案 0 :(得分:3)

$ _ SERVER是一个数组,包含有关用于访问请求,标题等的路径的信息。

许多值由用户直接设置和操作(例如QUERY_STRING),因此它可能与$ _GET和$ _POST完全相同。这取决于您在自己的代码中如何使用这些值。

您是否有特定的$ _SERVER索引,因为您不想要伪造?

答案 1 :(得分:1)

是的,可以操作$ _SERVER中的一些值。

然而,LFI依赖于攻击者能够注入要执行的代码的引用让PHP执行该代码。除非你打算忽略除了每个请求中发送的URL之外的所有内容(即你运行的是一个静态站点),否则你将在调整变量引用的代码的方式上花费更多的时间。