SSL:在中间人攻击中如何保护证书免受人侵?
我的问题是关于ssl中的证书,但我认为这些问题应该适用于所有证书。 为了清楚起见,我已经包含了SSL过程。
在SSL中,这是我所了解的程序:
1)客户端
2)服务器
3)客户
4)客户端和服务器
5)客户
6)服务器
题
在第二步中发生的中间人攻击会阻止什么? 为什么中间的一个人,比如说trudy,不能捕获服务器发送的证书,并更改其中的公钥(对于具有私钥的东西)。
我假设证书以某种方式被加密。
但是,服务器无法加密证书,因为客户端还没有公钥。 当服务器从授权机构(如veri-sign)获得密钥时,密钥是否会使用verisign的公钥进行预先引入? 我认为这应该起作用,因为所有网络浏览器都应该拥有大部分权限的公钥。
不,证书没有加密。 但它由认证机构(CA)签署。 由于这些检查包含在证书中的信息(特别是证书所属的URL),因此对于给定的URL不应该有第二个有效证书。
根据信任存储(例如在您的浏览器中)检查CA的证书。 如果这个信任库被破坏,或者如果您信任无效的证书,那么在中间攻击中没有针对人的保护
证书由一些可信机构签署,例如Verisign。
这些根权限的证书在您下载它们时会内置到浏览器中。 您可以在Firefox中查看根证书,例如,转到工具 - >选项 - >高级 - >加密 - >查看证书 - >权限。
但是,如果这些根证书颁发机构中的任何一个受到损害,那么证明是伪造的,这使得中间人攻击成为可能。
你实际上指出了PKI的弱点。
说Trudy在你和你的银行(bank.com)中间。 Trudy可以在步骤2中随意更改公钥,但证书的签名将无效。 所以Trudy必须找到一种方法来再次生成签名。 可以肯定地说,可信的CA不会为他做这件事。 所以他必须签署一个假的CA,这是你的浏览器不信任的。 理论上这仍然是安全的。
然而,根据一些测试,大多数浏览器(尤其是IE 6)显示的模糊安全警告并且大多数人不理解并且忽略。
链接地址: http://www.djcxy.com/p/3699.html上一篇: SSL: How are certificates protected against man in the middle attacks?
下一篇: force login attempts