SSLStrip的未来——HTTPS前端劫持

来源:互联网
更新时间:2016/12/9 11:26:49
责任编辑:王亮
字体:

0x00 前言

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

看到这,也许大家都会想到一个经典的中间人攻击工具 —— SSLStrip,通过它确实能实现这个效果。

不过今天讲解的,则是完全不同的思路,一种更有效、更先进的解决方案 —— HTTPS 前端劫持。

0x01 后端的缺陷

在过去,流量劫持基本通过后端来实现,SSLStrip就是个典型的例子。

类似其他中间人工具,纯后端的实现只能操控最原始的流量数据,这严重阻碍了向更高层次的发展,面临众多难以解决的问题。

动态元素怎么办?

如何处理数据包分片?

性能消耗能否降低?

......

动态元素

在 Web 刚出现的年代里,SSLStrip 这样的工具还是大有用武之地的。那时的网页都以静态为主,结构简单层次清晰。在流量上进行替换,完全能够胜任。

然而,如今的网页日益复杂,脚本所占比重越来越多。如果仅仅从流量上着手,显然力不从心。

  1. var protocol = 'https';  
  2. document.write('<a href="' + protocol + '://www.alipay.com/">Login</a>'); 

即使非常简单的动态元素,后端也毫无招架之力。

分片处理

分块传输的道理大家都明白。对于较大的数据,一口气是无法传完的。客户端依次收到各个数据块,最终才能合并成一个完整的网页。

点击图片看大图学网 www.xue163.com

498)this.width=498;' onmousewheel = 'javascript:return big(this)' border="0" alt="SSLStrip的未来 —— HTTPS前端劫持" width="521" height="205" src="http://img.xue163.com/s3images51cto/wyfs02/M00/4D/AA/wKiom1RW6ZWT-0h1AAAswwGQRzU074.png" />

由于每次收到的都是残缺的碎片,这给链接替换带来很大的麻烦。加上不少页面并非标准的 UTF-8 编码,因此更是难上加难。

为了能顺利进行,中间人通常先收集数据,等到页面接收完整,才开始替换。

点击图片看大图学网 www.xue163.com

498)this.width=498;' onmousewheel = 'javascript:return big(this)' style="width: 491px; height: 132px" border="0" alt="SSLStrip的未来 —— HTTPS前端劫持" width="823" height="200" src="http://img.xue163.com/s7images51cto/wyfs02/M01/4D/A9/wKioL1RW6gGA3mUGAABCNseanxs927.png" />

如果把数据比作水流,这个代理就像大坝一样,拦截了源源不断往下流的水,直到蓄满了才开始释放。因此,下游的人们需忍受很久的干旱,才能等到水源。

性能消耗

由于 HTML 兼容众多历史遗留规范,因此替换工作并非是件轻松事。

各种复杂的正则表达式,消耗着不少的 CPU 资源。尽管用户最终点击的只是其中一两个链接,但中间人并不知道将会是哪个,因此仍需分析整个页面。这不得不说是个悲哀。

0x02 前端的优势

如果我们的中间人能打入到页面的前端,那么情况会不会有所改善呢?

分片处理

首先,要派一名间谍到页面里。这是非常容易办到的:

点击图片看大图学网 www.xue163.com

498)this.width=498;' onmousewheel = 'javascript:return big(this)' style="width: 467px; height: 188px" border="0" alt="SSLStrip的未来 —— HTTPS前端劫持" width="537" height="203" src="http://img.xue163.com/s7images51cto/wyfs02/M01/4D/AA/wKiom1RW6bPw9DyjAAA1NFvTR1g453.png" />

不像超链接遍布在页面各处,脚本插入到头部即可运行了。所以我们根本不用整个页面的数据,只需改造下第一个 chunk 就可以,后续的数据仍然交给系统转发。

因此,整个代理的时间几乎不变!

动态元素

很好,我们轻易渗透到页面里。但接着又如何发起进攻?

既然到了前端里,方法就相当多了。最简单的,就是遍历超链接元素,将 https 的都替换成 http 版本。

这个想法确实不错,但仍停留在 SSLStrip 思维模式上。还是『替换』这条路,只是从后端搬到前端而已。

www.xue163.com true /5/55091.html report 4481 SSLStrip的未来——HTTPS前端劫持,0x00前言在之前介绍的流量劫持文章里,曾提到一种『HTTPS向下降级』的方案——将页面中的HTTPS超链接全都替换成HTTP版本,让用户始终以明文的形式进行通信。看到这,也许大家都会想到一个经典的中间人攻击工具—...
最近关注
首页推荐
热门图片
最新添加资讯
24小时热门资讯
sslstrip sslstrip下载 我的未来不是梦 我的未来网 我的未来不是梦歌词 我的未来女友 最好的未来 我信我的未来网 问答协议及帮助用户反馈
精彩资讯
精彩推荐
热点推荐
真视界
精彩图片
社区精粹
关于本站 | 广告服务 | 手机版 | 商务合作 | 免责申明 | 招聘信息 | 联系我们
Copyright © 2004-2016 Xue163.com All Rights Reserved. 学网 版权所有
京ICP备10044368号-1 京公网安备11010802011102号
荐闻 | 学网头条知识问答 | 装修 | 作业 | 荐闻 | 学网头条精彩微信 | 新闻中心 | 软件教室 | 设计大全 | 网络相关 | 英语学习 | 开发编程 | 考试中心 | 参考范文 | 管理文库 | 营销中心 | 站长之家 | IT信息中心 | 商学院 | 数码大全 | 硬件DIY | 企业服务 | 网吧在线 | 问吧 | 百科 | 硬件知识 | 本网视点 | 文库 | 手机 | 平板 | 汽车 | 游戏 | 家电 | 精彩摄影 | 时尚科技 | 现代家居 | IT女人 | 经验 | 每日新闻 | 健康养生 | 图书馆 | 猎奇 | 精彩看点 | 图库 | 新闻中心 | 软件教室 | 设计大全 | 网络相关 | 英语学习 | 开发编程 | 考试中心 | 参考范文 | 管理文库 | 营销中心 | 站长之家 | IT信息中心 | 商学院 | 数码大全 | 硬件DIY | 企业服务 | 网吧在线 | 问吧 | 百科 | 硬件知识 | 本网视点 | 文库 | 手机 | 平板 | 汽车 | 游戏 | 家电 | 精彩摄影 | 时尚科技 | 现代家居 | IT女人 | 经验 | 每日新闻 | 健康养生 | 图书馆 | 精彩微信 | 猎奇 | 精彩看点 | 图库编程 方案 信息windows方案windows answer文档机构教育文档问答中心IT编程数码信息解决方案信息中心IT科技