L1E6N0A2

监督自己不断学习

0%

每日一题3-27

XSS-跨站脚本攻击

靶场

https://xss.haozi.me/;

https://xss.angelo.org.cn/;

https://xss-game.appspot.com

转自:http://flag0.com/2019/09/17/xss%E9%9D%B6%E5%9C%BA%E5%88%B7%E9%A2%98%E7%AC%94%E8%AE%B0/

反射型xss

发出带xss攻击代码的请求,作为输入提交到服务端,服务端响应后,在响应内容中出现xss攻击代码,最终被浏览器执行,整个过程像一次反射。

存储型xss

提交的xss攻击代码,会被存储的服务端,下次请求该页面时会被显示出来。

DOM型xss

攻击者提交的攻击代码并未显式的包含在web服务器的响应页面中,但会被页面中的js脚本以变量的形式来访问到,导致浏览器在渲染页面执行js脚本的过程中,通过DOM操作执行变量所代表的恶意脚本。

关于JavaScript

  • JavaScript是一种客户端的脚本语言,是运行的浏览器中的
  • 浏览器会自动运行网页中的JavaScript代码,并且JavaScript代码对于用户来说是透明的
  • 网页中运行JavaScript的方式
    • 引入外部js
1
<script src="https://cdn.staticfile.org/angular.js/1.4.6/angular.min.js"</script>
  • 使用超链接(javascript伪协议)

    1
    <a href="javascript:alert(111)"></a>
  • 使用标签

    1
    <script>alert(1)</script>
  • 使用事件方法

    1
    <img src=1 onerror=alert(1)>
  • 网页可以通过事件与用户进行交互

  • 浏览器中可以选择禁用JavaScript代码

html与js基础

1.在超链接执行js代码

1
<a href="javascript:alert(1)">ccc</a>
  • javascript //js伪协议

2.通过事件属性执行js代码(通过属性事件执行时,可以加引号,也可以不加引号)

1
2
<img src=1 onerror=alert(1)>
<input type="text" onclick="alert(1)">

常见事件

事件名称 类型 作用
onerror Window 事件属性 在错误发生时运行的脚本。
onload Window 事件属性 页面加载结束以后运行脚本
onclick Mouse 事件 元素上发生鼠标点击时触发。
onmouseover Mouse 事件 当鼠标指针移动到元素上时触发。
oninput From事件 当元素获得用户输入时运行的脚本。

xss.haozi.me靶场优质WP:https://mokyan.github.io/post/xsshaozime/