arp安全

以太网帧的type =0806 表示arp
arp攻击:hack伪造arp应答包给target(当target使用arp广播寻找目的mac时,回答mac=hack)

IP报文格式

20字节头部+最多40字节选项,IP数据报最长65535字节
MTU 1500字节,帧头6+6+2=14字节
常用ip头内容:
前4位,协议(ipv4 ipv6),然后是4位的头部长度,单位是4字节
标识字段用来唯一表示一个IP数据报,IP分片,根据标识和偏移重组,偏移量fragment offset的单位是8字节
checksum只校验头部
TTL,最大生存时间,即IP数据报被丢弃前,最多能经过几个节点,每过一节点,TTL减1,减到0时丢弃

DoS攻击

构造两个分片,第一个分片的偏移为0;第二个分片的偏移是64800。为了重组,目标主机会分配64k的缓存,可通过不断发包消耗目标内存。

tear drop攻击

利用系统处理IP分片重叠的漏洞
前提:当产生IP分片重叠时,系统采取这种策略——由第一分片覆盖重叠区域,并将第二分片的剩余部分重组到第一分片后。

先计算到底重叠长度,len=pre->end - p->offset;//pre代表前分片,p代表后分片
然后将指向第二个分片的指针朝后移动这个长度,p->offset += len;
接下来需要将第二个分片的剩余内容拷贝一下,以形成完整的数据报文。
首先需要计算第二个分片还剩余多少字节。unsigned short fp->len = p->end - p->offset;
接下来就可以从ptr开始,拷贝fp->len字节的内容,就完成了处理。
对于正常的重叠

对于不正常的重叠,fp->len 会产生溢出,len变成一个很大的数(2^16 + 负数),拷贝后,很容易把内存中系统内核部分覆盖,导致崩溃。

微小碎片攻击

包过滤防火墙,通过过滤SYN包,防止外部链接。假设防火墙filter的规则是:如果IP数据报的第一分片含有SYN,则拒绝这一分片,放行其他分片。
IP数据报最小分片长度为68字节,利用i选项字段填满ip头=60字节,,则第一分片数据部分可以只有8字节
第一分片只包含tcp头的前8字节,而syn被放在了第二分片,从而避开了filter。此时第二分片的offset为1。

如何防御:
如果第二分片offset ==1 且是tcp协议,则丢弃第二分片

IP欺骗,留后门

  • 假设hack要攻击某主机x,x有一个terminal与某sever建立了连接。 假设tcp的seq是有规律的。
  • hack 向server发syn洪泛,保证server在收到syn+ack后,不会发送RST
  • hack 伪造ip(与server不同)向x-terminal发包,寻找seq的规律
  • 冒充server_ip,根据seq规律,与x-terminal件里tcp连接
  • 发包命令x-t将外界设置为信任,echo ++ > ./rhost

参考:
https://zhuanlan.zhihu.com/p/58610182
《TCP/IP详解》

IP安全,DDoS攻击、tearDrop攻击和微小IP碎片攻击的更多相关文章

  1. MDNS DDoS 反射放大攻击——攻击者假冒被攻击者IP向网络发送DNS请求,域名为“_services._dns-sd._udp.local”,这将引起本地网络中所有提供服务的主机都向被攻击者IP发送DNS响应,列举网络中所有服务

    MDNS Reflection DDoS 2015年3月,有报告叙述了mDNS 成为反射式和放大式 DDoS 攻击中所用媒介的可能性,并详述了 mDNS 反射式攻击的原理和相应防御方式.Q3,Akam ...

  2. DDOS攻击(流量攻击)防御步骤

    DDOS全名是Distributed Denial of service (分布式拒绝服务攻击),很多DOS攻击源一起攻击某台服务器就组成了DDOS攻击,DDOS 最早可追溯到1996年最初,在中国2 ...

  3. IP报文解析及基于IP 数据包的洪水攻击

    版本(4bit) 报头长度(4bit) 优先级和服务类型(8bit) 总长度(16bit) 标识(16bit) 标志(3bit) 分段偏移(13bit) 存活期(8bit) 协议(8bit) 报头校验 ...

  4. DDOS和cc攻击的防御

    DDOS和cc攻击的防御 author:headsen chen    2017-10-21  10:47:39 个人原创,转载请注明作者,否则依法追究法律责任: DDOS攻击形式:黑客挟持多个电脑( ...

  5. DDOS SYN Flood攻击、DNS Query Flood, CC攻击简介——ddos攻击打死给钱。限网吧、黄网、博彩,,,好熟悉的感觉有木有

    摘自:https://zhuanlan.zhihu.com/p/22953451 首先我们说说ddos攻击方式,记住一句话,这是一个世界级的难题并没有解决办法只能缓解 DDoS(Distributed ...

  6. 使用iptables缓解DDOS及CC攻击

    使用iptables缓解DDOS及CC攻击 LINUX  追马  7个月前 (02-09)  465浏览  0评论 缓解DDOS攻击 防止SYN攻击,轻量级预防 iptables -N syn-flo ...

  7. DDoS攻击、CC攻击的攻击方式和防御方法

    DDoS攻击.CC攻击的攻击方式和防御方法 - sochishun - 博客园https://www.cnblogs.com/sochishun/p/7081739.html cc攻击_百度百科htt ...

  8. PHP DDOS的UDP攻击,TCP攻击,和CC攻击的核心代码

    网络安全向,请勿用作非法用途 CC攻击模块: <?phpecho “状态 : 正常运行中…..<br>”;echo “================================ ...

  9. 新手学黑客攻防-黑客攻击电脑方式和认识IP地址

    听说过黑客,没见过黑客,从最基础的开始学习,让我能在互联网中保护自己的隐私安全和信息安全. 黑客攻击电脑方式 黑客攻击的方式多种多样,但常见的只有以下几种,基本上每个黑客都会用到: 网络报文嗅探 网络 ...

  10. DDos与CC攻击的简单个人理解

    DDos简单来说就是向指定IP发送大量无用的数据包,造成网卡堵塞. CC理解成模拟表单提交,真实模拟业务,但量大之后也会造成网络堵塞. 参考: http://www.enkj.com/idcnews/ ...

随机推荐

  1. native-base中Input,Textarea等组件在ios平台下不能输入中文

    在上文react-native中TextInput在ios平台下不能输入中文已经解决. 但是在native-base中Input和Textarea都存在这样的问题.为了不要写多个组件,封装以下代码: ...

  2. python实现十大核心算法(桶排没实例)

    # author:sevenduke # 2019-06-11 # 一.交换排序 # 排序算法的温故:冒泡排序 def dubblesort(arr): for i in range(0, len(a ...

  3. 数学工具(三)scipy中的优化方法

    给定一个多维函数,如何求解全局最优? 文章包括: 1.全局最优的求解:暴力方法 2.全局最优的求解:fmin函数 3.凸优化 函数的曲面图 import numpy as np import matp ...

  4. nginx部署基于http负载均衡器

    nginx跨多个应用程序实例的负载平衡是一种用于优化资源利用率,最大化吞吐量,减少延迟和确保容错配置的常用技术. 环境介绍 配置nginx负载均衡器因会用到多台服务器来进行,所以下面我会用到docke ...

  5. 小白学 Python 爬虫(22):解析库 Beautiful Soup(下)

    人生苦短,我用 Python 前文传送门: 小白学 Python 爬虫(1):开篇 小白学 Python 爬虫(2):前置准备(一)基本类库的安装 小白学 Python 爬虫(3):前置准备(二)Li ...

  6. C语言每日一练——第7题

    一.题目要求 已知数据文件in.dat中存有200个四位数,把这些数存到数组a中,编写函数jsVal(),其功能是:把千位数字和十位数字重新组成一个新的含有两位数字的数ab(新数的十位数字是原四位数的 ...

  7. Ubuntu系统下arm-linux-gcc交叉编译环境搭建过程

    搭建所需环境Linux版本:Ubuntu 14.10 交叉编译器版本:arm-linux-gcc-4.4.3资源链接 何为交叉编译环境搭建交叉编译环境,即安装.配置交叉编译工具链.在Ubuntu环境下 ...

  8. 《Java基础知识》Java注解"@"详解

    Java注解含义: Java注解,顾名思义,注解,就是对某一事物进行添加注释说明,会存放一些信息,这些信息可能对以后某个时段来说是很有用处的.Java注解又叫java标注,java提供了一套机制,使得 ...

  9. JVM系列四(内存分配策略).

    一.概要 前面的文章介绍了对象的创建过程,其中第三步 -- 分配内存,只是简单的介绍了分配的方式 -- 指针碰撞.空闲列表,其实内存在堆上分配还大有文章嘞. 对象的内存分配,往大方向上讲,就是在堆上分 ...

  10. Golang 入门系列(十四)defer, panic和recover用法

    以前讲过golang 的基本语法.但是,只是讲了一些基础的语法,感兴趣的可以看看以前的文章,https://www.cnblogs.com/zhangweizhong/category/1275863 ...