XSS漏洞大同小异,都是想办法让自己的输入被浏览器解析成代码执行。
存储型
存储型XSS就是把恶意代码存储在服务器中,攻击持久,每个访问该页面的用户都会受到攻击。
这是一个留言板,对我们留言的内容没有做过滤,经过实验,输入的内容直接输出在页面中,那么我们直接输入payload即可。
<script>alert(111)</script>
提交后,我们也可以发现,刷新页面代码被执行,页面不会显示我们输入的字符,审查元素可以发现,我们的输入已经被当作js代码执行。
DOM型
首先应该了解一下什么是DOM型XSS
DOM它允许程序或脚本动态地访问和更新文档内容、结构和样式,处理后的结果能够成为显示页面的一部分。
在html中,我们可以通过JavaScript,我们可以重构整个HTML文档。比如添加、移除、改变或重排页面上的项目,说白了就是利用javascript操控html的标签、内容等等。
接下来我们来看一下这个漏洞,可以发现这有一个输入框,我们输入内容后,提交,会出现一个链接,而链接的地址就是我们输入的内容。