SSH Secure Shell 3.0.0 允许无密码登陆发布时间:2001-07-23 更新时间:2001-07-23 严重程度:高 威胁程度:普通用户访问权限 错误类型:设计错误 利用方式:服务器模式 受影响系统 SSH Secure Shell version 3.0.0 running on:详细描述 SSH Secure Shell 3.0.0 for UNIX存在一个远程漏洞,问题牵涉到 帐户使用2个或者更少字符的密码,未认证用户可以使用任意密码 以这些帐户等落,这仅仅影响SSH Secure Shell 3.0.0 for UNIX。 这个问题在Solaris中比较严重,如用户使用"NP"来表示锁住"lp","adm" ,"bin"帐户,一些LINUX系统中在/etc/passwd或者/etc/shadow使用"!!"。 而在密码认证过程中,如果/etc/shadow,/etc/password中密码短于2个或2 个字符长度,SSH3.0.0允许任意用户使用任意密码利用这个帐户登陆到系统, 问题存在与使用/etc/shadow中的加密密码值来调用crypt(pw,salt)上,SSH 3.0.0直接把前2个字符作为了SALT。 测试代码 见描述部分。 解决方案 升级到3.0.1: http://commerce.ssh.com ftp://ftp.ssh.com/pub/ssh 或者在/etc/ssh2/sshd2_config中关闭SSH SECURE SHELL守护程序 使用密码认证,而使用另一种如public key方式认证。 或者使用下面的补丁: """ File /lib/sshsession/sshunixuser.c Function ssh_user_validate_local_password Location near line 953, before /*Authentication is accepted if the encrypted passwords are identical. */ 增加如下一行 if (strlen(correct_passwd) < 13) return FALSE; "" 相关信息 |