如何发现“利用DNS放大攻击”的服务器

简介:

很多网络服务异常,往往都是攻击造成的,但原因有很多种,如何分析定位,则是解决问题的关键。DNS放大攻击是一种拒绝服务攻击。攻击者利用僵尸网络中大量的被控主机,伪装成被攻击主机,在特定时间点,连续向多个允许递归查询的DNS服务器,发送大量DNS服务请求,迫使其提供应答服务。经DNS服务器放大后的大量应答数据,再发送到被攻击主机,形成攻击流量,导致其无法提供正常服务甚至瘫痪。

0x11问题描述

XX.XX.29.4为某大型行业用户的DNS服务器,需要对外提供DNS服务。近期,该用户网络拥塞,运维部门在部署科来网络回溯分析系统后发现,在可疑域名警报功能中触发有大量警报。

 

%e5%9b%be4-1

 

0x12分析过程

198.24.157.245(经查为美国IP)在短时间内向XX.XX.29.4服务器发送了大量的DNS请求,请求的域名为dnsamplicationattacks.cc。(DNS Amplification Attacks字面意思就是DNS放大攻击。)

 

%e5%9b%be5-2

 

198.24.157.245发出的请求包为101字节,DNS服务器返回的应答包为445字节,从而使通信流量放大了4.4倍。

 

%e5%9b%be5-3

 

攻击者利用大量被控主机,向大量的DNS服务器发送DNS请求。但请求中的源IP地址,均被伪造成被攻击者的IP(在本例中为198.24.157.245),于是DNS服务器会向被攻击者返回查询结果。通常查询应答包会比查询请求包大数倍甚至数十倍(在本例中为4.4倍),从而形成对198.24.157.245地址的流量放大攻击。

在本例中,客户的DNS服务器被作为实施这种DNS放大攻击的代理参与其中,攻击过程见下图。

 

%e5%9b%be5-4

 

0x13 分析结论

攻击者利用大量被控主机,在短时间内向DNS服务器(XX.XX.29.4)发送大量的DNS请求,查询应答包会比查询请求包大4.4倍,造成大流量发送到伪造的源IP地址(198.24.157.245),形成对该IP地址的拒绝服务攻击。

建议用户:

增大链路带宽;

DNS服务器关闭递归查询;

一旦发生大规模DNS放大攻击,可以马上与ISP联系,在上游对攻击进行过滤。

0x14 价值

黑客常常利用DNS服务器的特性,将其做为攻击放大器,可依靠僵尸网络发布攻击,往往可以制造极大的攻击流量,而其本身又具有隐蔽性。然而,在本案例中我们看到,通过网络分析技术可以把攻击行为完全梳理出来,达到网络攻击可视化的效果;并且通过协议解码,可以清晰的分析出攻击者使用的攻击手段。利用网络分析技术,通过2到7层的深度协议分析、精确解码、详细统计数据,为客户的信息系统以及网络安全保驾护航。


本文转自d1net(转载)

相关文章
|
2月前
|
人工智能 自然语言处理 安全
双第一,阿里云领跑安全运营智能体
全球权威咨询机构IDC发布了《中国安全运营智能体实测,2025》(Doc#CHC52346025,2025年11月)报告,报告针对国内20余家云厂商和安全厂商,从安全风险评估智能体、告警分诊智能体、事件调查与响应智能体、策略与规则管理智能体、威胁情报的收集与分析智能体、漏洞管理智能体、安全报告智能体、智能体管理等八大实测维度进行测评,整个测评流程依据IPDRR安全运营框架进行了严格测试。
|
移动开发 JavaScript 前端开发
JAVA转为wasm
JAVA转为wasm
1284 0
|
安全 Linux
在Linux中,发现⼀个病毒文件删了又自动创建如何解决?
在Linux中,发现⼀个病毒文件删了又自动创建如何解决?
|
监控 网络协议 网络安全
使用 Scapy 库编写 TCP SYN-ACK 反射脚本
使用 Scapy 库编写 TCP SYN-ACK 反射脚本
Python删除 字符串中的\的方法
这篇文章介绍了如何在Python中使用`replace`方法删除字符串中的特定字符,如制表符(`\t`)、空格(` `)以及其他指定字符,同时指出这种方法返回的是新字符串,不会改变原始字符串。
|
Linux 数据处理 开发工具
Linux命令repoquery详解
`repoquery`是Linux(尤其是RPM-based系统如CentOS, Fedora, RHEL)中的一个命令行工具,属于`yum-utils`,用于从Yum仓库查询RPM包信息,包括依赖、文件列表和描述。它不执行安装或卸载,而是帮助解决依赖问题和查找文件归属。主要参数有`-l`(列出文件)、`-i`(显示描述)、`--whatprovides`(查询提供文件的包)等。结合正则表达式和其他命令使用可提高效率。确保安装`yum-utils`并定期更新仓库以获取最新信息。
|
存储 分布式计算 资源调度
Hadoop节点磁盘空间大小差异
【6月更文挑战第19天】
377 1
|
域名解析 编解码 负载均衡
【域名解析DNS专栏】域名解析中的EDNS扩展:提升DNS协议灵活性
【5月更文挑战第27天】EDNS(Extension Mechanisms for DNS)是为了解决传统DNS协议在复杂网络环境下的灵活性和扩展性问题而诞生的技术。它允许在DNS请求和响应中添加额外选项,提高查询效率,支持更大数据范围,增强安全性,并实现负载均衡和故障转移。通过在DNS消息中包含EDNS部分,客户端和服务器能交换更多信息,实现更复杂的逻辑。EDNS的使用示例代码展示了如何在Python中创建和处理EDNS选项。随着技术进步,EDNS将在域名解析领域扮演更重要角色。
796 1
|
Python
关于SSTI模块注入的常见绕过方法
关于SSTI模块注入的常见绕过方法
890 0
|
Linux Windows
使用ping命令+时间戳 记录到文件里面
使用ping命令+时间戳 记录到文件里面
1643 0