我不知道为什么这个数据包进来:dns response 127.0.0.1

Mr.*_*Bae 7 domain-name-system

我需要你们的帮助。

我正在为服务器使用大量公共 IP,这些服务器只打开一个端口进行服务。并且还使用 L3 交换机进行负载平衡。(我将它们用于 EXDNS、Pulic-web 等)

在这种环境中,我发现了一些数据包,这些数据包来自许多具有 53 端口的公共 IP 到具有任何端口的公共 IP,而不是我正在使用的端口。并且域名是xxxx.x99m​​oyu.net(域的最低部分被随机更改。)这是ACK包,包括查询的答案127.0.0.1。但是我们的服务器从不发送这些域的 DNS 查询。我得到的数据包之一是

*------------------------------------------------- -----------------

IPv4, Src : 171.125.150.23, Dst: 112.xxx (my ip)
UDP, Src Port: 53, Dst Port: 54162
Domain Name System (response)
Questions: 1
Answer RRs: 1
Queries : tnczmz.x99m​​oyu.net : type A, class IN
答案: tnczmz.x99m​​oyu.net : type A, class IN, addr 127.0.0.1
---------------------------- ----------------------------------------*

第一眼看到这些数据包,写一篇关于DNS放大攻击的senario。使用互联网上的 DNS 服务器和 src.ip 的公共 ip,然后我的服务器将从 DNS 服务器获得许多应答包。但是目标太广而无法成功攻击,因为超过 200 个服务器收到了这些数据包,而每个服务器只收到 3-5 个 dns 响应。

所以,如果有人有类似的经历或知道它发生的原因,请告诉我。谢谢。

And*_*w B 12

对于源端口为 53 的远程数据包,通常是以下四种情况之一:

  1. 您获得的 IP 地址以前由具有侦听端口 53 的设备使用,而过去知道它的设备仍在尝试使用它。(可能是权威服务器或开放式解析器)
  2. 您的设备正在参与攻击。
  3. 这些数据包被反射到您身上,正如您所怀疑的那样,您就是攻击的目标。
  4. 这些数据包被反射到你身上,你不是攻击的目标。您的 IP 恰好是他们伪造的 IP。

很多人将#1 误认为是对其服务器的攻击(#3)。您必须查看要衡量的传入流量量,而且由于您不会抱怨带宽因此被阻塞,因此不太可能。让我们排除#3。

我们的下一个提示是查询名称:tnczmz.x99moyu.net。在过去几年中(并且一直在关注)操作大量递归 DNS 服务器的任何人都熟悉这样的名称:这是“伪随机子域”又名“水酷刑”攻击。我不会在这里详细介绍,但我们的想法是在一个域下生成数千个不可缓存的随机查询,以便将所有请求发送到该域的名称服务器,该域是攻击的真正受害者。在这种情况下,它们是 Cloudflare 的名称服务器:

$ dig +short x99moyu.net NS
darwin.ns.cloudflare.com.
uma.ns.cloudflare.com.
Run Code Online (Sandbox Code Playgroud)

由于我很确定您不是 Cloudflare 的服务器管理员,因此我们现在需要考虑数据包的方向以排除 #1。这是我们必须处理的:

  • 来源:171.125.150.23(中国)
  • 源端口:53
  • 目的地:您的服务器
  • 目的港:随机

一个中国 IP 正在向您发送 DNS 回复数据包。我们知道它们是回复数据包,因为它们包含 DNS 应答部分。由于您或这个远程 IP 都不属于 Cloudflare(他们的名称服务器管理域),我们可以假设这些 IP 之一是欺骗性的。鉴于攻击的受害者 (Cloudflare) 以及攻击的运作方式,这里最有可能被欺骗的地址是您的地址。这将使中国 IP 成为接收递归查询的服务器。

我的结论是,您既不是攻击的目标,也不是攻击的参与者(这种情况经常发生,您很幸运)。这是第 4 种情况:在对 Cloudflare 执行攻击时,您的源 IP 只是被欺骗,作为其他人的一部分来掩盖他们的踪迹。


事后看来,#2 仍然是可能的。即使持有您 IP 的服务器不提供 DNS 侦听器,您的服务器也可能会受到攻击并运行生成查询的恶意软件。当然,这假设您的数据包捕获忽略了出站查询。(我突然意识到,假设这会被注意到是不好的)