Windows XP的登录验证机制比Windows 98严格很多,掌握Windows XP的登录验证机制和原理对我们来说很重要,能增强对系统安全的认识,并能够有效预防、解决黑客和病毒的入侵。
二、交互式登录,系统用了哪些组件
1.Winlogon.exe
Winlogon.exe是“交互式登录”时最重要的组件,它是一个安全进程,负责如下工作:
◇加载其他登录组件。
◇提供同安全相关的用户操作图形界面,以便用户能进行登录或注销等相关操作。
◇根据需要,同GINA发送必要信息。
2. GINA
GINA的全称为“Graphical Identification and Authentication”——图形化识别和验证。它是几个动态数据库文件,被Winlogon.exe所调用,为其提供能够对用户身份进行识别和验证的函数,并将用户的账号和密码反馈给Winlogon.exe。在登录过程中,“欢迎屏幕”和“登录对话框”就是GINA显示的。
一些主题设置软件,例如StyleXP,可以指定Winlogon.exe加载商家自己开发的GINA,从而提供不同的Windows XP的登录界面。由于这个可修改性,现在出现了盗取账号和密码的木马。
一种是针对“欢迎屏幕”登录方式的木马,它模拟了Windows XP的欢迎界面。当用户输入密码后,就被木马程序所获取,而用户却全然不知。所以建议大家不要以欢迎屏幕来登录,且要设置“安全登录”。
另一种是针对登录对话框的GINA木马,其原理是在登录时加载,以盗取用户的账号和密码,然后把这些信息保存到%systemroot%\ system32下的WinEggDrop.dat中。该木马会屏蔽系统以“欢迎屏幕”方式登录和“用户切换”功能,也会屏蔽“Ctrl-Alt- Delete”的安全登录提示。
用户也不用太担心被安装了GINA木马,笔者在这里提供解决方案给大家参考:
◇正所谓“解铃还需系铃人”,要查看自己电脑是否安装过GINA木马,可以下载一个GINA木马程序,然后运行InstGina -view,可以查看系统中GinaDLL键值是否被安装过DLL,主要用来查看系统是否被人安装了Gina木马作为登录所用。如果不幸被安装了GINA 木马,可以运行InstGina -Remove来卸载它。
3. LSA服务
LSA的全称为“Local Security Authority”——本地安全授权,Windows系统中一个相当重要的服务,所有安全认证相关的处理都要通过这个服务。它从 Winlogon.exe中获取用户的账号和密码,然后经过密钥机制处理,并和存储在账号数据库中的密钥进行对比,如果对比的结果匹配,LSA就认为用户的身份有效,允许用户登录计算机。如果对比的结果不匹配,LSA就认为用户的身份无效。这时用户就无法登录计算机。
怎么看这三个字母有些眼熟?对了,这个就是和前阵子闹得沸沸扬扬的“震荡波” 扯上关系的服务。“震荡波”蠕虫就是利用LSA远程缓冲区溢出漏洞而获得系统最高权限SYSTEM来攻击电脑的。解决的方法网上很多资料,这里就不多讲了。
4. SAM数据库
SAM的全称为“Security Account Manager”——安全账号管理器,是一个被保护的子系统,它通过存储在计算机注册表中的安全账号来管理用户和用户组的信息。我们可以把SAM看成一个账号数据库。对于没有加入到域的计算机来说,它存储在本地,而对于加入到域的计算机,它存储在域控制器上。
如果用户试图登录本机,那么系统会使用存储在本机上的SAM数据库中的账号信息同用户提供的信息进行比较;如果用户试图登录到域,那么系统会使用存储在域控制器中上的SAM数据库中的账号信息同用户提供的信息进行比较。
5. Net Logon服务
Net Logon服务主要和NTLM(NT LAN Manager,Windows NT 4.0 的默认验证协议)协同使用,用户验证Windows NT域控制器上的SAM数据库上的信息同用户提供的信息是否匹配。NTLM协议主要用于实现同Windows NT的兼容性而保留的。
6. KDC服务
KDC(Kerberos Key Distribution Center——Kerberos密钥发布中心)服务主要同Kerberos认证协议协同使用,用于在整个活动目录范围内对用户的登录进行验证。如果你确保整个域中没有Windows NT计算机,可以只使用Kerberos协议,以确保最大的安全性。该服务要在Active Directory服务启动后才能启用。
7. Active Directory服务
如果计算机加入到Windows 2000或Windows 2003域中,则需启动该服务以对Active Directory(活动目录)功能的支持。