平常我们在使用WindowsXP时总是要先进行登录WindowsXP的登录验证机制和原理都要比Windows严格并复杂得多不会再出现按取消按钮就能进入系统的丑事(可以通过修改注册表来禁止)理解并掌握WindowsXP的登录验证机制和原理对我们来说很重要能增强对系统安全的认识并能够有效预防解决黑客和病毒的入侵 一了解WindowsXP的几种登录类型 交互式登录 交互式登录是我们平常最常见类型就是用户通过相应的用户帐号(User Account)和密码在本机进行登录有些网友认为交互式登录就是本地登录其实这是错误的交互式登录还包括域帐号登录而本地登录仅限于本地帐号登录详细讲解请参看下文 这里有必要提及的是通过终端服务和远程桌面登录主机可以看作交互式登录其验证的原理是一样的 在交互式登录时系统会首先检验登录的用户帐号类型是本地用户帐号(Local User Account)还是域用户帐号(Domain User Account)再采用相应的验证机制因为不用的用户帐号类型其处理方法也不同 ◇ 本地用户帐号 采用本地用户帐号登录系统会通过存储在本机SAM数据库中的信息进行验证所以也就为什么Windows忘记Administrator密码时可以删除SAM文件的方法来解决不过对于WindowsXP则不可以可能是出于安全方面考虑吧用本地用户帐号登录后只能访问到具有访问权限的本地资源(图) ◇域用户帐号 采用域用户帐号登录系统则通过存储在域控制器的活动目录中的数据进行验证如果该用户帐号有效则登录后可以访问到整个域中具有访问权限的资源 小提示:如果计算机加入域以后登录对话框就会显示登录到:项目可以从中选择登录到域还是登录到本机 网络登录 如果计算机加入到工作组或域当要访问其他计算机的资源时就需要网络登录了如图当要登录名称为Heelen的主机时输入该主机的用户名称和密码后进行验证这里需要提醒的是输入的用户帐号必须是对方主机上的而非自己主机上的用户帐号因为进行网络登录时用户帐号的有效性是由受访主机进行的 服务登录 服务登录是一种特殊的登录方式平时系统启动服务和程序时都是先以某些用户帐号进行登录后运行的这些用户帐号可以是域用户帐号本地用户帐号或SYSTEM帐号采用不同的用户帐号登录其对系统的访问控制权限也不同而且用本地用户帐号登录只能访问到具有访问权限的本地资源不能访问到其他计算机上的资源这点和交互式登录类似 从图的任务管理器中可以看到系统的进程所使用的帐号是不同的当系统启动时一些基与Win的服务会被预先登录到系统上从而实现对系统的访问和控制运行servicesmsc可以设置这些服务正是系统服务有着举足轻重的地位它们一般都以SYSTEM帐号登录的对系统有绝对的控制权限所以很多病毒和木马也争着加入这个贵族中除了SYSTEM有些服务还以Local Service和Network Service这两个帐号登录而在系统初始化后用户运行的一切程序都是以用户本身帐号登录的 从上面讲到的原理不难看出为什么很多电脑文章告诉一般用户平时使用计算机时要以Users组的用户登录因为即使运行了病毒木马程序由于受到登录用户帐号相应的权限限制最多也只能破坏属于用户本身的资源而对维护系统安全和稳定性的重要信息无破坏性 批处理登录 批处理登录一般用户很少用到通常被执行批处理操作的程序所使用在执行批处理登录时所用帐号要具有批处理工作的权利否则不能进行登录 平常我们接触最多的是交互式登录所以下面笔者讲为大家详细讲解交互式登录的原理 二交互式登录系统用了哪些组件 winlogonexe winlogonexe是交互式登录时最重要的组件它是一个安全进程负责如下工作: ◇加载其他登录组件 ◇提供同安全相关的用户操作图形界面以便用户能进行登录或注销等相关操作 ◇根据需要同GINA发送必要信息 GINA GINA的全称为Graphical Identification and Authentication——图形化识别和验证它是几个动态数据库文件被winlogonexe所调用为其提供能够对用户身份进行识别和验证的函数并将用户的帐号和密码反馈给winlogonexe在登录过程中欢迎屏幕和登录对话框就是GINA显示的 一些主题设置软件例如StyleXP可以指定winlogonexe加载商家自己开发的GINA从而提供不同的WindowsXP的登录界面由于这个可修改性现在出现了盗取帐号和密码的木马 一种是针对欢迎屏幕登录方式的木马它模拟了WindowsXP的欢迎界面当用户输入密码后就被木马程序所获取而用户却全然不知所以建议大家不要以欢迎屏幕来登录且要设置安全登录 另一种是针对登录对话框的GINA木马其原理是在登录时加载以盗取用户的帐号和密码然后把这些信息保存到%systemroot%\system下的WinEggDropdat中该木马会屏蔽系统以欢迎屏幕方式登录和用户切换功能也会屏蔽CtrlAltDelete的安全登录提示 用户也不用太担心被安装了GINA木马笔者在这里提供解决方案给大家参考: ◇正所谓解铃还需系铃人要查看自己电脑是否安装过GINA木马可以下载一个GINA木马程序然后运行InstGina view可以查看系统中GinaDLL那键值是否有被安装过DLL主要用来查看系统是否被人安装了Gina木马作为登录所用如果不幸被安装了GINA木马可以运行InstGina Remove来卸载它 LSA服务 LSA的全称为Local Security Authority——本地安全授权Windows系统中一个相当重要的服务所有安全认证相关的处理都要通过这个服务它从winlogonexe中获取用户的帐号和密码然后经过密钥机制处理并和存储在帐号数据库中的密钥进行对比如果对比的结果匹配LSA就认为用户的身份有效允许用户登录计算机如果对比的结果不匹配LSA就认为用户的身份无效这时用户就无法登录计算机 怎么看这三个字母有些眼熟?对了这个就是和前阵子闹得沸沸扬扬的震蕩波撤上关系的震蕩波蠕虫就是利用LSA远程缓沖区溢出漏洞而获得系统最高权限SYSTEM来攻击电脑的解决的方法网上很多资料这里就不多讲了 SAM数据库 SAM的全称为Security Account Manager——安全帐号管理器是一个被保护的子系统它通过存储在计算机注册表中的安全帐号来管理和用户和用户组的信息我们可以把SAM看成一个帐号数据库对于没有加入到域的计算机来说它存储在本地而对于加入到域的计算机它存储在域控制器上 如果用户试图登录本机那么系统会使用存储在本机上的SAM数据库中的帐号信息同用户提供的信息进行比较;如果用户试图登录到域那么系统会使用存储在域控制器中上的SAM数据库中的帐号信息同用户提供的信息进行比较 Net Logon服务 Net Logon服务主要和NTLM(NT LAN ManagerWindows NT 的默认验证协议)协同使用用户验证Windows NT域控制器上的SAM数据库上的信息同用户提供的信息是否匹配NTLM协议主要用于实现同Windows NT的兼容性而保留的 KDC服务 KDC(Kerberos Key Distribution Center——Kerberos密钥发布中心)服务主要同Kerberos认证协议协同使用用于在整个活动目录范围内对用户的登录进行验证如果你确保整个域中没有Windows NT计算机可以只使用Kerberos协议以确保最大的安全性该服务要在Active Directory服务启动后才能启用 Active Directory服务 如果计算机加入到Windows或Windows域中则需启动该服务以对Active Directory(活动目录)功能的支持 三登录前后winlogon到底干了什么 如果用户设置了安全登录在winlogon初始化时会在系统中注册一个SAS (Secure Attention Sequence——安全警告序列)SAS是一组组合键默认情况下为CtrlAltDelete它的作用是确保用户交互式登录时输入的信息被系统所接受而不会被其他程序所获取所以说使用安全登录进行登录可以确保用户的帐号和密码不会被黑客盗取要启用安全登录的功能可以运行control userpasswords命令打开用户帐户对话框选择高级(如图)选中要求用户按CtrlAltDelete选项后确定即可以后在每次登录对话框出现前都有一个提示要求用户按CtrlAltDelete组合键目的是为了在登录时出现WindowsXP的GINA登录对话框因为只有系统本身的GINA才能截获这个组合键信息而如前面讲到的GINA木马会屏蔽掉安全登录的提示所以如果安全登录的提示无故被屏蔽也是发现木马的一个前兆安全登录功能早在Windows时就被应用于保护系统安全性 在winlogon注册了SAS后就调用GINA生成个 |