Summary of XSS

Summary of XSS


Definition


跨站脚本攻击XSS(Cross Site Scripting),为了不和层叠样式表(Cascading Style Sheets, CSS)的缩写混淆,故将跨站脚本攻击缩写为XSS。恶意攻击者往Web页面里插入恶意Script代码,当用户浏览该页面时,嵌入Web里面的Script代码会被执行,从而达到恶意攻击用户的目的。XSS攻击针对的是用户层面的攻击!


Classification


  • 反射性XSS
    • 非持久化,需要欺骗用户自己去点击链接才能触发XSS代码(服务器中没有这样的页面和内容),一般容易出现在搜索页面。反射型XSS大多数是用来盗取用户的Cookie信息。
    • img
  • 存储型XSS
    • 存储型XSS,持久化,代码是存储在服务器中的,如在个人信息或发表文章等地方,插入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,用户访问该页面的时候触发代码执行。这种XSS比较危险,容易造成蠕虫,盗窃cookie。
    • img
  • DOM型XSS
    • 不经过后端,DOM-XSS漏洞是基于文档对象模型(Document Object Model,DOM)的一种漏洞,DOM-XSS是通过url传入参数去控制触发的,其实也属于反射型XSS。

XSS常见标签


script

​ 标签是最直接的XSS有效载荷,脚本标记可以引用外部的JavaScript代码,也可以将代码插入脚本标记中

<script>alert('hack by J4m')</script>
<script>alert(/hack by J4m/)</script>
<script>alert(123)</script>

xss-labs


level-1

image-20221010222646224

第一关进到环境中来发现需要用GET请求传一个参数name,输入后发现hello插入到源代码之中,那么可以使用script标签进行xss。

<script>alert('hack by J4m')</script>

即可插入代码到源代码中执行。

level-2

image-20221010223145766

和level-1一样尝试script标签后发现,源码中插入部分的"<"和">"被转义掉了,但是下面没有转义,所以只需要闭合前后的标签即可。

"><script>alert('hack by J4m')</script><"

Reference

XSS跨站脚本攻击

posted @ 2022-10-10 22:48  J4m  阅读(24)  评论(0编辑  收藏  举报