[TOC]

参考文章:XSS(跨站脚本攻击)详解

原理

持久化,代码是存储在服务器中的,如在个人信息或发表文章等地方,插入代码,如果没有过滤或过滤不严,那么这些代码将储存到服务器中,用户访问该页面的时候触发代码执行

经过后端
image.png

分析

Low

先看代码,进行审计,找出可存储原因
再看代码之前,先看下面两个函数的用法

trim函数

删除字符串两边的空格,换行
image.png

stripslashes函数

去除字符串中包含的反斜杠
image.png

再看代码,看看,既没有空格、换行,也没有反斜杠,所以可以直接绕过限制
最后这里将插入的数据保存到了数据库中,导致用户访问网站,就会弹窗
image.png

这里name框会有限制,f12改一下就好了
image.png
image.png

接下来看数据库里有没有存放数据,可以看到存放了,所以导致存储XSS
image.png

Medium

老样子,先看代码,进行审计,找出可存储原因

可以看到这里对message做了html实体编码,所以message这栏不能注入了,但是name这里只替换了