XSS (Stored)
存储型XSS(Cross Site Scripting)是一种常见的网络安全漏洞,也被称为持久型XSS。它的核心特点是恶意脚本被永久地存储在目标服务器的数据库或文件中,当其他用户访问这些被注入恶意脚本的页面时,恶意脚本会在他们的浏览器中执行。与反射型XSS不同,存储型XSS的恶意代码是存储在服务器端的,这意味着它们可以被用来攻击多个用户,而不是一次性的攻击。
Low
在存储型XSS中会涉及到与数据库的交互,
在Low级别服务器没有进行任何防护,直接输入以下内容即可实现攻击。
<script>alert(document.cookie)</script>
Medium
在Medium级别,服务器将name中的<script>
标签替换为了空字符串
因此在name文本框中输入以下内容即可实现攻击。
<scr<script>ipt>alert(document.cookie)</script>
但是,发现name输入框存在文本数量限制,将输入框的maxlength
修改为9999即可。
High
在High级别服务器使用正则对所有<script>
标签进行了过滤
可以使用img等标签实现绕过,在name本文框中输入以下内容即可实现攻击。
<img src=x οnerrοr=alert(document.cookie)>
Impossible
在Impossible级别,服务器对name和message文本框中的所有输入都进行了过滤,其中stripslashes
函数会将用户输入的特殊字符编码为HTML实体,并且使用了SQL参数化查询确保了数据的安全。