我的访问日志中来自另一个域的 url

信息安全 日志记录 阿帕奇
2021-08-15 11:27:45

大多数时候,当我在查找404错误时access.log,我会看到尝试访问类似/phpMyAdmin/scripts/setup.php. 这并没有让我很困扰,但几天前我很惊讶,因为我在我的 access.log 中看到了这个

95.47.119.124 - - [19/Aug/2013:11:30:31 +0000] "GET http://server7.cyberpods.net/azenv.php HTTP/1.1" 404 3080 "-" "Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.2.28) Gecko/20120306 Firefox/3.6.28 (.NET CLR 3.5.30729)"
223.220.68.129 - - [21/Aug/2013:00:55:46 +0000] "GET http://www.baidu.com/ HTTP/1.1" 404 3080 "http://www.baidu.com/" "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 6.1; WOW64; Trident/5.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; .NET4.0C; .NET4.0E)"

令我惊讶的是,有人试图访问的不是我域上的某个相关 URL,而是完全不同的东西。

我有两个问题:

  1. 他们是怎么做到的?
  2. 背后的原因是什么?
2个回答

欢迎来到内胎!!!

背后的原因是什么?

您看到的是对开放代理的扫描,例如,有人正在查看他/她/它是否可以滥用您的服务器来浏览其他站点。

第一个看起来很有趣,因为它看起来像扫描仪;检查链接时(请不要用浏览器点击),它会返回:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head><title>AZ Environment variables 1.04</title> </head><body><pre>
HTTP_USER_AGENT = Mozilla/5.0 (compatible; MSIE 9.0; Windows NT 6.1; Win64; x64; Trident/5.0; .NET CLR 3.5.30729; .NET CLR 3.0.30729; .NET CLR 2.0.50727; Media Center PC 6.0)
HTTP_HOST = server7.cyberpods.net
HTTP_CACHE_CONTROL = max-age=43200
HTTP_CONNECTION = keep-alive
REMOTE_ADDR = 80.226.24.11
REMOTE_PORT = 45993
REQUEST_METHOD = GET
REQUEST_URI = /azenv.php
REQUEST_TIME = 1377237144

他们是怎么做到的?

通过使用工具并直接发出GET 请求

根本没有魔法:)

顺便说一句,习惯它,安装 ossec 之类的东西,你会看到更多的扫描仪强行强制你的网站用于 wp/phpmyadmin/joomla - 不管什么-eyploits 一整天

浏览器向其发送请求的 IP 地址通常与请求标头中的 FQDN 匹配。这是因为浏览器通常通过对 FQDN 执行 DNS 查询来获取 IP 地址。在这种情况下,有人只是向您的 IP 地址发送对其他页面的请求。

这通常会在单个 IP 地址托管多个网站时发挥作用。在这种情况下,多个 FQDN 都解析为相同的 IP 地址。带有被请求 URL 的请求标头是该单个 IP 地址的服务器如何知道要服务哪个页面。

至于其背后的原因,可能是出于各种原因,从无意到邪恶。可能是某人有一个主机条目,将另一个站点的 FQDN 映射到您的 IP 地址,或者可能是有人探测您的服务器以查看它是否检查请求标头中的站点名称,或者它是否仅配置为一个站点并且没有不要费心检查标题。

总而言之,如果您不担心对不存在的目录的探测,也不用担心不存在的主机......