怀疑Win2000的安全性
做以下一个实验:
有两台安装Win2000操作系统的计算机.
其中一台计算机名为Server,
另一台计算机名为Client.
在两台计算机中设置同样的用户Test,
则Server上的Test用户的完整用户名为Server\Test
Client上的Test用户的完整用户名为Client\Test
1.如果为用户Server\Test和Client\Test设置同样的密码.
则:
以Test用户登录计算机Client后,
通过网上邻居访问计算机Server,
则自动以Server\Test身份登录计算机Server.
并且取得Server\Test用户在Server上的权限.
(如安装的是NTFS文件系统可以设置某些共享目录的权限以证明这一点)
2.如果为用户Server\Test和Client\Test设置不同的密码.
则:
以Test用户登录计算机Client后,
通过网上邻居访问计算机Server,
会提示输入网络密码.
输入正确的用户名和密码后,
以输入的用户身份登录Server.
问题:
如果Win2000采用的是单向加密技术加密用户的密码.
即:不可能通过简单的算法从用户的密码密文中解出密码的明文.
为何通过网上邻居访问Server时,能够自动登录?
我认为:
用户Test登录Client后.
如果Client不以任何可逆形式记录Test的密码明文.
那么Test试图访问Server时,Client也不知道Test的密码明文.
当然也不可能自动登录Server.
应该在Test试图访问Server时,会被提示输入密码.
如果Client记录了Test的密码明文,
当Test登录Server时,
Client以另一种加密协议(比如:SSL)
将Test的密码明文传送到Server.
Server将Client\Test的密码明文加密后
与Server\Test的密码密文比较.
如果一致则登录成功,
如果不一致则提示Test登录.
计算机在本地保留用户的密码明文,
这样做安全吗?
安装过Studio.Net的朋友应该知道.
当准备进行Component Update时,
由于需要重起几次计算机,
所以会有一个自动登录可选项,
用户输入了用户名和密码后,
计算机重起后就会以输入的用户名和密码自动登录计算机.
如果计算机自己知道用户的密码明文,
还有必要让用户自己输入吗?
或者Client确实没有记录Test的密码明文.
当Test访问Server时,
Client将Test的密码密文传送给Server.
Server比较Server\Test的密码密文和Client\Test的密码密文.
如果一致则登录成功,
如果不一致则提示Test登录.
如果确实是这样实现的,那么安全吗?