发现遇到这个问题的网友还真不少。2016 年,在一场持续超过六个小时的大规模银行欺诈案中,一家巴西银行的网站被黑客劫持,在线客户被路由到攻击者的网络钓鱼站点,导致该银行的 36 个域名、企业电子邮箱全体沦陷。
“被劫持的风险居然这么大!”吓得二狗子瓜子都掉了,这可得好好了解一下,再彻底解决。通过资料,他发现劫持还分为 HTTP 劫持和 DNS 劫持。那这两种有什么区别,都有什么危害呢?我们一起来看看吧。
文章作者丨思否:云叔_又拍云
什么是劫持当我们浏览一些网站,特别是一些没有配备 SSL 证书的网站时,有时会遇到网站没有显示正确的内容,或者在正确的内容中夹杂了一些乱七八糟的广告的情况,这可能是遇到了网络劫持。遭到劫持的网站轻则被攻击,重则数据被偷盗。
我国复杂的网络环境是劫持发生的一大原因。除了电信、联通、移动这三大家,还有长城宽带、鹏博士、教育网、科技网、广电等等不少于 20 多家的小运营商,而且各个省市是相互独立运营。这就导致网络出现跨网、跨运营商的情况会特别多。而这种大量跨网访问的流量交互就非常容易产生网络劫持,
比较常见的劫持分两种:DNS 劫持和 HTTP 劫持。用网上一个形象生动的比喻来区分的话,DNS 劫持就是你想去银行存钱却把你拉到了劫匪手中,HTTP 劫持就是你从服务器买了一包零食,里面给你放了一坨粑粑。
当然这是一个粗浅的比喻,真正的区别我们下面细说。
HTTP 劫持发生在用户与其目的网络服务所建立的专用数据通道中。它会监视特定数据信息,当满足设定的条件时,就会在正常的数据流中插入精心设计的网络数据报文。从而让用户端程序解释“错误”的数据,并在使用者界面弹出新窗口展示宣传性广告或者直接显示某网站的内容。
常见的 HTTP 劫持现象有以下三种:
改变访问内容:将正常返回的页面进行劫持并做 302 跳转,跳转到更改后的页面
插入广告:在返回页面中加入框架代码来实现强行加入广告
篡改网页中原有广告:将网页中原本就存在的广告更改为劫持方要推送的广告