作者:hacker发布时间:2023-02-13分类:破解邮箱浏览:124评论:2
常见 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(Transmission 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资源。
先说说syn攻击是什么
SYN攻击属于DOS攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。SYN攻击除了能影响主机外,还可以危害路由器、防火墙等网络系统。
一般的syn防御手段是:
1、过滤网关防护
这里,过滤网关主要指明防火墙,当然路由器也能成为过滤网关。防火墙部署在不同网络之间,防范外来非法攻击和防止保密信息外泄,它处于客户端和服务器之间,利用它来防护SYN攻击能起到很好的效果。过滤网关防护主要包括超时设置,SYN网关和SYN代理三种。
2、加固tcp/ip协议栈
防范SYN攻击的另一项主要技术是调整tcp/ip协议栈,修改tcp协议实现。主要方法有SynAttackProtect保护机制、SYN cookies技术、增加最大半连接和缩短超时时间等。tcp/ip协议栈的调整可能会引起某些功能的受限,管理员应该在进行充分了解和测试的前提下进行此项工作。
但是要想彻底的防御syn攻击我建议
我个人认为这些(arp\udp\tcp syn攻击都是底层协议漏洞造成的。
一些传统的360卫士、arp防火墙,杀毒软件我都试过了也都不行。
要想彻底解决内网问题,我建议你可以试试免疫网络解决方案,我之前的内网攻击问题都是通过免疫网络解决的。
对付SYN FLood攻击,可以采取以下几种方式进行缓解:
第一,减少系统SYN等待时间(只能缓解攻击),
第二,对攻击源地址进行过滤(但是对于伪造精细的报文无效),
第三,修改系统SYN_back_log上限(只能缓解攻击),
第四,将系统SYN的重发次数降低(可以缓解攻击),
第五,如果是Linux系统,可以升级内核并设置Syn_cookies(极大缓解攻击)。
如果需要根治这种攻击,就必须在要保护的主机或网段前添加专门的防攻击的过滤设备了,而且通常的防火墙,很可能也无法抵御这种行为。
检测SYN攻击非常的方便,当你在服务器上看到大量的半连接状态时,特别是源IP地址是随机的,基本上可以断定这是一次SYN攻击。我们使用系统自带的netstat 工具来检测SYN攻击:
# netstat -n -p TCP tcp 0 0 10.11.11.11:23124.173.152.8:25882 SYN_RECV - tcp 0
0 10.11.11.11:23236.15.133.204:2577 SYN_RECV - tcp 0 0
10.11.11.11:23127.160.6.129:51748 SYN_RECV - tcp 0 0
10.11.11.11:23222.220.13.25:47393 SYN_RECV - tcp 0 0
10.11.11.11:23212.200.204.182:60427 SYN_RECV - tcp 0 0
10.11.11.11:23232.115.18.38:278 SYN_RECV - tcp 0 0
10.11.11.11:23239.116.95.96:5122SYN_RECV - tcp 0 0
10.11.11.11:23236.219.139.207:49162 SYN_RECV - ...
上面是在LINUX系统中看到的,很多连接处于SYN_RECV状态(在WINDOWS系统中是SYN_RECEIVED状态),源IP地址都是随机的,表明这是一种带有IP欺骗的SYN攻击。
我们也可以通过下面的命令直接查看在LINUX环境下某个端囗的未连接队列的条目数:
#netstat -n -p TCP grep SYN_RECV grep :22 wc -l 324
显示TCP端囗22的未连接数有324个,虽然还远达不到系统极限,但应该引起管理员的注意。
SYN攻击实现起来非常的简单,互联网上有大量现成的SYN攻击工具。
Windows系统下的SYN工具:
以synkill.exe为例,运行工具,选择随机的源地址和源端囗,并填写目标机器地址和TCP端囗,激活运行,很快就会发现目标系统运行缓慢。如果攻击效果不明显,可能是目标机器并未开启所填写的TCP端囗或者防火墙拒绝访问该端囗,此时可选择允许访问的TCP端囗,通常,Windows系统开放tcp139端囗,UNIX系统开放tcp7、21、23等端囗。
是流氓软件(灰色软件)杀毒软件一般没效果,他们可以远程监控你,其实它们大多没什么太大的危害,只是会令人讨厌的弹广告,运作者收广告商的广告费而已,但如果有些网站本身就植入木马就会危害,那样会严重的侵入用户的电脑,这种软件是无意下载某些软件带入的,它们会无限复制,意思是你删除这个D盘的文件,一重启后,它自己就复制入了别的盘子中,依附了某个文件,建议用360安全卫士强制清理,或者超级兔子也可以清理流氓软件,很快捷的,不用担心 纯手动打字 我是计算机专业, 望采纳
标签:syn攻击软件
已有2位网友发表了看法:
访客 评论于 2023-02-13 05:12:53 回复
间存在基于 IP 地址的信任关系,目标主机无法检测出已经被欺骗。防范措施各个网络 ISP 应该限制源地址为外部地址的 IP 数据包进入互联网合理的配置防火墙,限制数据包的源地址为内部网络的数据包进入网络。2.2 TCP 会话劫持 (TCP sessJOn
访客 评论于 2023-02-13 11:09:10 回复
允许访问的TCP端囗,通常,Windows系统开放tcp139端囗,UNIX系统开放tcp7、21、23等端囗。SYN攻击 打开以后不显示网卡是怎么回事 希望那位高手指点一下 谢谢