我做了很多搜索,还阅读了PHP $ _SERVER文档.对于在我的网站中使用的简单链接定义,我的PHP脚本使用哪个权限?
$_SERVER['SERVER_NAME'] 是基于您的Web服务器的配置文件(在我的情况下是Apache2),并根据一些指令而变化:(1)VirtualHost,(2)ServerName,(3)UseCanonicalName等.
$_SERVER['HTTP_HOST'] 基于客户的要求.
因此,在我看来,为了使我的脚本尽可能兼容而使用的正确方法是$_SERVER['HTTP_HOST'].这个假设是否正确?
后续评论:
我想在读完这篇文章之后我有点偏执,并注意到有些人说"他们不会相信任何一个$_SERVER变种":
http://markjaquith.wordpress.com/2009/09/21/php-server-vars-not-safe-in-forms-or-links/
http://php.net/manual/en/reserved.variables.server.php#89567(评论:Vladimir Kornea 14-Mar-2009 01:06)
显然,讨论主要是关于$_SERVER['PHP_SELF']为什么你不应该在表单action属性中使用它而没有适当的转义以防止XSS攻击.
我对上述原始问题的结论是$_SERVER['HTTP_HOST'],即使在表单中使用,也可以"安全"地使用网站上的所有链接,而不必担心XSS攻击.
如果我错了,请纠正我.
什么是最可靠和最安全的方法来确定当前页面发送或调用(通过AJAX)的页面.我不想使用$_SERVER['HTTP_REFERER'],因为(缺乏)可靠性,我需要调用的页面仅来自源自我网站的请求.
编辑:我希望验证从我的网站上的页面调用预先形成一系列操作的脚本.
通过信任$ _SERVER变量数组的内容以使用$ _SERVER ['PHP_SELF']获取php文件的名称,我是否会冒很大的安全风险?
我有一个充满网站网址的数据库,主要关键是$_SERVER["HTTP_HOST"]网站的.
当用户导航到...时,可以说www.my-epic-example-url.com,它将连接数据库并使用该$_SERVER["HTTP_HOST"]网站,然后获取引用该网站的所有数据!
我想知道的是,安全性如何$_SERVER["HTTP_HOST"]?
可以外部修改吗?
我问的唯一原因是因为我读了一段时间的艺术品(不记得它在哪里)说使用$ _SERVER时要小心,因为它不安全......
这是真的?
当我真的想知道什么阻止某人模仿会话时,我试图构建我自己的安全PHP会话类?
IE,为什么不在test.php上的代码
$_SESSION['logged_in'] = true;
Run Code Online (Sandbox Code Playgroud)
无法在index.php上工作
if($_SESSION['logged_in'] == True){
echo 'logged in';
}
Run Code Online (Sandbox Code Playgroud)
我知道这样做的方法是通过将会话锁定到IP地址和用户代理来生成安全ID来保护会话,但这究竟是如何工作的呢?
意思是,如果我能够猜测会话ID,我能够设置$ _SESSION ['logged_in'] = true并模拟登录吗?我应该更改SESSION变量以检查登录更安全吗?
对不起我的问题,希望我有所帮助......
根据这篇文章:哪些$ _SERVER变量是安全的?另一个我见过,客户端似乎能够设置自定义的$ _SERVER变量.例如:$ _SERVER ['HTTP_EXAMPLE']
客户端如何将值实际设置为$ _SERVER ['HTTP_EXAMPLE']?
$_SERVER['DOCUMENT_ROOT']没有过滤功能,可以直接访问filter_input()吗?
这是PHP中用于客户端主机名的超全局:
$_SERVER['REMOTE_HOST']
Run Code Online (Sandbox Code Playgroud)
它通常看起来像:
ecIP-AD-DRE-SS.us-west-1.compute.amazonaws.com
IP-AD-DRE-SS.bb.dnainternet.fi
IP-AD-DRE-SS.dynamic.lounea.fi
Run Code Online (Sandbox Code Playgroud)
有人可以更改其主机名,以便它包含能够进行SQL注入的内容吗?此外,如果您只从用户输入中删除单引号,是否会阻止SQL注入?
php ×8
security ×3
apache ×1
http-referer ×1
mysql ×1
owasp ×1
session ×1
sql ×1
superglobals ×1
tampering ×1