马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?註冊
x
作者: 星星之火 时间: 2004-7-10 19:59 标题: 惊醒啊中国人!--微软在Windows中安装美国间谍 !(转贴)
近来常看到Hotmail被黑、IE浏览器漏洞百出的报导,微软在计算机安全方面的记录是非常糟糕。作为用户的我们,大部分人已经对这些小漏洞习以为常。但是我们发现在每一个微软出售的的Windows拷贝中,都存在着一个给美国国家安全局(NSA-美国的间谍机构)提供的后门,从而使美国政府可以简单地访问你的计算机,你会怎么想呢?
在研究 Windows NT 4 安全子系统时,Cryptonym公司的首席科学家Andrew Fern发现在Win95/98/NT4.0和Windows 2000中存在为美国国家安全局提供的一个后门。该后门表明微软的加密API(CryptoAPI)结构存在安全漏洞。由于加密API是Windows安全体系的基石,任何的漏洞都将导致Windows遭受外来的电子攻击。
在CryptoAPI中,我们知道Windows用“加密公钥”在使用CryptoAPI的模块之前来验证这一模块的一致性。 而在WindowsNT4的补丁5中,微软犯了一个严重的“错误”,忘记将识别安全部件的符号信息移去。这使得Andrew发现了Windows系统中存在两个密钥,一个属于微软,用以认证加密API服务,另一属于美国国家安全局,从而也允许它调用加密API服务,从而无需你的许可访问你的机器。
结果是,美国国家安全局可以轻而易举地无需经过认证调用所有Windows系统的安全服务。一旦这些服务启动,他们可以完全控制你的机器。对于使用WindowsNT进行安全数据服务的非美国用户而言,这是十分令人担忧地。美国政府正尽量使在美国之外其它国家很难采用“强”加密技术。他们在世界最流行的操作系统中安装安全后门将给我们带来强烈震撼。
然而,在这个坏消息中有个好消息。在实现这个“加密认证”功能中也存在一个安全问题。加密认证启动后,用户可以简单地删除或替换“美国国家安全局”密钥而不破坏操作系统。由于“美国国家安全局”密钥可以被轻易替换掉,非美国的用户可以方便地在Windows中安装一个更强的加密服务,而无需经过微软与“美国国家安全局”的同意。一个取代“国家安全局”密钥的程序可以在HTPP…. 中取得。
技术细节
微软加密API概况
微软加密API(CryptoAPI)允许独立软件开发商(ISV)动态地加载加密模块(CSP): Windows对加密模块进行签名认证的这一体系结构允许在操作系统中加入不同的加密实现方法。除非你同意接受美国的出口许可,否则微软不会对你的加密模块提供数字签名。换言之,微软从不允许非美国的公司在Windows中加入强加密服务。
幸运地是,在这个图中的“加密服务提供者”的数字签名程序有一个安全问题。漏洞是怎么发现的 使用NT4服务器,补丁5(美国版,128位加密版),Visual C++ 6,补丁3。同样的结果可以在Win95osr2, Win98, Win98黄金版,WinNT4(所有版本),与Windows2000(到预发布版1为止)
通过调试器可以看到:
在加密服务提供者装载前 在动态连接库 ADVAPI32.DLL 中
地址 0x77DF5530 A9 F1 CB 3F DB 97 F5 ... ... ...
地址 0x77DF55D0 90 C6 5F 68 6B 9B D4 ... ... ...
在RC4加密方法使用后 可以看到
A2 17 9C 98 CA R S A 1 ... 00 01 00 01 ...(看起来像RSA密钥)
A0 15 9E 9A CB R S A 1 ... 00 01 00 01 ...(看起来像RSA密钥)
检查SP5的补丁中的符号表 在"_CProvVerifyImage@8" 中
地址 0x77DF5530 标记为“_KEY”
地址 0x77DF55D0 标记为 “_NSAKEY”
为什么人们认为这是一个“间谍密钥”呢?
1. 这个密钥令人吃惊地叫候选作“NSA密钥”, 即为美国国家安全局National
Security Agency 的缩写“NSA”;
2. 在Windows中存在这第二个密钥是从不为人知的;
3. 这第二个密钥是用来干什么的呢?
4. 根据微软的说法,这是一个“备用”的密钥,该密钥是应美国国家安全局要求设立的。
[此贴子已经被原作者于6/12/2005 10:49:07 PM编辑过。]
|