前言
近期客户端为了缩包,对很多项目进行了h5化相关的工作,但在上线后发现有部分内容被http内容劫持
,具体现象就是部分页面被植入广告,由于之前大多采用http协议,被劫持肯定是束手无策,因此准备切换协议,而https多了关于域名证书验证与交互数据加密的步骤,之前也有对过https交互原理以及Charles抓包工具的原理做过相关学习总结,详见 https原理初探。
https是建立于http的基础上,加上了ssl(Secure Sockets Layer安全套接层)协议的网络传输协议,其中通过数字证书、对称与非对称加密、数据完整性摘要等技术,完成数据传输的保密性、完整性。而我们使用https就能完全应对网络安全中的dns劫持
和http内容劫持
吗?
正文
dns劫持、http内容劫持
dns劫持
由于我们在浏览器或webapp中与服务端的交互大多是通过协议+域名进行的,而对于域名映射到ip这个步骤要经过本机请求dns服务器的过程,因此除了受信任的dns根服务器,中间缓存的各种dns服务器都有可能被黑或者被运营商利用篡改,比如www.baidu.com正常是映射到61.135.169.125这个公网ip,黑客或者恶意份子将dns服务器对于该域名的公网ip解析改成26.135.169.123,那么我们在某个地域访问www.baidu.com得到的结果就是26.135.169.123这台服务器返回的内容,并且在http协议访问的情况下毫无感知。
http内容劫持
&nbs