生活中我们经常会碰到空间领红包“中毒”自动发不良信息的现象,或者是不知不觉的被人盗取了信息的情况。通常这种情况都是XSS漏洞导致的,我们今天就来讲解一下关于XSS漏洞的原理。
XSS种类:反射型
存储型
Dom-based型
这里面反射型跟持久型都是很常见的,也是用的最广泛的一种攻击方式。
它的主要利用原理是:
给受害者发送带有恶意代码或脚本的链接,如果你点击了链接,只要是被HTML所解析并且执行了,那无论你是否快速关闭了点开的页面,都白瞎了。
Dom这种XSS漏洞是基于文档对象模型的一种漏洞,它的特点是通过url传入参数去控制触发的。
下面我们主要来说一下反射型跟存储型XSS的原理,并附上代码。
反射型XSS:我们平时常见XSS地方很多都是搜索框(一般网站上都会有搜索文章什么的),我们可以在这种搜索框里面输入:
<script>alert('XSS')</script>
来验证XSS的漏洞存在与否,如果存在会弹出一个编辑框“XSS”,下面我们自己构建一个这样的搜索框:
先新搭建好PHP环境,在站点新建一个xss.php文件,输入以下的代码。
代码的意思很简单:
- 先创建一个form表单,提交方式设置为GET,提交给本页面(也就是交给下面的PHP代码去执行)
- 定义一个$xss变量
- 如果变量不为空的话,输出$xss的内容。
然后在浏览器上访问的效果应该是这样的: