什么是启用CURLOPT_SSL_VERIFYPEER和禁用CURLOPT_SSL_VERIFYHOST的安全后果?
Answer 1:
CURLOPT_SSL_VERIFYPEER检查远程证书是有效的,即你相信它是由你信任的CA,它是真正的发行。
CURLOPT_SSL_VERIFYHOST检查该证书颁发给你想交谈的实体。
将其与现实生活中的情况下,VERIFYPEER就像是检查ID的形式是你认识一个(即从你信任的国家的护照,从你知道一个公司,......员工卡)。 VERIFYHOST是像你想谈论谁的卡匹配检查实际名称。
如果你不使用VERIFYHOST(正确的值是2,而不是1,顺便说一句),可以禁用主机名验证开门MITM攻击:任何人只要有身份证件的形式,你可以信任的集ID内冒充你的人信任,例如用有效护照的人可以假装他们是其他任何人的有效护照。
文章来源: Security consequences of disabling CURLOPT_SSL_VERIFYHOST (libcurl/openssl)