linux 反射拒绝服务,浅谈拒绝服务攻击的原理与防御(2) :反射型DDOS

本文介绍了反射型DDoS攻击的原理,特别是利用UDP协议的NTP、SNMP和DNS进行放大攻击。作者分享了如何扫描这些反射资源的代码,并提到DNS和NTP的payload已省略,作为学习作业让读者自行完成。文中还提及了反射攻击的放大倍数和相关协议的工作机制。
摘要由CSDN通过智能技术生成

原标题:浅谈拒绝服务攻击的原理与防御(2) :反射型DDOS

*本文原创作者:黑戈爾,本文属FreeBuf原创奖励计划,未经许可禁止转载

0×01 前言

前几天提交了一篇关于DDOS攻击的文章到今天下午才审核通过发表出来,所以晚上闲来无事在接着写下面的内容,今天我就不多说废话了直接来干货。

目前来说流量型反射DDOS攻击都是以UDP为载体的,毕竟TCP的三次握手就让伪造源地址反射大流量变得不现实(tcp反射ACK倒是还行- -!)

下面来看看一般能用于反射放大的协议以及放大倍数吧

fb91ddc982e6492523315ab7d243a7cd.png

现在TFTP也被利用来进行DDOS反射了,据说放大倍数也很可观,根据表中显示看来NTP放大倍数最高,不过NTP服务器不多,而且开了monlist的更少了,我倒是扫描到过一两个。

但是DNS和snmp可就是多如牛毛了,而且SNMP的放大倍数也不是他说的那么小。

我今天刚测试发送一个140字节左右的报文能收到1400多字节的恢复,因为我那本破SNMP的书没细说SNMP报文的详细构造,我没能精确的构造SNMP的报文,只能去找了一个现成的,好今天我主要就讲NTP、SNMP和DNS的反射攻击和反射资源的扫描。

0×02 反射放大攻击的原理

很多协议的请求包要远小于回复包,以一个字节的数据换十个字节的数据回来,这就是一种放大。

但是你这单纯的放大攻击的是自己啊,所以说想要攻击别人就要在发送请求包时把源地址写成要攻击的人的地址,这样回复的大字节报文就去你要攻击的人那里了,这都是很简单的道理我想也不用我多说。

8d07e6f27bedf6eaa0972ab4815d8b99.png

这里放大主要利用的是NTP的monlist(listpeers也行)、DNS的AXFR(ANY也行)、SNMP的getbulkrequest

monlist是返回最近600个与当前NTP服务器通信过的IP地址

AXFR是区域传送(有地方叫域传送),比如freebuf.com下的所有域名返回给请求者

SNMPV2版本中新加的getbulkrequest用于一次请求大量的信息,减少管理站与被管理设备的交互次数

这些协议都是UDP下的协议,我就不详细说了,不然能讲一星期,有兴趣的去找一本TCP/IP的书看看,上面都有详细的介绍。下面直接上扫描这些东西的代码

a0e17e22bd5e8669e46ef77e351f905d.png

用python打开,只能在windows下,因为这个多线程thread在linux下好像不能用,输入IP的时候可以输入 x.x.x.x-x.x.x.x形式,或者以逗号分隔 x.x.x.x,a.a.a.a,s.s.s.s又或者只输入一个ip也行。

线程数要是扫描1.1.0.0-1.2.0.0 这样大段的话推荐1000-2000线程就可以,要是扫描2.0.0.0-3.0.0.0这样一千多万地址,你直接上10000线程吧,不然慢死,我编程水平比较low,所以代码写的很杂乱,大家别嘲笑我啊。

还有为了防止大家去做坏事我吧DNS和NTP的payload删掉了,留下了SNMP的,大家自己去学习学习这俩协议,自己补全payload吧,就算是家庭作业了。

攻击代码我也写好了,只不过嘿嘿……现在还不发呢,下期再发吧。

235e75d382dd5b2755220a78f0d5cbf5.png

*本文原创作者:黑戈爾,本文属FreeBuf原创奖励计划,未经许可禁止转载返回搜狐,查看更多

责任编辑:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值