流量劫持是什么?

EtherDream在一篇科普文章《》中详细介绍了流量劫持途径和方式。

流量劫持是一种古老的攻击方式,比如早已见惯的广告弹窗等,很多人已经对此麻木,并认为流量劫持不会造成什么损失。而事实上,流量劫持可以通过多种你无法觉察的方式,暗中窃取帐号密码、谋财盗号!

常见的流量劫持方式

Hub 嗅探、MAC 欺骗、MAC 冲刷、ARP 攻击、DHCP 钓鱼、DNS 劫持、CDN 入侵、路由器弱口令、路由器 CSRF、PPPoE 钓鱼、PPPoE 钓鱼、WiFi 弱口令、WiFi 伪热点、WiFi 强制断线、WLAN 基站钓鱼

流量劫持会带来什么危害?

不同的劫持方式,获得的流量也有所差异。DNS 劫持,只能截获通过域名发起的流量,直接使用 IP 地址的通信则不受影响;CDN 入侵,只有浏览网页或下载时才有风险,其他场合则毫无问题;而网关被劫持,用户所有流量都难逃魔掌。

Http协议下更容易发生流量劫持

1、http易致在线应用被劫持

网页技术在近些年里有了很大的发展,但其底层协议始终没有太大的改进 —— HTTP,一种使用了 20 多年古老协议。在HTTP 里,一切都是明文传输的,流量在途中可随心所欲的被控制。而在线使用的 WebApp,流量里既有通信数据,又有程序的界面和代码,劫持简直轻而易举。因此,劫持网页流量成了各路黑客们的钟爱,一种可在任意网页发起 XSS 的入侵方式。

2、公共场合使用http,不登陆也会被劫持

在自己的设备上,大家都会记住各种账号的登录状态,反正只有自己用,也没什么大不了的。然而,在被劫持的网络里,即使浏览再平常不过的网页,或许一个悄无声息的间谍脚本已暗藏其中,正偷偷访问你那登录着的网页,操控起你的账号了。

3、http状态下,Cookie 记录或浏览器自动填表单,都会导致账号密码被截获

http状态下,cookie记录的都是明文的账号密码,被劫持泄露后,即使数量不多,也能通过社工获取到用户的更多信息,最终导致更严重的泄露。

4、HTTP 缓存投毒

HTTP这种简单的纯文本协议,几乎没有一种签名机制,来验证内容的真实性。即使页面被篡改了,浏览器也完全无法得知,甚至连同注入的脚本也一块缓存起来。但凡具备可执行的资源,都可以通过预加载带毒的版本,将其提前缓存起来。

Https能避免流量劫持吗?

能!但前提是必须用受信任的SSL证书。

不同于简单的Http代理,HTTPS 服务需要权威CA机构颁发的SSL证书才算有效。自签证书浏览器不认,而且会给予严重的警告提示。而遇到“此网站安全证书存在问题”的警告时,大多用户不明白是什么情况,就点了继续,导致允许了黑客的伪证书,HTTPS 流量因此遭到劫持。

如果重要的账户网站遇到这种情况,无论如何都不该点击继续,否则大门钥匙或许就落入黑客之手。

技术分享

技术分享

劫持也可以参考:

这里所说的权威CA机构是指已经通过WebTrust国际认证,根证书由微软预置,受微软等各类操作系统、主流移动设备和浏览器信任的CA机构;在中国还要附加一项,就是要拿到工信部许可的CA牌照;这样的CA机构,才有权利签发各类数字证书。

自签证书是指不受信任的任意机构或个人,自己随意签发的证书,容易被黑客伪造替换。

全站Https的重要性

情况一:从http页面跳转访问https页面

事实上,在 PC 端上网很少有直接进入 HTTPS 网站的。例如支付宝网站,大多是从淘宝跳转过来,而淘宝使用的仍是不安全的 HTTP 协议。如果在淘宝网的页面里注入 XSS,屏蔽跳转到 HTTPS 的页面访问,用 HTTP 取而代之,那么用户也就永远无法进入安全站点了。

技术分享

尽管地址栏里没有出现 HTTPS 的字样,但域名看起来也是正确的,大多用户都会认为不是钓鱼网站,因此也就忽视了。因此,只要入口页是不安全的,那么之后的页面再安全也无济于事。

情况二:http页面重定向到https页面

有一些用户通过输网址访问的,他们输入了 www.5.qixoo.com 就敲回车进入了。然而,浏览器并不知道这是一个 HTTPS 的站点,于是使用默认的 HTTP 去访问。不过这个 HTTP 版的支付宝的确也存在,其唯一功能就是重定向到自己 HTTPS 站点上。劫持流量的中间人一旦发现有重定向到 HTTPS 站点的,于是拦下重定向的命令,自己去获取重定向后的站点内容,然后再回复给用户。于是,用户始终都是在 HTTP 站点上访问,自然就可以无限劫持了。

技术分享

国外各大知名网站(PayPal,Twitter,Facebook,Gmail,Hotmail等)都通过Always on SSL(全站https)技术措施来保证用户机密信息和交易安全,防止会话攻击和中间人攻击。

技术分享

结语

从上面的各类劫持案例中,我们可以看出,Https是很有效的流量劫持防范措施,无论是网络服务提供商还是广大网民,为自己的帐户安全和权益,都要形成使用https访问网站的习惯和意识,重要的网站必定使用 HTTPS 协议,登陆时需格外留意!

HTTPS-能否避免流量劫持的更多相关文章

  1. 关于全站https必要性http流量劫持、dns劫持等相关技术

    关于全站https必要性http流量劫持.dns劫持等相关技术 微信已经要求微信支付,申请退款功能必须12月7号之前必须使用https证书了(其他目前为建议使用https),IOS也是2017年1月1 ...

  2. 【流量劫持】躲避 HSTS 的 HTTPS 劫持

    前言 HSTS 的出现,对 HTTPS 劫持带来莫大的挑战. 不过,HSTS 也不是万能的,它只能解决 SSLStrip 这类劫持方式.但仔细想想,SSLStrip 这种算劫持吗? 劫持 vs 钓鱼 ...

  3. 【流量劫持】SSLStrip 的未来 —— HTTPS 前端劫持

    前言 在之前介绍的流量劫持文章里,曾提到一种『HTTPS 向下降级』的方案 -- 将页面中的 HTTPS 超链接全都替换成 HTTP 版本,让用户始终以明文的形式进行通信. 看到这,也许大家都会想到一 ...

  4. 如何使用HTTPS防止流量劫持

    何为流量劫持 前不久小米等六家互联网公司发表联合声明,呼吁运营商打击流量劫持.流量劫持最直观的表现,就是网页上被插入了一些乱七八糟的广告/弹窗之类的内容.比如这样: 网页右下角被插入了游戏的广告. 流 ...

  5. 拒绝流量劫持,全面使用 HTTPS!

    最近收到数个 BootCDN 用户的反馈:某些地区的宽带运营商劫持了部分 BootCDN 上的文件,并篡改文件加入了广告代码. 这种方式的流量劫持属于中间人攻击(Man-in-the-Middle A ...

  6. WiFi流量劫持—— JS脚本缓存投毒

    在上一篇<WiFi流量劫持—— 浏览任意页面即可中毒>构思了一个时光机原型,让我们的脚本通过HTTP缓存机制,在未来的某个时刻被执行,因此我们可以实现超大范围的入侵了. 基于此原理,我们用 ...

  7. Linux-某电商网站流量劫持案例分析与思考

    [前言] 自腾讯与京东建立了战略合作关系之后,笔者网上购物就首选京东了.某天在家里访问京东首页的时候突然吃惊地发现浏览器突然跳到了第三方网站再回到京东,心里第一个反应就是中木马了. 竟然有这样的事,一 ...

  8. Web如何应对流量劫持?

    虽然互联网经过多年的发展,可是网站使用的底层协议仍是 HTTP,HTTP 作为一种明文传播协议,所有的传输数据都是明文,我们都知道在通信中使用明文(不加密) 内容可能会被窃听,同时网站存在被劫持的风险 ...

  9. Istio 流量劫持过程

    开篇 Istio 流量劫持的文章其实目前可以在servicemesher社区找到一篇非常详细的文章,可查阅:Istio 中的 Sidecar 注入及透明流量劫持过程详解.特别是博主整理的那张" ...

随机推荐

  1. linux运维中的命令梳理(一)

    在linux日常运维中,我们平时会用到很多常规的操作命令. 下面对常用命令进行梳理: 命令行日常系快捷键(不分大小写)CTRL + A 移动光标到行首CTRL + E 移动光标到行末CTRL + U ...

  2. JavaScript---Ajax和函数回调,异步编程

    一 Ajax 函数的定义  :  Asynchronous JavaScript and XML(异步的 JavaScript 和 XML),无刷新的从服务器读取数据,可以在不重新加载整个网页的情况下 ...

  3. WPF基础——Application

    一.Application介绍 WPF中的Application对象用来进行一些全局的行为和操作,并且每个 Domain (应用程序域)中仅且只有一个 Application 实例存在.WPF App ...

  4. 检查c# 内存泄漏

    c# 内存泄漏检查心得 系统环境 windows 7 x64 检查工具:ANTS Memory Profiler 7 或者 .NET Memory Profiler 4.0 开发的软件为winform ...

  5. Linux 进程通信(共享内存区)

    共享内存是由内核出于在多个进程间交换信息的目的而留出的一块内存区(段). 如果段的权限设置恰当,每个要访问该段内存的进程都可以把它映像到自己的私有地址空间中. 如果一个进程更新了段中的数据,其他进程也 ...

  6. C#中的默认访问修饰符

    1.命名空间下的元素的默认访问修饰符 public : 同一程序集的其他任何代码或引用该程序集的其他程序集都可以访问该类型或成员.internal : 同一程序集中的任何代码都可以访问该类型或成员,但 ...

  7. 将Html文档整理为规范XML文档

    有多种方式可以在.NET 平台进行HTML文件解析.数据提取,其中最简单.稳妥的办法是先使用工具将Html文档整理成XML文档,再通过XML Dom模型或XPath灵活地进行数据处理.SGML便是一个 ...

  8. python 3 安装 scrapy 并运行成功

    今天,python 3 安装 scrapy, 并运行成功.特此纪念! 我的环境:windows 10(64位) + python 3.5.2(64位) 其中几个要点说明一下: 1.有几个依赖库需要事先 ...

  9. TDD(测试驱动开发)培训录(转)

    本文转载自:http://www.cnblogs.com/whitewolf/p/4205761.html 最近也在了解TDD,发现这篇文章不错,特此转载一下. TDD(测试驱动开发)培训录 2015 ...

  10. eclipse系列: Cannot change version of project facet Dynamic web的解决方法

    问题描述         用Eclipse创建Maven结构的web项目的时候选择了Artifact Id为maven-artchetype-webapp,由于这个catalog比较老,用的servl ...