关注我们
QRcode 邮件联系 QRcode
主页 » 信息安全 » 正文

OpenSSHD用户枚举漏洞

 feng  1,092 ℃  0条点评


OpenSSHD用户枚举漏洞

摘要:

通过发送一个长密码,一个远程用户可以枚举在系统上运行SSHD的用户。

这个问题存在于大多数的现代配置中,因为相比于计算BLOWFISH哈希散列,需要更长的时间来计算SHA256 / SHA512。

CVE-ID:CVE-2016-6210


测试的版本:

这个问题在版本opensshd - 7.2 - p2(也应该在更早期的版本上进行测试)上进行了测试。


修复:

这个问题被OPENSSH的开发小组报道,而且他们已经开发出了一个修复补丁(不过目前还不知道这个补丁是否发布)。(特别感谢'dtucker () zip com au'的快速回复和解决建议)。


详细信息:

当SSHD试图验证一个不存在的用户时,它会进入一个硬编码在SSHD源代码中的假密码结构。在这个硬编码的密码结构中密码的哈希计算基于BLOWFISH 算法。如果是一个真实的有效用户密码,则会使用SHA256 / SHA512进行哈希计算。由于计算SHA256 / SHA512哈希比计算BLOWFISH哈希耗时要长,所以如果发送的密码大于10KB,将会导致相比于不存在的用户来说收到来自服务器的响应会存在一个时间差。


示例代码:

import paramiko import time user=raw_input("user: ") p='A'*25000 ssh = paramiko.SSHClient() starttime=time.clock() ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) try:         ssh.connect('127.0.0.1', username=user,         password=p) except:         endtime=time.clock() total=endtime-starttime print(total)

(有效的用户将会需要更高的总时间)。

请注意,如果SSHD配置禁止root登录,那么root就不被视为有效的用户…

如果启用了TCP时间戳选项,那么度量时间的最佳方法是使用来自服务器的TCP数据包的时间戳,因为这将会消除任何网络延迟。

本文由 360安全播报 翻译,转载请注明“转自360安全播报”,并附上链接。
原文链接:http://seclists.org/fulldisclosure/2016/Jul/51

本文标签:
深夜出炉:httpoxy远程代理感染漏洞浅析
​安全公告:ASN.1编码中存在堆内存崩溃漏洞
我是如何打造一款自动化SQL注入工具的我是如何打造一款自动化SQL注入工具的分析勒索软件Cerber的攻击方法分析勒索软件Cerber的攻击方法​分析Cknife,一个类似China Chopper的webshell管理工具(第二部分)​分析Cknife,一个类似China Chopper的webshell管理工具(第二部分)某个商业定向攻击活动分析某个商业定向攻击活动分析

已有0条评论,欢迎点评!

smiley smiley smiley smiley smiley smiley smiley smiley smiley smiley smiley smiley smiley smiley smiley smiley

国际惯例, 沙发拿下 . . .


注册帐号  |  忘记密码