ssl 的中间人攻击原理
中间人攻击就是有一个中间人服务器,他一边跟客户端建立连接,冒充服务端,另外一边跟服务端建立连接,冒充客户端,实现窃听、篡改等攻击
具体的实现方式主要有两种,分别是 ssl 嗅探 和 ssl 剥离
ssl sniff(ssl 嗅探)Attacker在客户端发起连接时截获会话,用自己的公钥和公钥证书替换原本应该是由服务端提供的公钥和公钥证书。这样一来Attacker就可以用自己的私钥来解密客户端发送的请求,然后用来和服务端那边通信
问题:Attacker给客户端提供的证书毕竟不是真的证书,使用 https 单向认证,客户端去 ca 一检查就发现问题了,然后客户端可以自己选择是否继续连接,接受这个不受信任的证书。只要没有内鬼,遇到不受信任的就坚决不接受,就没有可乘之机。
ssl Strip(ssl 剥离)这种攻击更加复杂和麻烦,但是也更加高级和隐蔽、不需要伪造证书
Attacker在客户端与服务器建立连接时,在Attacker与服务器之间形成HTTPS连接,而在客户端与Attacker之间形成HTTP连接,即将SSL层从原HTTPS连接中“剥离”。这样,既避免了在客户端验证证书时难以避免的弹 ...