本文对一些能触发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)">

一些触发XSS的姿势(未完待续)的更多相关文章

  1. Go web编程学习笔记——未完待续

    1. 1).GOPATH设置 先设置自己的GOPATH,可以在本机中运行$PATH进行查看: userdeMacBook-Pro:~ user$ $GOPATH -bash: /Users/user/ ...

  2. odoo11 model+Recordset 基础未完待续

    Model 一个模型代表了一个业务对象 本质上是一个类,包含了同django flask一样的数据字段 所有定义在模型中的方法都可以被模型本身的直接调用 现在编程范式有所改变,不应该直接访问模型,而是 ...

  3. asp.net面试题总结1(未完待续。。。。)

    1.MVC中的TempData\ViewBag\ViewData区别? 答:页面对象传值,有这三种对象可以传. Temp:临时的 Bag:袋子 (1)  TempData  保存在Session中,C ...

  4. javascript有用小功能总结(未完待续)

    1)javascript让页面标题滚动效果 代码如下: <title>您好,欢迎访问我的博客</title> <script type="text/javasc ...

  5. ASP.NET MVC 系列随笔汇总[未完待续……]

    ASP.NET MVC 系列随笔汇总[未完待续……] 为了方便大家浏览所以整理一下,有的系列篇幅中不是很全面以后会慢慢的补全的. 学前篇之: ASP.NET MVC学前篇之扩展方法.链式编程 ASP. ...

  6. 关于DOM的一些总结(未完待续......)

    DOM 实例1:购物车实例(数量,小计和总计的变化) 这里主要是如何获取页面元素的节点: document.getElementById("...") cocument.query ...

  7. 我的SQL总结---未完待续

    我的SQL总结---未完待续 版权声明:本文为博主原创文章,未经博主允许不得转载. 总结: 主要的SQL 语句: 数据操作(select, insert, delete, update) 访问控制(g ...

  8. virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续)

    virtualbox搭建ubuntu server nginx+mysql+tomcat web服务器1 (未完待续) 第一次接触到 linux,不知道linux的确很强大,然后用virtualbox ...

  9. MVC丶 (未完待续······)

         希望你看了此小随 可以实现自己的MVC框架     也祝所有的程序员身体健康一切安好                                                     ...

  10. 一篇文章让Oracle程序猿学会MySql【未完待续】

    一篇文章让Oracle DB学会MySql[未完待续] 随笔前言: 本篇文章是针对已经能够熟练使用Oracle数据库的DB所写的快速学会MySql,为什么敢这么说,是因为本人认为Oracle在功能性方 ...

随机推荐

  1. H3C配置BPDU的生成和传递

  2. linux获知当前时间

    内核代码能一直获取一个当前时间的表示, 通过查看 jifies 的值. 常常地, 这个值只代 表从最后一次启动以来的时间, 这个事实对驱动来说无关, 因为它的生命周期受限于系统 的 uptime. 如 ...

  3. C# 标准性能测试高级用法

    本文告诉大家如何在项目使用性能测试测试自己写的方法 在 C# 标准性能测试 已经告诉大家如何使用 BenchmarkDotNet 测试性能,本文会告诉大家高级的用法. 建议是创建一个控制台项目用来做性 ...

  4. 基于bootstrap3.3.4的简单框架搭建(左侧导航收起滚动)

    前提:博主本人做.net方向的2年多了 去年的后半年公司要做基于bootstrap框架的后台,由于没有经验,然后跟公司美工一块从0开始折腾,对这个框架不是太熟悉,然后就开始各种自己写js写css的往里 ...

  5. Python12_关于文件概念的讨论与序列化

    文件是什么? 存储在一些设备上的信息的集合.一堆字节: ====================================================到底什么是二进制文件.和文本文件,它们有 ...

  6. Integer类入门学习

    Integer类 它是一个类,是 int 基本数据类型的封装类. 基本API Integer 类和 int 的区别 Integer 是 int 包装类,int 是八大基本数据类型之一(byte,sho ...

  7. Web_telnet 通过JAVA实现网页上面的命令行远程工具 以及对于流的理解

    前言 这几天研究了一下如何在web页面上通过telnet 连接一个远程的机器,通过命令行进行控制,让然,B/S架构的项目,如果直接通过 浏览器是无法和远程机器进行通信的,我们就得借助后端来帮助实现这样 ...

  8. 我的 2019 年 Python 文章榜单

    现在是 2020 年的第一天,我相信从昨天开始,各位的信息流里肯定充斥了各式各样的年度盘点/回顾/总结/记录之类的内容.虽然来得稍晚了,但我还是想给诸位送上这一篇文章. 我将在本文中列出自己于 201 ...

  9. 多线程事儿(task)之 一(转载)

    此文转载作为记录,转载地址https://www.cnblogs.com/xiaoXuZhi/p/XYH_tsak_one.html 多线程,一个多么熟悉的词汇,作为一名程序员,我相信无论是从事什么开 ...

  10. 关于KMP的一点思考

    关于KMP的一点思考 KMP的\(next\)数组的性质很精妙,有必要开一个坑学习一下 Part 1 啥是next \(next[i]\)表示对于\(pre_i\)这个字符串,这个抠出来的字符串本身后 ...