Home >Backend Development >PHP Tutorial >PHP 攻击者可以隐藏自己的访问的地址吗?
访问者 点击 网址A 后, 日志会记录 当前的网址 A。 现在日志里出现了短时间大批量对网址A的访问, 但日志记录的是网址 B。 我是用如下方法 记录当前网址的:
<code class="lang-php"> <?php $sys_protocol = isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443' ? 'https://' : 'http://'; $php_self = $_SERVER['PHP_SELF'] ? safe_replace($_SERVER['PHP_SELF']) : safe_replace($_SERVER['SCRIPT_NAME']); $path_info = isset($_SERVER['PATH_INFO']) ? safe_replace($_SERVER['PATH_INFO']) : ''; $relate_url = isset($_SERVER['REQUEST_URI']) ? safe_replace($_SERVER['REQUEST_URI']) : $php_self.(isset($_SERVER['QUERY_STRING']) ? '?'.safe_replace($_SERVER['QUERY_STRING']) : $path_info); return $sys_protocol.(isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '').$relate_url; ?> </code>
如果是真实用户 访问 B网址,B网址是另一套程序,是不会记录当前网址的。
请问大家,攻击者是如何实现的? 相当于隐藏了自己实际访问的地址 A
这个问题已被关闭,原因:
访问者 点击 网址A 后, 日志会记录 当前的网址 A。 现在日志里出现了短时间大批量对网址A的访问, 但日志记录的是网址 B。 我是用如下方法 记录当前网址的:
<code class="lang-php"> <?php $sys_protocol = isset($_SERVER['SERVER_PORT']) && $_SERVER['SERVER_PORT'] == '443' ? 'https://' : 'http://'; $php_self = $_SERVER['PHP_SELF'] ? safe_replace($_SERVER['PHP_SELF']) : safe_replace($_SERVER['SCRIPT_NAME']); $path_info = isset($_SERVER['PATH_INFO']) ? safe_replace($_SERVER['PATH_INFO']) : ''; $relate_url = isset($_SERVER['REQUEST_URI']) ? safe_replace($_SERVER['REQUEST_URI']) : $php_self.(isset($_SERVER['QUERY_STRING']) ? '?'.safe_replace($_SERVER['QUERY_STRING']) : $path_info); return $sys_protocol.(isset($_SERVER['HTTP_HOST']) ? $_SERVER['HTTP_HOST'] : '').$relate_url; ?> </code>
如果是真实用户 访问 B网址,B网址是另一套程序,是不会记录当前网址的。
请问大家,攻击者是如何实现的? 相当于隐藏了自己实际访问的地址 A
这样的话,你就要考虑攻击者是不是已经占领的网址B,通过B所在的服务器发起的攻击,或者说,是不是网址B才是真正收到攻击的位置,而B又访问了A,所以A受到了牵连。 另外,HTTP协议的底层的话,貌似是可以修改自身的IP的~~