|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
您现在的位置: ChinaBeta.cn 中文IT资讯 >> 网络安全 >> HACK教程 >> HACK技术正文
黑客知识之SYN攻击原理以及防范技术
Www.ChinaBeta.Cn 更新时间:2007-3-1 阅读次数:

【ChinaBeta.Cn 网络安全】
 据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法。相信很多人还记得2000年YAHOO网站遭受的攻击事例,当时黑客利用的就是简单而有效的SYN攻击,有些网络蠕虫病毒配合SYN攻击造成更大的破坏。本文介绍SYN攻击的基本原理、工具及检测方法,并全面探讨SYN攻击防范技术。

  据统计,在所有黑客攻击事件中,SYN攻击是最常见又最容易被利用的一种攻击手法。相信很多人还记得2000年YAHOO网站遭受的攻击事例,当时黑客利用的就是简单而有效的SYN攻击,有些网络蠕虫病毒配合SYN攻击造成更大的破坏。本文介绍SYN攻击的基本原理、工具及检测方法,并全面探讨SYN攻击防范技术。

  一、TCP握手协议

  在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接。

  第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认;

  第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

  第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED状态,完成三次握手。

  完成三次握手,客户端与服务器开始传送数据,在上述过程中,还有一些重要的概念:

  未连接队列:在三次握手协议中,服务器维护一个未连接队列,该队列为每个客户端的SYN包(syn=j)开设一个条目,该条目表明服务器已收到SYN包,并向客户发出确认,正在等待客户的确认包。这些条目所标识的连接在服务器处于Syn_RECV状态,当服务器收到客户的确认包时,删除该条目,服务器进入ESTABLISHED状态。

  Backlog参数:表示未连接队列的最大容纳数目。

  SYN-ACK 重传次数 服务器发送完SYN-ACK包,如果未收到客户确认包,服务器进行首次重传,等待一段时间仍未收到客户确认包,进行第二次重传,如果重传次数超过系统规定的最大重传次数,系统将该连接信息从半连接队列中删除。注意,每次重传等待的时间不一定相同。

  半连接存活时间:是指半连接队列的条目存活的最长时间,也即服务从收到SYN包到确认这个报文无效的最长时间,该时间值是所有重传请求包的最长等待时间总和。有时我们也称半连接存活时间为Timeout时间、SYN_RECV存活时间。

  二、SYN攻击原理

  SYN攻击属于DOS攻击的一种,它利用TCP协议缺陷,通过发送大量的半连接请求,耗费CPU和内存资源。SYN攻击除了能影响主机外,还可以危害路由器、防火墙等网络系统,事实上SYN攻击并不管目标是什么系统,只要这些系统打开TCP服务就可以实施。从上图可看到,服务器接收到连接请求(syn=j),将此信息加入未连接队列,并发送请求包给客户(syn=k,ack=j+1),此时进入SYN_RECV状态。当服务器未收到客户端的确认包时,重发请求包,一直到超时,才将此条目从未连接队列删除。配合IP欺骗,SYN攻击能达到很好的效果,通常,客户端在短时间内伪造大量不存在的IP地址,向服务器不断地发送syn包,服务器回复确认包,并等待客户的确认,由于源地址是不存在的,服务器需要不断的重发直至超时,这些伪造的SYN包将长时间占用未连接队列,正常的SYN请求被丢弃,目标系统运行缓慢,严重者引起网络堵塞甚至系统瘫痪。

  三、SYN攻击工具

  SYN攻击实现起来非常的简单,互联网上有大量现成的SYN攻击工具。

  1、Windows系统下的SYN工具

  以synkill.exe为例,运行工具,选择随机的源地址和源端囗,并填写目标机器地址和TCP端囗,激活运行,很快就会发现目标系统运行缓慢。如果攻击效果不明显,可能是目标机器并未开启所填写的TCP端囗或者防火墙拒绝访问该端囗,此时可选择允许访问的TCP端囗,通常,windows系统开放tcp139端囗,UNIX系统开放tcp7、21、23等端囗。

  四、检测SYN攻击

  检测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个,虽然还远达不到系统极限,但应该引起管理员的注意。

  

[1] [2] 下一页  

Google

(责任编辑:hahack)

注:本站所有资料均为个人爱好与广大网友分享!如用于非法!造成一切后果自负·与本站无关!
发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
热门文章 相关报道
普通HACK技术 [HACK技术]“网页病毒下载器”病毒分析报告 (12-28)最新HACK技术
普通HACK技术 [HACK技术]“VB破坏者变种N”病毒分析报告 (12-28)最新HACK技术
普通HACK技术 [HACK技术]“自动运行蠕虫变种JPH”病毒分析… (12-28)最新HACK技术
普通HACK技术 [HACK技术]“传奇终结者变种YZM”病毒分析报… (12-28)最新HACK技术
普通HACK技术 [警戒公告]Adobe Flash Player 有跨域策略文… (12-28)最新HACK技术
普通HACK技术 [警戒公告]Xen copy_to_user() 函数有本地绕… (12-28)最新HACK技术
普通HACK技术 [警戒公告]Yahoo! Toolbar YShortcut.dll A… (12-28)最新HACK技术
普通HACK技术 [HACK攻防]黑客狙击Oracle系统的八大常用套… (12-21)
普通HACK技术 [菜鸟入门]3个步骤结束网站恶梦-SQL注入隐患 (12-21)
普通HACK技术 [菜鸟入门]提高安全意识 认识“瞬时攻击“的… (12-21)
  • 安全宝典 五大入侵检测系统…

  • 存于网页中的5种隐形病毒详…

  • 黑客纷纷破解iPhone 至少曝…

  • 让你瞧瞧 黑客眼中的防火墙…

  • 教你知道黑客侦察和隐藏IP地…

  • 两岸黑客利用假网页盗财

  • 目睹黑客网络"攻击"全程 网…

  • WinXP控制远程桌面中的“雕…

  • 陌生木马不用怕!对付捆绑木…

  • 黑客劫持僵尸网络 疯狂敲诈…

  •   网友评论内容:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    I D *
    邮 箱
    主 页
    评 分 1分 2分 3分 4分 5分
    评 论

    关于我们  中国·国家信息产业部{粤ICP备06006652号}{陇ICP备06002562号}
    版权所有:『AK网盟基地』站长:Hahack | QQ:80505955 | E-mail:Hahack@Gmail.com
    Copyright (C) 2005-2007  akhack.org|chinabeta.cn All Rights Reserved