Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >浅谈拒绝服务攻击的原理与防御(5) | NTP反射攻击复现

浅谈拒绝服务攻击的原理与防御(5) | NTP反射攻击复现

作者头像
FB客服
发布于 2018-02-23 10:01:26
发布于 2018-02-23 10:01:26
3.9K1
举报
文章被收录于专栏:FreeBufFreeBuf

0×01 故事起因

前两天以为freebuf上的网友stream(年龄、性别不详)私信我说他在阿里云上的服务器被NTP攻击了,流量超过10G,希望我帮忙一起分析一下,复现一下攻击。

我这当代雷锋当然非常乐意了,于是我就和stream联系(勾搭)上了,今天我就详细讲一下我们一起复现NTP反射攻击的过程。

0×02 分析攻击数据

stream大兄弟把当时抓到的包发给了我,数据包不大只有31.4M

当我打开数据包看了下时间才知道这数据包可不小啊!只有0.011秒就抓了67598个包,粗略计算一下67598*482/0.011=2 962 021 454字节,将近3G/s也就是24Gbps,对我来说这样的流量已经很大了。

借助whireshark查看了一下源IP的情况,并排列了一下每个IP的发包数量,但是whireshark居然没有统计IP地址个数的地方,也可能是我没找到。

于是我就另存为到一个txt文件中,查看行号计算数量,发现总共有3307个源IP(哈哈!这可都是宝贝啊!)

然后把这些IP地址都转换个格式存起来,留着下个阶段复现的时候用。

0×03 攻击复现

原本以为知道了IP了复现起来很简单呢,其实过程并不顺利(还是自己没经验)。

我先选了发包最多的那个IP测试一下,看看到底能不能返回monlist数据。

果然能返回monlist包,返回了大约100个482字节的包,我靠!这尼玛放大倍数非常让人兴奋啊!我还是too young啊,等我再次发包的时候就没有回应了。

孤零零的就一个包,后来我测试了好几个IP都是这种情况,有的甚至第一个包都不回,艹!这是怎么回事呢?于是我就去看了下NTP协议的报文格式。

看起来挺长,我其实也没看太懂,不过我们的目的是要发出monlist请求,所以我们只要清楚monlist的格式什么样就行了。后来我发现这个跟whireshark上的结构不太一样,后来我就直接去看whireshark上的注释了。

这就清晰多了,flags:

第一个bit是表示请求(0)还是应答(1)

第二个bit是是否闰秒,网上解释是有时由于地球潮汐等等的影响时间会差0.9秒,通过这个bit加上,这块对咱们没用

第三四五个bit时表示版本的,现在常用第二版,所以这里是010

剩下三个bit是模式,0未定义、1表示主动对等体模式、2表示被动对等体模式、3表示客户模式、4表示服务器模式、5表示广播模式或组播模式、6表示此报文为NTP控制报文、7预留给内部使用。这里我们要用的monlist是用的7

auth,sequence:

这字段的八个bit我没找到文献说明具体干嘛的,但是看样子是1bit奇偶校验,7bit序列号。

在下面那个implementation我就不知道是干嘛的了。。。。。惭愧惭愧。。

request code就是我们重点需要的monlist请求。

于是我对照着协议标准从新构造了一个请求报文发现跟我以前构造的一模一样。。。。。

str_monlist='\x17'+'\x00'+'\x03'+'\x2a'+20*'\x00'

这是怎么回事?我发的数据包没有错啊怎么就没回复呢?在这种情况下,就要借助一下已有的一些软件帮帮忙了,在这里我们可以使用ntpdc来帮忙。

我用的是kali,上面已经安装好了这个工具,这个工具的作用就是能发出想要的ntp报文,我用它发一个ntp monlist请求先看看情况,用 ntpdc -c monlist *.*.*.* 命令查看

看抓包情况

我发现我构造的数据包跟ntpdc的数据包就差了一堆00,于是我加上了180个00后整个世界都豁然开朗了。。。。

然后我修改了上次发的那个攻击脚本,把NTP的payload加了180个00,做了一下测试,攻击了一下stream的阿里云服务器

看看攻击效果

能打出2.2G的峰值,但是跟攻击者的10G 20G差很多,可能是我带宽的原因,当然也可能是攻击脚本不完美,日后还需要继续改进才行。

0×04 结语

首先感谢一下stream大兄弟的分享,让我能认识到我的不足,同时也分享出来让大家避免同样的错误,其次就是在网络攻击上或者其他事情上要大家要细心,一些看似没啥用的00就能影响结果。

还有就是希望大家遇到攻击或者有什么新的方法多分享出来,大伙一起学习一起进步,有问题可以私信我或者加我qq 2289988238,我不一定能帮到你,但是多一个人多一份力量,我有时间的情况下一定是有问必答的。各位朋友下期再见!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2017-03-27,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 FreeBuf 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
懂点云服务器架构的都这个文章明显是造假的,还转发。。。
懂点云服务器架构的都这个文章明显是造假的,还转发。。。
回复回复点赞举报
推荐阅读
编辑精选文章
换一批
浅谈拒绝服务攻击的原理与防御(7):用Python和C实现syn flood攻击
01 前言 以前做DDOS的实验都是用python来编写工具的,开始不会编写结构不会算校验和的时候就用scapy写,后来学会了报文结构开始自己构造各种报文,但是用python写成之后虽然是能实现基本功
FB客服
2018/02/23
2.6K0
浅谈拒绝服务攻击的原理与防御(7):用Python和C实现syn flood攻击
浅谈DDOS中NTP放大攻击的操作过程以及防御措施?
在诸多的DDoS攻击事件中,放大攻击的流行度占了百分之五十左右,攻击难度系数只是占中间部分,但它的影响力较大。这意味着它的防护和缓解比较复杂。那么就有人想要知道什么是NTP放大攻击?NTP的防御措施是怎么样的呢?接下来小编我就分享下NTP放大攻击的操作过程以及防御措施。
墨者安全科技
2019/07/12
2.6K0
浅谈DDOS中NTP放大攻击的操作过程以及防御措施?
浅谈拒绝服务攻击的原理与防御(2) :反射型DDOS
0×01 前言 前几天提交了一篇关于DDOS攻击的文章到今天下午才审核通过发表出来,所以晚上闲来无事在接着写下面的内容,今天我就不多说废话了直接来干货。 目前来说流量型反射DDOS攻击都是以UDP为载
FB客服
2018/02/23
1.6K0
浅谈拒绝服务攻击的原理与防御(2) :反射型DDOS
Kali Linux 网络扫描秘籍 第六章 拒绝服务(二)
NTP 放大 DoS 攻击利用响应远程 monlist 请求的网络时间协议(NTP)服务器。 monlist 函数返回与服务器交互的所有设备的列表,在某些情况下最多达 600 个列表。 攻击者可以伪造来自目标 IP 地址的请求,并且漏洞服务器将为每个发送的请求返回非常大的响应。 在写这本书的时候,这仍然是一个常见的威胁,目前正在大规模使用。 因此,我将仅演示如何测试 NTP 服务器,以确定它们是否将响应远程 monlist 请求。 补丁程序可用于大多数 NTP 服务来解决此问题,并且任何有存在漏洞的设备应该修复或下线。
ApacheCN_飞龙
2022/12/01
1.5K0
缓慢的Http拒绝服务攻击漏洞的验证(slowhttptest的安装)
缓慢的http拒绝服务攻击是一种专门针对于Web的应用层拒绝服务攻击,攻击者操纵网络上的肉鸡,对目标Web服务器进行海量http request攻击,直到服务器带宽被打满,造成了拒绝服务。 慢速HTTP拒绝服务攻击经过不断的演变和发展,主要有三种攻击类型,分别是Slow headers、Slow body、Slow read。以Slow headers为例,Web应用在处理HTTP请求之前都要先接收完所有的HTTP头部,因为HTTP头部中包含了一些Web应用可能用到的重要的信息。攻击者利用这点,发起一个HTTP请求,一直不停的发送HTTP头部,消耗服务器的连接和内存资源。抓包数据可见,攻击客户端与服务器建立TCP连接后,每40秒才向服务器发送一个HTTP头部,而Web服务器再没接收到2个连续的rn时,会认为客户端没有发送完头部,而持续的等等客户端发送数据。如果恶意攻击者客户端持续建立这样的连接,那么服务器上可用的连接将一点一点被占满,从而导致拒绝服务。这种攻击类型称为慢速HTTP拒绝服务攻击。
p4nda
2023/01/03
5.7K0
缓慢的Http拒绝服务攻击漏洞的验证(slowhttptest的安装)
浅谈拒绝服务攻击的原理与防御(4):新型DDOS攻击 – Websocket和临时透镜
0×01 前言 前几天我已经分别发了三篇关于DDOS攻击相关的文章,我也是第一次在freebuf上发表这种文章,没想到有那么多人点击我真的很开心,前几天我为大家介绍的DDOS攻击的方法和原理都是已经出现过大规模攻击行为的,或者说是已经实践过的。 今天我要讲的是还没有发生过大规模攻击行为的新方法–websocket和临时透镜,这两种方法其实以前早就有人介绍过了,但是我做的研究比以前发表过的那些可能更具体些,我也想把我的试验过程和一些心得分享给大家,大家一起交流一下将新技术实现的新方法。 0×02 websoc
FB客服
2018/02/23
1.5K0
浅谈拒绝服务攻击的原理与防御(4):新型DDOS攻击 – Websocket和临时透镜
什么是udp攻击,为什么udp攻击这难防御
老王和老李吵架败了,老王寒夜负气离家出走。老王衣服单薄,老李心疼老王,想给老王打电话哄他回家,可是打老王电话死活不接。此时换做你是老李,怎么办?
德迅云安全--陈琦琦
2024/06/21
4530
浅谈拒绝服务攻击的原理与防御(3)| 反射DDOS攻击利用代码
0×01 前言 之前发了一篇关于反射DDOS攻击原理以及反射资源扫描的文章,本来今天的这个应该并到那篇文章里,共称为反射DDOS攻击扫描与利用,但是我怕这样做会教坏小孩子,我发第一篇DDOS文章的时候freebuf就502了。。。。。 凑巧了,弄得我都不敢发利用代码了,但是我想了一天以后我觉得我还是发出来吧,毕竟我写的也不好,没必要藏着掖着的,我还会把payload去掉,让大家自己填写,这就不算是我搞破坏了。废话不多说了,赶紧发完下班了。 0×02 代码的使用方法 首先,我这是在linux环境下写的,开始我
FB客服
2018/02/23
1.3K0
浅谈拒绝服务攻击的原理与防御(3)| 反射DDOS攻击利用代码
浅谈拒绝服务攻击的原理与防御[1] | 普通拒绝服务攻击
普通拒绝服务攻击是指一些传统的攻击方式,如:SYN FLOOD攻击、ACK FLOOD攻击、CC攻击、UDP FLOOD攻击 等等,下面会详细介绍。 SYN FLOOD攻击 Syn flood攻击是利用TCP协议的一些特性发动的,通过发送大量伪造的带有syn标志位的TCP报文使目标服务器连接耗尽,达到拒绝服务的目的。要想理解 syn flood的 攻击原理 必须要先了解TCP协议建立连接的机制。 TCP(Transmission Control Protocol 传输控制协议)是一种面向连接的、可靠的
FB客服
2018/02/23
2.1K0
浅谈拒绝服务攻击的原理与防御[1] | 普通拒绝服务攻击
chargen 拒绝服务攻击复现
字符生成器协议,是RFC864中定义的网络服务。用于测试,调试,测量目的。可以使用tcp或udP连接,服务端口通常为19,会返回随机数量的随机字符。
Deen_
2019/03/04
2.9K1
ddos(分布式拒绝服务攻击)分为两种**直接攻击**/**反弹攻击(间接攻击)ddos及对抗方法ip溯源的实现原理和防御措施
攻击者将发送ip设置为虚假ip,受访者在进行第二次握手时,不能判断ip真伪,向源地址发送响应包,并且等待第三次握手,随时间响应丢失,却占用cpu和内存
wjl110
2022/03/24
8610
ddos(分布式拒绝服务攻击)分为两种**直接攻击**/**反弹攻击(间接攻击)ddos及对抗方法ip溯源的实现原理和防御措施
浅谈拒绝服务攻击的原理与防御(6):拒绝服务攻击的防御
0×01前言 DDOS攻击是每个需要对外提供服务的公司最大的威胁之一,尤其是新兴的互联网公司与电信运行商对此尤其看重,每个公司的网络安全组都必须具备一定的防御DDOS攻击的能力,不仅仅是会使用各个品牌的安全设备,更重要的是要有防御DDOS攻击的明确思路以及正确的方法,这样才能保证自己的公司不被黑客破坏、勒索。 任何需要通过网络提供服务的业务系统,不论是处于经济原因还是其他方面,都应该对DDoS攻击防护的投资进行考虑。大型企业、政府组织以及服务提供商都需要保护其基础业务系统(包括Web、DNS、Mail、交换
FB客服
2018/02/24
2.6K0
浅谈拒绝服务攻击的原理与防御(6):拒绝服务攻击的防御
BAT常爱问的“三次握手,四次挥手”你真的懂吗?
记得刚毕业找工作面试的时候,经常会被问到:你知道“3次握手,4次挥手”吗?这时候我会“胸有成竹”地“背诵”前期准备好的“答案”,第一次怎么怎么,第二次……答完就没有下文了,面试官貌似也没有深入下去的意思,深入下去我也不懂,皆大欢喜!
乔戈里
2019/01/28
6930
BAT常爱问的“三次握手,四次挥手”你真的懂吗?
OpenV**服务被利用于UDP反射放大DDoS攻击
2019年09月10日, 华为AntiDDoS8000设备某荷兰数据中心局点捕获新型UDP反射放大攻击,反射源端口为1194。客户在AntiDDoS8000清洗设备上配置硬件过滤规则有效阻断了攻击。华为未然实验室通过对攻击流量深入分析,很快发现攻击流量来自在网络中开放的OpenVPN服务。
FB客服
2019/09/29
1.4K0
OpenV**服务被利用于UDP反射放大DDoS攻击
DDoS(分布式拒绝服务)攻击是无解的吗?
DdoS的攻击方式有很多种,最基本的DoS攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。单一的DoS攻击一般是采用一对一方式的,当攻击目标CPU速度低、内存小或者网络带宽小等等各项指标不高的性能,它的效果是明显的。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得DoS攻击的困难程度加大了-目标对恶意攻击包的"消化能力"加强了不少。这时候分布式的拒绝服务攻击手段(DDoS)就应运而生了。DDoS就是利用更多的傀儡机(肉鸡)来发起进攻,以比从前更大的规模来进攻受害者
4xx.me
2022/06/09
7000
DDoS(分布式拒绝服务)攻击是无解的吗?
信息安全期末
考虑到效率和正确性,每一种物理网络都会规定链路层数据帧的最大长度,称为链路层MTU。在以太网的环境中可传输的最大IP报文为1500字节。
matt
2022/10/25
6610
信息安全期末
服务器经常被ddos攻击怎么办?
DDOS攻击全称分布式拒绝服务(Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力。
拾光博客
2023/05/16
2.3K0
服务器经常被ddos攻击怎么办?
DDoS攻击与防御:从原理到实践
出于打击报复、敲诈勒索、政治需要等各种原因,加上攻击成本越来越低、效果特别明显等特点,DDoS攻击已经演变成全球性网络安全威胁。
0xtuhao
2022/06/21
1.8K0
DDoS攻击与防御:从原理到实践
DOS攻击手段_ddos攻击原理与防御方法
DDoS是英文Distributed Denial of Service的缩写,意即“分布式拒绝服务”,那么什么又是拒绝服务(Denial of Service)呢?可以这么理解,凡是能导致合法用户不能够访问正常网络服务的行为都算是拒绝服务攻击。也就是说拒绝服务攻击的目的非常明确,就是要阻止合法用户对正常网络资源的访问,从而达成攻击者不可告人的目的。分布式拒绝服务攻击一旦被实施,攻击网络包就会从很多DOS攻击源(俗称肉鸡)犹如洪水般涌向受害主机,从而把合法用户的网络包淹没,导致合法用户无法正常访问服务器的网络资源,因此,拒绝服务攻击又被称之为“洪水式攻击”,常见的DDOS攻击手段有SYN Flood、ACK Flood、UDP Flood、ICMP Flood、TCP Flood、Connections Flood、Script Flood、Proxy Flood等。
全栈程序员站长
2022/11/15
2.2K0
Linux下防御DDOS攻击的操作梳理
DDOS的全称是Distributed Denial of Service,即"分布式拒绝服务攻击",是指击者利用大量“肉鸡”对攻击目标发动大量的正常或非正常请求、耗尽目标主机资源或网络资源,从而使被攻击的主机不能为合法用户提供服务。 DDOS攻击的本质是: 利用木桶原理,寻找利用系统应用的瓶颈;阻塞和耗尽;当前问题:用户的带宽小于攻击的规模,噪声访问带宽成为木桶的短板。 可以参考下面的例子理解下DDOS攻击。 1)某饭店可以容纳100人同时就餐,某日有个商家恶意竞争,雇佣了200人来这个饭店坐着不吃不喝,
洗尽了浮华
2018/01/23
7.3K0
推荐阅读
相关推荐
浅谈拒绝服务攻击的原理与防御(7):用Python和C实现syn flood攻击
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档