欢迎来到天天文库
浏览记录
ID:5236281
大小:28.00 KB
页数:6页
时间:2017-12-06
《基于ssh协议攻击和防范》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、基于SSH协议攻击和防范 摘要:剖析了SSH协议针对恶意登录、数据监听、伪服务器欺骗、重放攻击和中间人攻击的防御作用。关键词:SSH协议安全传输安全认证攻击1前言传统telnet联机会话所传输的资料并未加密,很可能会遭人窃听。SSH为SecureShell的缩写,由IETF的网络工作小组(NetworkWorkingGroup)所制定。SSH是一个非常流行的在客户端-服务器中进行客户认证和网络通信加密的软件包,是专为远程登录会话和其它网络服务提供安全性的协议。利用SSH协议用于远程连接,可以有效防止远程管理过程中的信息泄
2、露问题,相对telnet提供了强大得多的安全性。2SSH协议的内容SSH协议采用公钥认证方式,如果公钥验证成功,客户端使用自己本地密钥对的私钥部分,对特定报文进行摘要运算,将所得的结果(即数字签名)发送给服务器,向服务器证明自己的身份;服务器使用预先配置的该用户的公钥,对客户端发送过来的数字签名进行验证。6SSH实现认证连接过程如下:客户端要连接到SSH服务器上,由客户端软件向服务器发出请求,客户端与服务器协商以较低的协议版本号进行工作;服务器收到请求之后,在服务器的用户根目录下寻找到公有密钥,请求客户端用私有密钥进行安全
3、验证。如果两个密钥一致,服务器就用公有密钥加密并把它发送给客户端软件。客户端软件收到后用私有密钥解密再把它发送给服务器。接着由客户端依据服务器提供的两个公钥及64位随机数确定会话号及会话密钥;最后完成认证。SSH协议客户端和服务器端之间通信使用的加解密密钥,都是通过密钥交互过程动态生成的,在通信双方部署密钥。利用密钥交换算法可以在通信双方动态地产生密钥,这个密钥只能被通信的双方获得,任何第三者都无法窃听,这就在源头上保证了加解密使用密钥的安全性,很好地解决了密钥分发问题。3攻击与防范对策3.1恶意登录的防范SSH-1协议的
4、几个实现中存在CRC32漏洞,黑客利用CRC32漏洞不用密码而取得远程帐户权限。通过22端口使用SSHCRC632工具进行登录攻击,攻击者通过向有漏洞的主机发送构造好的SSH1包,在从32字节往16位字节的整数分配时有可能会产生溢出,这会导致暴露混乱列表偏移,可以导致SSH守护进程产生值为0的哈希表,导致获取登录权限提升。一旦成功登录,通过SSH扫描工具来扫描其它的SSH服务器。阻止这些攻击可以使用的方法有:关闭daemon服务;在SSH服务器上安装一个防火墙,用于隔离内部和外部的网络;将SSH服务器的监听端口从22改为其
5、它的端口,或者屏蔽到服务器22端口的所有流量,以降低发现SSHdaemon服务的可能性;安装补丁。3.2数据监听的防范通常可采取数据防范加密防范网络监听,即使攻击者获得传输数据,如果不能破译,数据也是安全的。SSH加密通道上的数据来防范数据监听。SSH加解密使用对称密钥算法,支持的算法有DES、3DES、AES等。这些算法都使用健壮的密钥长度;采用初始化向量保护,可以防止类似于密码流复用等密码分析工具的攻击,从而保护核心数据的安全。更为重要的是,SSH具有很好的扩展性,允许在系统中注册使用者自己创建的算法,很多算法都可以在
6、系统中注册。使用一个由多种算法组成的集合,即使一种算法被破解,SSH协议也可以很容易的切换使用其它算法。3.3对“伪服务器欺骗”的防御用户认证机制只实现了服务器端对客户端的认证,而客户端无法认证服6务器端,因此存在着“伪服务器欺骗”的安全隐患。攻击者可能是来自一台服务器,它假冒客户端要连接的服务器。如果在连接过程中,服务器不经过认证,这种攻击是可能成功的。为了防止类似这样的伪服务器欺骗,SSH协议支持客户端对服务器端进行认证。在SSH协议中,除了第一次连接到服务器这种情况外,服务器是要被认证的,而且认证是在用户身份认证之前
7、进行。一台服务器要提供远程服务,必须公布它的主机密钥的公钥部分。服务器端在密钥交换阶段,使用自己的私钥对一段固定格式的数据进行数字签名,并将该签名发往客户端,客户端使用本地保存的服务器公钥,对签名进行鉴别,从而达到认证服务器的目的。3.4重放攻击的防御重放攻击指攻击者通过截获发送的数据包,延迟一段时间后发送,通过发送目的主机已接收过的包,来达到欺骗系统的目的,破坏身份认证的正确性。对付重放攻击的方法是在消息中加入时间戳或产生一个随机数,并加密传送消息,SSH协议在会话密钥交换阶段和用户认证阶段,都在数据包中加入了随机数,因
8、此,采用SSH协议可以避免重放攻击。盗取cookie与提交cookie也是一种重放攻击。SSH协议客户端和服务器端之间通信使用的加解密密钥,都是通过密钥交互过程动态生成的,可以避免该类重放攻击。3.5中间人攻击的防御6中间人攻击是指攻击者与正在进行通讯的两端分别建立独立的联系,并交换其所收到的数据,而通
此文档下载收益归作者所有