windows2000本地登陆过程及利用方法
当你从Windows 2000 Professional or Server登录时,意见Windows 2000 用两种过程验证本地登录. Windows 2000尝试使用 Kerberos 作为基本验证方式. 如果找不道 Key Distribution Center (KDC) 服务, Windows 会使用Windows NTLanManager(NTLM) 安全机制来验证在本地SAM 中的用户
本地登录验证过程如下: 1、你输入用户名及密码然后按回车键. Graphical Identification and
Authentication (GINA) 会收集这些信息.
2、GINA 传送这些安全信息给Local Security Authority (LSA) 来进行验证
.
3、The LSA 传送这些信息给Security Support Provider Interface
(SSPI). SSPI 是一个与Kerberos 和 NTLM通讯的接口 服务.
4、SSPI 传送用户名及密码给Kerberos SSP. Kerberos SSP 检查 目的机器
是本机还是域名. 如果是本机, Kerberos 返回错误消息给 SSPI. 如果找不到KDC,
机器生成一个用户不可见的内部错误.
5、这个内部错误促发 SSPI 通知GINA. GINA 再次传送这些安全信息给LSA.
LSA 再次传送这些安全信息给SSPI.
6、这次, SSPI 传送用户名及密码给NTLM driver MSV1-0 SSP. NTLM driver
用Netlogon 服务和本地SAM来验证用户.
7、如果NTLM和Kerberos都不能验证你的帐号, 你会收到下列错误消息提示您
输入正确的用户名和密码.GINA (Graphical Identification and Authentication)原是微软为IBM机器在NT上量身订做的身份认证组件
那时就出现了一个漏洞
GINA客户只要在NT工作站的注册表上稍加修改,就可以获得本地的Admin权限,具体如下:HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\ IBMNeTNT\GroupMapping
键值设为: "DOM_USERS"="Administrators"
就是说只要把这个GroupMapping的键值设为Administrator组,Domain_user组的人就具有Admin的权限了.
重新启动,用任何一个属于Domain User组的帐号登录,都将具备Administrator组的权限.
这个漏洞是非常严重的,彻底绕过了NT的域用户安全机制.GINA是微软提供的GINA客户软件.
到了NT 4.0时...又有新的漏洞
Microsoft WindowsNT 4.0 Terminal Server中有一个远程和本地缓冲区溢出漏
洞,位于MSGINA使用的动态连接库(RegAPI.DLL)中。
要攻击该漏洞,可以在用户名称域键入一个长字符串。如果触发了该漏洞,系统
就会崩溃或者连接丢失(如果远程触发)。
若提供一个特别伪造的用户名,攻击者就有能力获取访问终端服务器然后以用户
SYSTEM执行任意命令。
对于攻击者来说利用不仅仅局限在此.
微软的Windows NT/2000提供的GINA是MSGINA.dll,它实现了Windows NT/2000默认的登录界面。微软为了支持更多的交互登录验证方式,这个GINA DLL是可替换的,可以自己开发GINA DLL以实现其他的身份验证方法,如智能卡、指纹等其他验证机制,而且微软也提供了相关文档和例程。可以通过编写和系统GINA界面相同的GINA DLL,然后取代MSGINA.dll,同时进行密码记录。利用NT系统GINA(Graphical Identification and Authentication,图形化的身份认证) 进行密码窃取.
为了获取系统登录密码,还可以编写一个接口和GINA一样的,然后所有函数在实现时都去调用MSGINA.dll的相同函数就可以了,不过这样就需要系统原来的msgina.dll.
这样的木马2000年8月就已经出现了.FakeGina,该木马只有一个DLL,它是ginastub类型的木马,因此需要系统原来的msgina.dll,系统才能支持启动,可以从http://www.ntsecurity.nu/toolbox/fakegina/获得该木马的详细信息。
国内用的比较多的是牛族nt/2000/xp 密码大盗则就是前一种了.