目标达成 感谢每一位支持者 — 我们达成了 100% 目标!

目标: 1000 元 · 已筹: 1000

100.0%

CWE-350 不恰当地信任反向DNS 类漏洞列表 14

CWE-350 不恰当地信任反向DNS 类弱点 14 条 CVE 漏洞汇总,含 AI 中文分析。

CWE-350 属于依赖不可信数据源的安全漏洞。攻击者通过伪造 DNS 响应或劫持 DNS 服务器,将恶意 IP 映射为可信域名,从而绕过身份验证或访问控制。由于 DNS 记录易被篡改且难以验证真实性,仅凭反向解析结果进行安全决策存在巨大风险。开发者应避免依赖反向 DNS 进行关键安全判断,转而采用证书验证、IP 白名单或多因素认证等更可靠的机制来确保通信双方的真实身份。

MITRE CWE 官方描述
CWE:CWE-350 对反向 DNS 解析(Reverse DNS Resolution)在安全关键操作中的依赖 英文:产品对 IP 地址执行反向 DNS 解析以获取主机名并做出安全决策,但未正确确保该 IP 地址确实与主机名相关联。 由于 DNS 名称(DNS names)容易被伪造或错误报告,且产品可能难以检测受信任的 DNS 服务器是否已被入侵,因此 DNS 名称不构成有效的身份验证机制。当产品对 IP 地址执行反向 DNS 解析时,如果攻击者控制了该 IP 地址的 DNS 服务器,则攻击者可以导致服务器返回任意主机名。结果,攻击者可能能够绕过身份验证、导致错误的主机名被记录在日志文件中以隐藏活动,或执行其他攻击。攻击者可以通过以下两种方式伪造 DNS 名称:(1)入侵 DNS 服务器并修改其记录(有时称为 DNS 缓存投毒(DNS cache poisoning)),或(2)合法控制与其 IP 地址关联的 DNS 服务器。
常见影响 (1)
Access ControlGain Privileges or Assume Identity, Bypass Protection Mechanism
Malicious users can fake authentication information by providing false DNS information.
缓解措施 (2)
Architecture and DesignUse other means of identity verification that cannot be simply spoofed. Possibilities include a username/password or certificate.
ImplementationPerform proper forward and reverse DNS lookups to detect DNS spoofing.
代码示例 (2)
The following code samples use a DNS lookup in order to decide whether or not an inbound request is from a trusted host. If an attacker can poison the DNS cache, they can gain trusted status.
struct hostent *hp;struct in_addr myaddr; char* tHost = "trustme.example.com"; myaddr.s_addr=inet_addr(ip_addr_string); hp = gethostbyaddr((char *) &myaddr, sizeof(struct in_addr), AF_INET); if (hp && !strncmp(hp->h_name, tHost, sizeof(tHost))) { trusted = true; } else { trusted = false; }
Bad · C
String ip = request.getRemoteAddr(); InetAddress addr = InetAddress.getByName(ip); if (addr.getCanonicalHostName().endsWith("trustme.com")) { trusted = true; }
Bad · Java
In these examples, a connection is established if a request is made by a trusted host.
sd = socket(AF_INET, SOCK_DGRAM, 0); serv.sin_family = AF_INET; serv.sin_addr.s_addr = htonl(INADDR_ANY); servr.sin_port = htons(1008); bind(sd, (struct sockaddr *) & serv, sizeof(serv)); while (1) { memset(msg, 0x0, MAX_MSG); clilen = sizeof(cli); h=gethostbyname(inet_ntoa(cliAddr.sin_addr)); if (h->h_name==...) n = recvfrom(sd, msg, MAX_MSG, 0, (struct sockaddr *) & cli, &clilen); }
Bad · C
while(true) { DatagramPacket rp=new DatagramPacket(rData,rData.length); outSock.receive(rp); String in = new String(p.getData(),0, rp.getLength()); InetAddress IPAddress = rp.getAddress(); int port = rp.getPort(); if ((rp.getHostName()==...) & (in==...)) { out = secret.getBytes(); DatagramPacket sp =new DatagramPacket(out,out.length, IPAddress, port); outSock.send(sp); } }
Bad · Java
CVE ID标题CVSS风险等级Published
CVE-2026-6874 Copilot API Proxy 安全漏洞 — copilot-api 4.3 Medium2026-04-22
CVE-2026-24281 Apache Zookeeper 安全漏洞 — Apache ZooKeeper 7.4 -2026-03-07
CVE-2026-28271 Kiteworks 代码问题漏洞 — security-advisories 6.5 Medium2026-02-27
CVE-2026-1490 WordPress plugin Spam protection, Anti-Spam, FireWall by CleanTalk 安全漏洞 — Spam protection, Honeypot, Anti-Spam by CleanTalk 9.8 Critical2026-02-15
CVE-2025-59956 AgentAPI 安全漏洞 — agentapi 6.5 Medium2025-09-29
CVE-2025-59163 SafeDep 安全漏洞 — vet 4.3AIMediumAI2025-09-29
CVE-2024-53275 HomeGallery 安全漏洞 — home-gallery 8.1 -2024-12-23
CVE-2024-42364 Homepage 安全漏洞 — homepage 6.5 Medium2024-08-23
CVE-2022-22364 IBM Cognos Controller 安全漏洞 — Cognos Controller 5.3 Medium2024-05-03
CVE-2021-34561 Pepperl Fuchs WirelessHART-Gateway安全漏洞 — WHA-GW-F2D2-0-AS- Z2-ETH 7.5 High2021-08-31
CVE-2021-22884 Nodejs 安全漏洞 — Node 8.1 -2021-03-03
CVE-2020-11091 Weaveworks Weave Net 安全漏洞 — Weave 5.8 Medium2020-06-03
CVE-2018-7160 Joyent Node.js inspector 安全漏洞 — Node.js 8.8 -2018-05-17
CVE-2017-0902 RubyGems 安全漏洞 — RubyGems 8.1 -2017-08-31

CWE-350(不恰当地信任反向DNS) 是常见的弱点类别,本平台收录该类弱点关联的 14 条 CVE 漏洞。