三:访问内部服务器:
  很多互联网公司除了有ONLINE对外的业务之外,在内部也用着很多的应用,如财务管理系统、员工管理系统以及其他的一些内部社区等,很多开发者为了各个应用之间调用简洁方便,在很多应用中都添加了以下头:
  Control-Allow-Origin: *
  攻击者可以利用社会工程学,让内部用户点击一个链接,然后攻击者可以访问到内部的一些资源,以下为操作步骤:
  1、员工登录到内部的某应用,如www.internalurl.com
  2、internalurl服务器返回的响应头设置了Access-Control-Allow-Origin: *(允许任何域发起的请求都可以获取当前服务器的数据。)
  3、员工受到一封邮件,点击了链接 – www.malicioussite.com
  4、这个站点包含了正常的UI内容,所以员工一般不会察觉,但是,该页面包含了一段javascript代码。
  5、该javascript代码会发送一个XMLHttpRequest请求。
  6、分析返回的数据包,并把它发送到攻击者的服务器。
  7、攻击者获取到公司内部站点的相关信息。
  四:HTML5新的XSS攻击载体
  直到现在,还有很多开发者总喜欢开发自己定义的XSS黑名单过滤器,以阻止XSS攻击,包含了大多网络上常见的XSS利用的代码,如<img、<script等,HTML5中引入了很多新的标签属性,如audio和vedio标签,新的标签带来了新的事件,会绕过现有的过滤器,以下为收集的HTML5存在跨站的标签:
  <video> <source onerror=”javascript:alert(1)”> <video onerror=”javascript:alert(1)”><source> <audio onerror=”javascript:alert(1)”><source> <input autofocus onfocus=alert(1)> <select autofocus onfocus=alert(1)> <textarea autofocus onfocus=alert(1)> <keygen autofocus onfocus=alert(1)> <button form=test onformchange=alert(2)>X <form><button formaction=”javascript:alert(1)”
  关于XSS的防护可参考freebuf上jiayzhan的XSS解决方案系列文章。
  XSS解决方案系列之一:淘宝、百度、腾讯的解决方案之瑕疵
  XSS解决方案系列之二:知其所以然—浏览器是如是解码的
  XSS解决方案系列之三: 例解过后,再回首您正在维护的产品
  XSS解决方案系列之四:关于编码
  五:离线Web应用缓存中毒:
  大部分浏览器都支持HTML离线缓存技术,如Google Chrome, Mozilla, Opera以及Safari,在给用户带来便捷的同时,也引发了一些列的安全威胁,如很有可能遭受“缓存中毒”的攻击。如果攻击者在网站上嵌入特定的JS文件,能够控制用户的账户。HTML5提供了manifest功能,它是html5提供的离线web应用解决方案,它的作用有两个:
  1. 连网情况下,访问使用manifest的页面时(之前曾经访问过),会先加载一个manifest文件,如果这个manifest文件没有改变,页面相关的资源便都来自浏览器的离线缓存,不会再有额为的网络请求,从而大大提高页面相应时间
  2. 断网时,在浏览器地址栏输入页面url,仍然能够正常显示页面,以及正常使用不依赖ajax的功能
  利用这个功能,攻击者可以窃取用户的凭据,利用方法如下:
  1、某黑木耳在星巴克链接到了一个不安全的WI-FI网络环境。(攻击者打造)
  2、该黑木耳登录新浪微博,攻击者可劫持。
  3、攻击者设置该网站返回一个页面,该页面包含了一个隐藏的iframe,提示新浪微博登陆。
  4、由于该网络是由攻击者控制,所以他提供的新浪微博登陆页面中包含了manifest属性,除了可以当场劫持到黑木耳的微博帐号密码之外,后面还可以长期劫持。
  5、当黑木耳喝完老干妈牌拿铁之后,拿着心爱的神舟牌笔记本回家之后,想继续晒自己的照片,继续登录微博。
  6、浏览器会从缓存中载入伪造的登录页面。
  7、帐号密码随后会发送到攻击者。
  因此,通过manifest属性可以窃取用户的凭据,以上都是一些已经研究出来的攻击手法,相信随着HTML5的高度发展,未来几年内会出现更多的攻击手法。