一些Windows服务器系统登录安全与NTFS技巧
|
通过[开始]--[网络工具]--[服务] (或运行tlntsvr.exe程序)就可启动该服务。在客户端单击“开始”按钮,在弹出的菜单中选择“运行”命令,然后输入以下命令建立连接:
正常情况下,服务启动后,键入该命令后应该是远程计算机回送Login和Password信息,提示用户输入用户名和口令。 可是仔细看看上显示,根本没有给你输入用户名和密码的机会,直接断开连接,这是什么原因呢? 原来是win2000以后的telnet的一种验证身份方式所致:Windows NT LAN Manager(NTLM) NTLM的工作流程: (1)客户端首先在本地加密当前用户的密码称为密码散列; (2)客户端向服务器发送自己的账号,这账号是没有经过加密的,明文传输; (3)服务器产生一个16位的随机数字发送给客户端,作为一个challenge(挑战); (4)客户端再用加密后的密码散列来加密这个challenge,然后把这个返回给服务器。作为response(响应) (5)服务器把用户名、给客户端的challenge、客户端返回的response这三个东西,发送域控制器; (6)域控制器用这个用户名在SAM密码管理库中找到这个用户的密码散列,然后使用这个密码散列来加密challenge。 (7)域控制器比较两次加密的challenge,如果一样,那么认证成功。 从上面的过程中我们可以看出,NTLM是以当前用户的身份向Telnet服务器发送登录请求的,而不是用你自己的账户和密码登录的,显然,你的登陆将会失败。 破解方式: (1)在命令行使用pwdump7,获取NTLM散列; (2)在ophcrack内load中选择single hash,复制需破解用户的NTLM散列; (3)用彩虹表破解。 防范方法(禁止LMHASH存取): 法①:通过组策略实现。在“组策略”中,依次展开“计算机配置”--“Windows设置”--“安全设置”--“本地策略”--“安全选项”,启用“网络安全:不要再下次更改密码时存储LAN Manager的哈希值”。 法②:使用长度至少为15位字符的密码。这种情况下,Windows会存储无法用于验证用户身份的LM哈希值。 --Keberos: (编辑:PHP编程网 - 湛江站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |

