hidden域下的xss

常见的xss的个输出点都是一个input标签
例如:
    
<input type="text" id="search" value="[USER_INPUT]"/>
  若是过滤了 “<” 、“>”通常可以用各种dom事件绕过,具体可参考:html dom事件对象
  但是普通事件对hidden事件是无效的,不会被触发
<input type="hidden" id="search" value="1" onclick=alert(1)/>
但是找到一个有趣的东西可以触发hidden下的click事件:accesskey
<input type="hidden" id="search" value="1" accesskey="p" onclick=alert(1)/>
触发方式在Firefox下为:Alt+Shift+p
不同浏览器触发方式不同,参考 W3school HTML DOM accessKey 属性

定义和用法

accessKey 属性设置或返回元素的快捷键。

快捷键规定激活元素或使元素获得焦点的快捷键。

注释:在不同的浏览器中访问快捷键的方式各有不同:

浏览器 Windows Linux Mac
Internet Explorer [Alt] + accesskey N/A
Chrome [Alt] + accesskey [Alt] + accesskey [Control] [Alt] + accesskey
Firefox [Alt] [Shift] + accesskey [Alt] [Shift] + accesskey [Control] [Alt] + accesskey
Safari [Alt] + accesskey N/A [Control] [Alt] + accesskey
Opera

Opera 15 或更新的版本:[Alt] + accesskey

Opera 12.1 或更老的版本:[Shift] [Esc] + accesskey

不过在大多数浏览器中,可以将快捷键设置为其他组合。

提示:如果超过一个元素拥有相同的快捷键,那么:

  • IE, Firefox: 激活下一个被按下快捷键的元素
  • Chrome, Safari: 激活最后一个被按下快捷键的元素
  • Opera: 激活第一个被按下快捷键的元素
 

结果:
Firefox:    shift+alt+p 测试成功
Chrome:  alt+p  最新版Chrome未测试成功)
IE:            alt+p 未测试成功
 

 

发表评论

电子邮件地址不会被公开。 必填项已用*标注