内容导读:导航目录:1、如何使用UDP和TCP/IP攻击2、UDP、TCP、ICMP攻击原理?3、tcp/ip常见攻击方式如何使用UDP和TCP/IP攻击经过艰苦研究,终于配置出能防内网各种DDOS攻击包括上面这种TCPSYNFL...……
导航目录:
如何使用UDP和TCP/IP攻击
经过艰苦研究,终于配置出能防内网各种DDOS攻击包括上面这种TCP
SYN
FLOOD攻击的路由器,它采用FREEBSD操作系统,防火墙为系统自带,运行于内核模式下,高速高效,让目前已知的内部DDOS完全无效。
方案特点:客户机根本不发包,你说路由器还会掉线么?当然不会啦!所有的TCP拒绝服务攻击器都失效了,变SB了,不发包了,哈哈。
方案简介:
所需条件:只要是我装的软路由就可以实现。不用在客户机上装任何软件,不用更改 *** 结构,不用更改交换机配置。客户机操作系统不限,不管是WIN2000,WIN2003,还是XP。
技术原理:路由器自动识别来自内网的攻击行为,正常的上网数据包不加以过滤,不受丝毫影响。凡是TCP攻击包不管什么类型,不论包大小,到达路由器后,由内核自动分析出来,找出攻击特征,然后向发起攻击的客户机下发一个指令,客户机收到这个指令后出现 *** 协议错误而停止发包,网卡流量变为0,即使攻击程序还在运行,但已经没有流量发往路由器了, *** 不会掉线,交换机也不会收到攻击包。客户机这时仍然可以上网,游戏,没任何影响。整个过程会在两三秒内完成,攻击流量会在几秒内消失!此方案可以防御完美各种TCP
SYN
FLOOD,TCP
ACK
FLOOD,TCP
CONNECTION
FLOOD等,包括最恐怖的伪造源地址为内网其它机器的真实IP和MAC地址的SYN攻击。
至于UDP,ICMP,那就不用讨论了,一般的路由只要限速就没事了。
此 *** 已经在FREEBSD软路由上实现。
查看原帖
UDP、TCP、ICMP攻击原理?
ICMP攻击就是Ping就是利用ICMP协议走的。大量的ping 就是ICMP碎片攻击。
TCP攻击,TCP连接的三次握手特性来进行,一般有SYN ACK FIN NULL FIN+URG+PUSH 由于TCP协议很多。所以攻击的方式也很多。有开放性的,有半开放的。都是利用三次握手,中途突然终断。造成拒绝服务。
UDP攻击,多是了利用和ICMP进行的组合进行,比如SQL SERVER,对其1434端口发送‘x02’或者‘x03’就能够探测得到其连接端口。我想你听说过阿拉丁UDP洪水吧。就是这个道理,UDP是最难防御的。只可意会不可言传。
tcp/ip常见攻击方式
常见 TCP/IP 协议攻击 *** 分析
2.1 IP 欺骗( IP Spoofing)
IP 欺骗是指一个攻击者假冒一个主机或合法用户的 IP 地址,利用两个主机之间的信任关系来达到攻击的目的,而这种信任关系只是根据源 IP 地址来确定。所谓信任关系是指当主机 B 信任主机 A 上的 X用户时,只要 X 在 A 上登录, X 用户就可以直接登录到主机 B 上,而不需要任何口令。
IP 欺骗通常需要攻击者能构造各种形式 IP 数据包,用虚假的源 IP 地址替代自己的真实 IP 地址。如果主机之间存在基于 IP 地址的信任关系,目标主机无法检测出已经被欺骗。
防范措施
各个 *** ISP 应该限制源地址为外部地址的 IP 数据包进入互联网
合理的配置防火墙,限制数据包的源地址为内部 *** 的数据包进入 *** 。
2.2 TCP 会话劫持 (TCP sessJOn hijacking)
TCP 会话劫持跳过连接过程.对一个已经建立的连接进行攻击。攻击者与被假冒主机和目标主机之一在同一个子网中,攻击者通过一个嗅探程序可以看到被假冒主机和目标主机之间通信的数据包。
攻击者看到被假冒主机和目标主机建立一个连接并进行身份认证后,通过对数据包捕获和进行分析,就可以得到连接的序列号。
一旦得到正确的序列号就可以发送一个假冒的 TCP 分段,接管已经建立的连接。这样,被假冒主机发送的数据包都会被目标主机忽略,因为它们的序列号会被目标主机认为不正确。
防范措施
最主要的 *** 是在传输层对数据进行加密。
2.3 拒绝服务( Denial Of Service )
拒绝服务坷的目的就是使受害的服务器不能提供正常的 *** 服务。
2.3.1 SYN 淹没 (SYN Flooding)
当开放了一个TCP端口后,该端口就处于Listening状态,不停地监视发到该端口的Syn报文,一旦接收到Client发来的Syn报文,就需要为该请求分配一个TCB(Tran *** ission Control Block),通常一个TCB至少需要280个字节,在某些操作系统中TCB甚至需要1300个字节,并返回一个SYN ACK命令,立即转为SYN-RECEIVED即半开连接状态,而操作系统在SOCK的实现上最多可开启半开连接个数是一定的。
从以上过程可以看到,如果恶意的向某个服务器端口发送大量的SYN包,则可以使服务器打开大量的半开连接,分配TCB,从而消耗大量的服务器资源,同时也使得正常的连接请求无法被相应。而攻击发起方的资源消耗相比较可忽略不计。
防范措施
无效连接监视释放
这种 *** 不停监视系统的半开连接和不活动连接,当达到一定阈值时拆除这些连接,从而释放系统资源。这种 *** 对于所有的连接一视同仁,而且由于SYN Flood造成的半开连接数量很大,正常连接请求也被淹没在其中被这种方式误释放掉,因此这种 *** 属于入门级的SYN Flood *** 。
延缓TCB分配 ***
从前面SYN Flood原理可以看到,消耗服务器资源主要是因为当SYN数据报文一到达,系统立即分配TCB,从而占用了资源。而SYN Flood由于很难建立起正常连接,因此,当正常连接建立起来后再分配TCB则可以有效地减轻服务器资源的消耗。常见的 *** 是使用Syn Cache和Syn Cookie技术。
Syn Cache技术:
这种技术是在收到SYN数据报文时不急于去分配TCB,而是先回应一个SYN ACK报文,并在一个专用HASH表(Cache)中保存这种半开连接信息,直到收到正确的回应ACK报文再分配TCB。在FreeBSD系统中这种Cache每个半开连接只需使用160字节,远小于TCB所需的736个字节。在发送的SYN ACK中需要使用一个己方的Sequence Number,这个数字不能被对方猜到,否则对于某些稍微智能一点的Syn Flood攻击软件来说,它们在发送Syn报文后会发送一个ACK报文,如果己方的Sequence Number被对方猜测到,则会被其建立起真正的连接。因此一般采用一些加密算法生成难于预测的Sequence Number。
Syn Cookie技术:
对于SYN攻击,Syn Cache虽然不分配TCB,但是为了判断后续对方发来的ACK报文中的Sequence Number的正确性,还是需要使用一些空间去保存己方生成的Sequence Number等信息,也造成了一些资源的浪费。
Syn Cookie技术则完全不使用任何存储资源,这种 *** 比较巧妙,它使用一种特殊的算法生成Sequence Number,这种算法考虑到了对方的IP、端口、己方IP、端口的固定信息,以及对方无法知道而己方比较固定的一些信息,如MSS、时间等,在收到对方的ACK报文后,重新计算一遍,看其是否与对方回应报文中的(Sequence Number-1)相同,从而决定是否分配TCB资源。