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. unrecognized selector sent to class 0x10a4ce490 我躺过的坑

    错误现象:unrecognized selector sent to class 0x102265ad8’ 错误原因: Other Linker Flags 链接设置错误导致类扩展不知道如何正确读取, ...

  2. multipart/form-data 文件上传表单中 传递参数无法获取的原因!

    1.什么是multipart/form-data 首先我们需要明白在html中的enctype属性, enctype:规定了form表单在发送到服务器时候编码方式.他有如下的三个值. ①applica ...

  3. Spring Data-Spring整合Hibernate基于JPA规范

    JPA:由 Sun 公司提供了一对对于持久层操作的标准(接口+文档) Hibernate:是 Gavin King 开发的一套对于持久层操作的自动的 ORM 框架. Hibernate JPA:是在 ...

  4. 移动开发在路上-- IOS移动开发系列 网络交互四(2)

    接着上次的讲,这次我们讲 网络请求的封装  打开创建的项目,让我们一起来继续完成他, 首先我们来创建一个NSobject 的文件 圈住出来的轻一点要注意.千万不要搞错了 创建好之后,开始编写代码, 我 ...

  5. 洛谷P2569 (BZOJ1855)[SCOI2010]股票交易 【单调队列优化DP】

    Description 最近lxhgww又迷上了投资股票,通过一段时间的观察和学习,他总结出了股票行情的一些规律. 通过一段时间的观察,lxhgww预测到了未来T天内某只股票的走势,第i天的股票买入价 ...

  6. rails 中各种去重查询操作

    Table.select("DISTINCT name").map(&:name) : DISTINCT name去重查询name Table.active.map{|x| ...

  7. python学习-logging

    """#设置输出的日志内容格式fmt = '%(asctime)s %(filename)s %(funcName)s [line:%(lineno)d] %(level ...

  8. Vue ---- vue的基本使用 文本/事件/属性指令 补充: js面向对象 js函数

    目录 日考题(知识点)

  9. python基础知识第五篇(字典)

    字典(dict) info={ "k1":"v1", "k2":"value" } 字典的value可以是任意值,布尔值 ...

  10. C# 生成全球唯一标识符GUID

    string strguid = Guid.NewGuid().ToString();//57d99d89-caab-482a-a0e9-a0a803eed3ba 生成标准的标志符 (36位标准)st ...