




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、计算机病毒与反病毒技术计算机病毒与反病毒技术主要内容主要内容u 特洛伊木马的概念特洛伊木马的概念u 特洛伊木马的伪装方式、隐藏方式、自动启动方式特洛伊木马的伪装方式、隐藏方式、自动启动方式u 特洛伊木马的原理及其危害特洛伊木马的原理及其危害u 特洛伊木马的自动启动技术、隐藏技术、远程监控特洛伊木马的自动启动技术、隐藏技术、远程监控技术技术7.1.1 特洛伊木马的定义特洛伊木马的定义u 特洛伊木马特洛伊木马(Trojan Horse),简称木马,是一种恶,简称木马,是一种恶意程序,是一种基于远程控制的黑客工具,一旦侵意程序,是一种基于远程控制的黑客工具,一旦侵入用户的计算机,就悄悄地在宿主计算机
2、上运行,入用户的计算机,就悄悄地在宿主计算机上运行,在用户毫无察觉的情况下,让攻击者获得远程访问在用户毫无察觉的情况下,让攻击者获得远程访问和控制系统的权限,进而在用户的计算机中修改文和控制系统的权限,进而在用户的计算机中修改文件、修改注册表、控制鼠标、监视件、修改注册表、控制鼠标、监视/控制键盘,或控制键盘,或窃取用户信息窃取用户信息u 古希腊特洛伊之战中利用木马攻陷特洛伊城;现代古希腊特洛伊之战中利用木马攻陷特洛伊城;现代网络攻击者利用木马,采用伪装、欺骗网络攻击者利用木马,采用伪装、欺骗(哄骗,哄骗,Spoofing)等手段进入被攻击的计算机系统中,窃等手段进入被攻击的计算机系统中,窃取
3、信息,实施远程监控取信息,实施远程监控7.1.1 特洛伊木马的定义特洛伊木马的定义u木马与病毒木马与病毒8一般情况下,病毒是依据其能够进行自我复制即传染性的一般情况下,病毒是依据其能够进行自我复制即传染性的特点而定义的特点而定义的8特洛伊木马主要是根据它的有效载体,或者是其功能来定特洛伊木马主要是根据它的有效载体,或者是其功能来定义的,更多情况下是根据其意图来定义的义的,更多情况下是根据其意图来定义的8木马一般不进行自我复制,但具有寄生性,如捆绑在合法木马一般不进行自我复制,但具有寄生性,如捆绑在合法程序中得到安装、启动木马的权限,程序中得到安装、启动木马的权限,DLL木马甚至采用动木马甚至采
4、用动态嵌入技术寄生在合法程序的进程中态嵌入技术寄生在合法程序的进程中8木马一般不具有普通病毒所具有的自我繁殖、主动感染传木马一般不具有普通病毒所具有的自我繁殖、主动感染传播等特性,但我们习惯上将其纳入广义病毒,也就是说,播等特性,但我们习惯上将其纳入广义病毒,也就是说,木马也是广义病毒的一个子类木马也是广义病毒的一个子类u木马的最终意图是窃取信息、实施远程监控木马的最终意图是窃取信息、实施远程监控u木马与合法远程控制软件木马与合法远程控制软件(如如pcAnyWhere)的主要区别在于的主要区别在于是否具有隐蔽性、是否具有非授权性是否具有隐蔽性、是否具有非授权性7.1.2 特洛伊木马的结构特洛伊
5、木马的结构u 木马系统软件一般由木马配置程序、控制程序和木木马系统软件一般由木马配置程序、控制程序和木马程序马程序(服务器程序服务器程序)三部分组成三部分组成配置控制响应木马程序配置程序控制程序木马服务器木马控制端(客户端)7.1.3 特洛伊木马的基本原理特洛伊木马的基本原理u 运用木马实施网络入侵的基本过程运用木马实施网络入侵的基本过程木马信息控制端Internet服务端配置木马传播木马运行木马信息反馈建立连接远程控制7.1.3 特洛伊木马的基本原理特洛伊木马的基本原理u 用用netstat查看木马打开的端口查看木马打开的端口666267626
6、7021096ESTABLISHEDLISTENING:ProtoLocal AddressForeign AddressState TCP TCP服务端IP地址木马端口控制端IP地址控制端端口连接状态:连接已建立等待连接7.1.3 特洛伊木马的基本原理特洛伊木马的基本原理u 木马控制端与服务端连接的建立木马控制端与服务端连接的建立8 控制端要与服务端建立连接必须知道服务端的木控制端要与服务端建立连接必须知道服务端的木马端口和马端口和IP地址地址8 由于木马端口是事先设定的,为已知项,所以最由于木马端口是事先设定的,为已知项,所以最重要的是如何获得服务端的重
7、要的是如何获得服务端的IP地址地址8 获得服务端的获得服务端的IP地址的方法主要有两种:信息反地址的方法主要有两种:信息反馈和馈和IP扫描扫描7.1.3 特洛伊木马的基本原理特洛伊木马的基本原理木马控制端与服务端连接的建立木马控制端与服务端连接的建立7.1.3 特洛伊木马的基本原理特洛伊木马的基本原理u 木马通道与远程控制木马通道与远程控制8 木马连接建立后,控制端端口和服务端木马端口木马连接建立后,控制端端口和服务端木马端口之间将会出现一条通道之间将会出现一条通道8 控制端上的控制端程序可藉这条通道与服务端上控制端上的控制端程序可藉这条通道与服务端上的木马程序取得联系,并通过木马程序对服务端
8、的木马程序取得联系,并通过木马程序对服务端进行远程控制,实现的远程控制就如同本地操作进行远程控制,实现的远程控制就如同本地操作控制端程序木马程序10966267控制端服务端窃取密码文件操作修改注册表系统操作7.1.3 特洛伊木马的基本原理特洛伊木马的基本原理u木马的基本原理木马的基本原理8特洛伊木马包括客户端和服务器端两个部分,也就是说,特洛伊木马包括客户端和服务器端两个部分,也就是说,木马其实是一个服务器木马其实是一个服务器-客户端程序客户端程序8攻击者通常利用一种称为绑定程序攻击者通常利用一种称为绑定程序(exe-binder)的工具将的工具将木马服务器绑定到某个合法软件上,诱使用户运行合
9、法软木马服务器绑定到某个合法软件上,诱使用户运行合法软件。只要用户运行该软件,特洛伊木马的服务器就在用户件。只要用户运行该软件,特洛伊木马的服务器就在用户毫无察觉的情况下完成了安装过程毫无察觉的情况下完成了安装过程8攻击者要利用客户端远程监视、控制服务器,必需先建立攻击者要利用客户端远程监视、控制服务器,必需先建立木马连接;而建立木马连接,必需先知道网络中哪一台计木马连接;而建立木马连接,必需先知道网络中哪一台计算机中了木马算机中了木马8获取到木马服务器的信息之后,即可建立木马服务器和客获取到木马服务器的信息之后,即可建立木马服务器和客户端程序之间的联系通道,攻击者就可以利用客户端程序户端程序
10、之间的联系通道,攻击者就可以利用客户端程序向服务器程序发送命令,达到操控用户计算机的目的向服务器程序发送命令,达到操控用户计算机的目的7.1.4 特洛伊木马的传播方式特洛伊木马的传播方式u木马常用的传播方式,有以下几种:木马常用的传播方式,有以下几种:8以邮件附件的形式传播以邮件附件的形式传播控制端将木马伪装之后添加到附件中,发送给收件人控制端将木马伪装之后添加到附件中,发送给收件人8通过通过OICQ、QQ等聊天工具软件传播等聊天工具软件传播在进行聊天时,利用文件传送功能发送伪装过的木马程序在进行聊天时,利用文件传送功能发送伪装过的木马程序给对方给对方8通过提供软件下载的网站通过提供软件下载的
11、网站(Web/FTP/BBS)传播传播木马程序一般非常小,只有是几木马程序一般非常小,只有是几K到几十到几十K,如果把木马捆,如果把木马捆绑到其它正常文件上,用户是很难发现的,所以,有一些绑到其它正常文件上,用户是很难发现的,所以,有一些网站被人利用,提供的下载软件往往捆绑了木马文件,在网站被人利用,提供的下载软件往往捆绑了木马文件,在用户执行这些下载的文件的同时,也运行了木马用户执行这些下载的文件的同时,也运行了木马8通过一般的病毒和蠕虫传播通过一般的病毒和蠕虫传播8通过带木马的磁盘和光盘进行传播通过带木马的磁盘和光盘进行传播7.1.5 特洛伊木马的危害特洛伊木马的危害u 木马的危害即木马能
12、实现的功能,包括:木马的危害即木马能实现的功能,包括:8 窃取数据窃取数据8 接受非授权操作者的指令接受非授权操作者的指令8 远程管理服务端进程远程管理服务端进程8 篡改文件和数据篡改文件和数据8 删除文件和数据删除文件和数据8 操纵注册表操纵注册表8 监视服务器的一切动作监视服务器的一切动作8 释放病毒释放病毒8 使系统自毁使系统自毁7.2.1 特洛伊木马的特性特洛伊木马的特性u 特洛伊木马具有如下特性:特洛伊木马具有如下特性:8 隐蔽性隐蔽性8 非授权性非授权性8 欺骗性欺骗性8 自动运行性自动运行性8 自动恢复性自动恢复性8 主动性主动性8 功能的特殊性功能的特殊性7.2.2 特洛伊木马
13、的分类特洛伊木马的分类u 按照对计算机的破坏按照对计算机的破坏方式分类方式分类8 破坏型破坏型8 密码发送型密码发送型8 远程访问型远程访问型8 键盘记录型键盘记录型8 DoS攻击型攻击型8 代理型代理型8 FTP型型8 程序杀手型程序杀手型u 按传输方式分类按传输方式分类8 主动型主动型8 反弹端口型反弹端口型8 嵌入式木马嵌入式木马7.3.1 木马的伪装方式木马的伪装方式u 木马通过伪装达到降低用户警觉、欺骗用户的目的木马通过伪装达到降低用户警觉、欺骗用户的目的8 修改图标修改图标8 捆绑文件捆绑文件8 出错提示出错提示8 自我销毁自我销毁8 木马更名木马更名7.3.2 木马的隐藏方式木马
14、的隐藏方式u 木马的隐藏方式木马的隐藏方式8 在任务栏里隐藏在任务栏里隐藏8 在任务管理器里隐藏在任务管理器里隐藏8 定制端口定制端口8 隐藏通讯隐藏通讯8 新型隐身技术新型隐身技术7.3.3 木马的启动方式木马的启动方式u经常用的方法主要有以下几种经常用的方法主要有以下几种8集成集成(捆绑捆绑)到应用程序中到应用程序中8隐藏在隐藏在Autoexec.bat和和Config.sys中中8潜伏在潜伏在Win.ini中中8在在System.ini中藏身中藏身8隐蔽在隐蔽在Winstart.bat中中8隐藏在应用程序的启动配置文件中隐藏在应用程序的启动配置文件中8伪装在普通文件中伪装在普通文件中8内
15、置到注册表中内置到注册表中8隐形于启动组中隐形于启动组中8修改文件关联修改文件关联8修改运行可执行文件的方式修改运行可执行文件的方式8设置在超级链接中设置在超级链接中7.4.1 特洛伊木马技术的发展特洛伊木马技术的发展u木马的发展及成熟,大致也经历了两个阶段木马的发展及成熟,大致也经历了两个阶段8Unix阶段阶段8Windows阶段阶段u木马技术发展至今,已经经历了木马技术发展至今,已经经历了4代代8第一代木马第一代木马只是进行简单的密码窃取、发送等,没有什么特别之处只是进行简单的密码窃取、发送等,没有什么特别之处8第二代木马第二代木马在密码窃取、发送等技术上有了很大的进步,冰河可以说在密码窃
16、取、发送等技术上有了很大的进步,冰河可以说是国内木马的典型代表之一是国内木马的典型代表之一8第三代木马第三代木马在数据传输技术上,又做了不小的改进,出现了在数据传输技术上,又做了不小的改进,出现了ICMP等类等类型的木马,利用畸形报文传递数据,增加了查杀的难度型的木马,利用畸形报文传递数据,增加了查杀的难度8第四代木马第四代木马在进程隐藏方面,做了很大的改动,采用了内核插入式的在进程隐藏方面,做了很大的改动,采用了内核插入式的嵌入方式,利用远程插入线程技术,嵌入嵌入方式,利用远程插入线程技术,嵌入DLL线程;或者线程;或者挂接挂接PSAPI(Process Status API),实现木马程序
17、的隐藏,实现木马程序的隐藏7.4.2 木马程序的自动启动技术木马程序的自动启动技术u 木马程序的第一次运行,需要用户主动执行,这一木马程序的第一次运行,需要用户主动执行,这一次主要是利用伪装方式诱骗用户运行安装木马程序次主要是利用伪装方式诱骗用户运行安装木马程序。此后,一般会在用户启动系统的同时自动加载木。此后,一般会在用户启动系统的同时自动加载木马程序马程序u 让程序自动运行的方法比较多让程序自动运行的方法比较多8 加载程序到启动组,写程序启动路径到注册表的加载程序到启动组,写程序启动路径到注册表的自动启动键值自动启动键值8 修改修改Boot.ini8 通过注册表里的输入法键值直接挂接启动通
18、过注册表里的输入法键值直接挂接启动8 通过修改通过修改Explorer.exe启动参数等方法启动参数等方法7.4.2 木马程序的自动启动技术木马程序的自动启动技术CRegKey hKey;if(ERROR_SUCCESS=hKey.Create(HKEY_LOCAL_MACHINE, SOFTWAREMICROSOFTWINDOWSCURRENTVERSIONRUN) BOOL bWrite = TRUE; TCHAR lpBuf_MAX_PATH; / 获取木马程序获取木马程序(当前正在运行的本程序当前正在运行的本程序)所在路径所在路径: GetModuleFileName(GetModul
19、eHandle(NULL),lpBuf,sizeof(lpBuf); TCHAR szTemp_MAX_PATH; DWORD dwCount = sizeof(szTemp); / 判断木马启动键值判断木马启动键值Tsys是否已设置是否已设置: if(hKey.QueryValue(szTemp,Tsys,&dwCount) = ERROR_SUCCESS) if(_tcscmp(szTemp,lpBuf) =0) bWrite = !bWrite; / 未设置,需要在注册表中写之未设置,需要在注册表中写之: if(bWrite) hKey.SetValue(lpBuf,Tsys); hKe
20、y.Close();7.4.3 木马的伪隐藏技术木马的伪隐藏技术u进程、线程和服务进程、线程和服务8进程进程一个正常的一个正常的Windows应用程序,在运行之后,都会在系统应用程序,在运行之后,都会在系统之中产生一个进程,同时,每个进程,分别对应了一个不之中产生一个进程,同时,每个进程,分别对应了一个不同的同的PID(Progress ID,进程标识符,进程标识符)。这个进程会被系统。这个进程会被系统分配一个虚拟的内存地址空间,一切相关的程序操作,都分配一个虚拟的内存地址空间,一切相关的程序操作,都会在这个虚拟的空间中进行会在这个虚拟的空间中进行8线程线程一个进程,可以存在一个或多个线程,线
21、程之间同步执行一个进程,可以存在一个或多个线程,线程之间同步执行多种操作。一般情况下,线程之间是相互独立的,当一个多种操作。一般情况下,线程之间是相互独立的,当一个线程发生错误的时候,并不一定会导致整个进程的崩溃线程发生错误的时候,并不一定会导致整个进程的崩溃8服务服务一个进程当以服务的方式工作的时候,它将在后台工作,一个进程当以服务的方式工作的时候,它将在后台工作,Windows 9x下不会出现在进程列表中,但是,在下不会出现在进程列表中,但是,在Windows NT/2000下,仍然会显示在进程列表中,并且可下,仍然会显示在进程列表中,并且可以通过服务管理器检查任何的服务程序是否被启动运行
22、以通过服务管理器检查任何的服务程序是否被启动运行7.4.3 木马的伪隐藏技术木马的伪隐藏技术u伪隐藏与真隐藏伪隐藏与真隐藏8隐藏木马的服务器端,可以伪隐藏,也可以是真隐藏隐藏木马的服务器端,可以伪隐藏,也可以是真隐藏伪隐藏伪隐藏 指程序的进程仍然存在,只不过是让他消失在进程列指程序的进程仍然存在,只不过是让他消失在进程列表中表中真隐藏真隐藏 程序彻底地消失,不是以一个进程或者服务的方式工程序彻底地消失,不是以一个进程或者服务的方式工作作8伪隐藏的方法伪隐藏的方法把木马服务器端的程序注册为一个服务就可以从进程列表把木马服务器端的程序注册为一个服务就可以从进程列表中消失,因为系统不认为它是一个进程
23、。但是,这种方法中消失,因为系统不认为它是一个进程。但是,这种方法只适用于只适用于Windows 9x的系统,对于的系统,对于Windows NT、Windows 2000等,通过服务管理器,照样会发现在系统中等,通过服务管理器,照样会发现在系统中注册过的服务注册过的服务7.4.3 木马的伪隐藏技术木马的伪隐藏技术 Windows NT/2000下的伪隐藏下的伪隐藏 API的拦截技术,也称作进程欺骗技术。在的拦截技术,也称作进程欺骗技术。在Windows中有多种方法能够看到进程的存在中有多种方法能够看到进程的存在:PSAPI(Process Status API)、)、PDH(Performa
24、nce Data Helper)、)、ToolHelp API。如果能够欺骗用户或入侵检测软件用来查看。如果能够欺骗用户或入侵检测软件用来查看进程的函数进程的函数(例如截获相应的例如截获相应的API调用,替换返调用,替换返回的数据回的数据),就完全能实现进程隐藏,就完全能实现进程隐藏 例如,通过建立一个后台的系统钩子,拦截例如,通过建立一个后台的系统钩子,拦截PSAPI的的EnumProcessModules等相关的函等相关的函数来实现对进程和服务的遍历调用的控制,当数来实现对进程和服务的遍历调用的控制,当检测到进程检测到进程ID(PID)为木马程序的服务器端进为木马程序的服务器端进程的时候直
25、接跳过,这样就实现了进程的隐藏程的时候直接跳过,这样就实现了进程的隐藏7.4.3 木马的伪隐藏技术木马的伪隐藏技术8 通过注册服务程序,实现进程伪隐藏通过注册服务程序,实现进程伪隐藏WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int)WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) try try DWORD dwVersion = GetVersion(); / DWORD dwVersion = GetVersion(); /取得取得WindowsWindows的版本号的版本号 if (dwVers
26、ion = 0 x80000000) / Windows 9xif (dwVersion = 0 x80000000) / Windows 9x隐藏进程列表隐藏进程列表 int (CALLBACK int (CALLBACK * *rsp)(DWORD,DWORD);rsp)(DWORD,DWORD); HINSTANCE dll=LoadLibrary(KERNEL32.DLL);/ HINSTANCE dll=LoadLibrary(KERNEL32.DLL);/装入装入KERNEL32.DLLKERNEL32.DLL / /找到找到RegisterServiceProcessRegist
27、erServiceProcess的入口的入口: : rsp=(int(CALLBACK rsp=(int(CALLBACK * *)(DWORD,DWORD)GetProcAddress(dll,)(DWORD,DWORD)GetProcAddress(dll, RegisterServiceProcess); RegisterServiceProcess); rsp(NULL,1); / rsp(NULL,1); /注册服务注册服务 FreeLibrary(dll); /FreeLibrary(dll); /释放释放DLLDLL模块模块 catch (Exception &exception
28、) catch (Exception &exception) / /处理异常事件处理异常事件 return 0; return 0; 7.4.4 木马的真隐藏技术木马的真隐藏技术u 真隐藏则是让程序彻底地消失,不是以一个进程或真隐藏则是让程序彻底地消失,不是以一个进程或者服务的方式工作者服务的方式工作u 当进程为真隐藏的时候,那么这个木马服务器运行当进程为真隐藏的时候,那么这个木马服务器运行之后,就不应该具备一般进程的表现,也不应该具之后,就不应该具备一般进程的表现,也不应该具备服务的表现,也就是说,完全溶进了系统的内核备服务的表现,也就是说,完全溶进了系统的内核8 不把木马作为一个应用程序,
29、而把它作为一个线不把木马作为一个应用程序,而把它作为一个线程、一个其他应用程序的线程,将其注入到其他程、一个其他应用程序的线程,将其注入到其他应用程序的地址空间,而这个应用程序对于系统应用程序的地址空间,而这个应用程序对于系统来说,是一个必不可少、绝对安全的程序,这样来说,是一个必不可少、绝对安全的程序,这样,就达到了彻底隐藏的效果,这样的结果,增加,就达到了彻底隐藏的效果,这样的结果,增加了查杀木马的难度了查杀木马的难度7.4.4 木马的真隐藏技术木马的真隐藏技术u利用利用DLL实现简单隐藏实现简单隐藏8假设编写了一个木马假设编写了一个木马DLL,并且通过别的进程来运行它,并且通过别的进程来
30、运行它,那么无论是入侵检测软件还是进程列表中,都只会出现该那么无论是入侵检测软件还是进程列表中,都只会出现该进程而并不会出现该木马进程而并不会出现该木马DLL8如果该进程是可信进程如果该进程是可信进程(如资源管理器如资源管理器Explorer.exe),那,那么木马么木马DLL作为该进程的一部分,也将成为被信赖的一员作为该进程的一部分,也将成为被信赖的一员而为所欲为而为所欲为8运行运行DLL文件最简单的方法是利用文件最简单的方法是利用RunDLL32.exeRundll32.exe MyDll MyFunc8如果在如果在MyDll.DLL的的MyFunc函数中实现了木马的功能,函数中实现了木马
31、的功能,在系统管理员看来,进程列表中增加的是在系统管理员看来,进程列表中增加的是Rundll32.exe而而并不是木马文件,这样也是木马的一种简易欺骗和自我保并不是木马文件,这样也是木马的一种简易欺骗和自我保护方法护方法7.4.4 木马的真隐藏技术木马的真隐藏技术uDLL木马木马8使用使用RunDLL32的方法进行进程隐藏是简易的,但非常容的方法进行进程隐藏是简易的,但非常容易被识破易被识破8比较高级的方法是使用比较高级的方法是使用DLL木马木马工作原理是替换常用的工作原理是替换常用的DLL文件,截获并处理特定的消息文件,截获并处理特定的消息,将正常的调用转发给原,将正常的调用转发给原DLL
32、例如,例如,Windows的的Socket 1.x的函数都存放在的函数都存放在wsock32.dll中,可以写一个中,可以写一个wsock32.dll文件,替换文件,替换原先的原先的wsock32.dll(将其重命名为将其重命名为wsockold.dll,完全,完全实现原实现原DLL的功能是比较麻烦的事情,一般也没这个必的功能是比较麻烦的事情,一般也没这个必要要) DLL木马木马wsock32.dll只做两件事:一是如果遇到不认只做两件事:一是如果遇到不认识的调用,就直接转发给识的调用,就直接转发给wsockold.dll(使用函数转发使用函数转发器器forward);二是遇到特殊的请求;二是
33、遇到特殊的请求(事先约定的事先约定的)就解码就解码并处理。这样,理论上只要木马编写者通过并处理。这样,理论上只要木马编写者通过Socket远远程输入一定的暗号,就可以控制程输入一定的暗号,就可以控制wsock32.dll(木马木马DLL)做任何操作做任何操作7.4.4 木马的真隐藏技术木马的真隐藏技术DLL木马技术是比较古老的技术,因此微软也对此做了相木马技术是比较古老的技术,因此微软也对此做了相当的防范当的防范 在在Windows 2000的的system32目录下有一个目录下有一个dllcache目录,一旦操作系统发现被保护的目录,一旦操作系统发现被保护的DLL文件被篡改文件被篡改(利利用
34、数字签名技术用数字签名技术),就会自动从,就会自动从dllcache中恢复该文件中恢复该文件 这个方法也不能算是这个方法也不能算是DLL木马的最佳选择木马的最佳选择8采用动态嵌入技术的采用动态嵌入技术的DLL木马木马DLL木马的最高境界是动态嵌入技术木马的最高境界是动态嵌入技术动态嵌入技术是指将自己的代码嵌入正在运行的进程中的动态嵌入技术是指将自己的代码嵌入正在运行的进程中的技术。技术。Windows系统中的每个进程都有自己的私有内存空系统中的每个进程都有自己的私有内存空间,一般不允许别的进程对这个私有空间进行操作,但是间,一般不允许别的进程对这个私有空间进行操作,但是实际上,仍然可以利用种种
35、方法进入并操作进程的私有内实际上,仍然可以利用种种方法进入并操作进程的私有内存。在多种动态嵌入技术存。在多种动态嵌入技术(窗口钩子即窗口钩子即Hook函数、挂接函数、挂接API、远程线程、远程线程)中,常用的是远程线程技术中,常用的是远程线程技术7.4.4 木马的真隐藏技术木马的真隐藏技术 在进程中,可以通过在进程中,可以通过CreateThread函数创建线程函数创建线程 通过通过CreateRemoteThread也同样可以在另一个也同样可以在另一个进程内创建新线程,被创建的远程线程同样可以进程内创建新线程,被创建的远程线程同样可以共享远程进程的地址空间共享远程进程的地址空间 创建一个远程
36、线程,进入远程进程的内存地址空创建一个远程线程,进入远程进程的内存地址空间,就拥有了该远程进程的权限,可以启动一个间,就拥有了该远程进程的权限,可以启动一个DLL木马,甚至随意篡改该进程的数据木马,甚至随意篡改该进程的数据7.4.4 木马的真隐藏技术木马的真隐藏技术u动态嵌入的实现步骤动态嵌入的实现步骤8通过通过OpenProcess 函数打开试图嵌入的进程函数打开试图嵌入的进程因为需要写入远程进程的内存地址空间,所以必须申请足因为需要写入远程进程的内存地址空间,所以必须申请足够的权限,包括远程创建线程、远程够的权限,包括远程创建线程、远程VM操作、远程操作、远程VM写写权限权限8为为Load
37、LibraryW函数线程启动函数线程启动DLL木马准备参数木马准备参数LoadLibraryW函数是在函数是在kernel32.dll中定义的一个功能函中定义的一个功能函数,用于加载数,用于加载DLL文件,它只有一个参数,就是文件,它只有一个参数,就是DLL文件文件的绝对路径名的绝对路径名(也就是木马也就是木马DLL文件的全路径文件名文件的全路径文件名)。由于。由于木马木马DLL是在远程进程内调用的,所以还需要将这个文件是在远程进程内调用的,所以还需要将这个文件名复制到远程地址空间名复制到远程地址空间8计算计算LoadLibraryW的入口地址,启动远程线程的入口地址,启动远程线程LoadLi
38、braryW,通过远程线程调用木马,通过远程线程调用木马DLL7.4.4 木马的真隐藏技术木马的真隐藏技术u 可以用远程线程技术启动木马可以用远程线程技术启动木马DLL,也可以事先将,也可以事先将一段代码复制到远程进程的内存空间,然后通过远一段代码复制到远程进程的内存空间,然后通过远程线程起动这段代码程线程起动这段代码u 无论是采取哪种方式,都是让木马的核心代码运行无论是采取哪种方式,都是让木马的核心代码运行于别的进程的内存空间,这样不仅能很好地隐藏自于别的进程的内存空间,这样不仅能很好地隐藏自己,也能更好地保护自己己,也能更好地保护自己u 此时的木马,不仅欺骗、进入用户的计算机,甚至此时的木
39、马,不仅欺骗、进入用户的计算机,甚至进入了用户进程的内部。从某种意义上说,这种木进入了用户进程的内部。从某种意义上说,这种木马已经具备了普通病毒的很多特性,如寄生性马已经具备了普通病毒的很多特性,如寄生性(与与宿主同生共死宿主同生共死)7.4.5 木马的秘密信道技术木马的秘密信道技术u 木马程序的数据传递方法木马程序的数据传递方法8 利用利用TCP、UDP传输数据传输数据 利用利用WinSock与目标机的指定端口建立连接,使与目标机的指定端口建立连接,使用用send和和recv等等API进行数据的传递进行数据的传递 这种方法的隐蔽性比较差,在命令行状态下使用这种方法的隐蔽性比较差,在命令行状态
40、下使用netstat命令,就可以查看到当前的活动命令,就可以查看到当前的活动TCP、UDP连接连接8 攻击者为了不让用户察觉其与木马程序之间的通攻击者为了不让用户察觉其与木马程序之间的通信,经常使用各种协议来建立控制服务端的秘密信,经常使用各种协议来建立控制服务端的秘密通信隧道通信隧道 利用利用ICMP协议建立秘密通道协议建立秘密通道 利用利用HTTP协议建立秘密通道协议建立秘密通道7.4.5 木马的秘密信道技术木马的秘密信道技术u利用利用ICMP协议建立秘密通道协议建立秘密通道8ICMP回显请求回显请求(type=0)和回显应答和回显应答(type=8)报文报文8规范约定规范约定ICMP报文
41、中的标识符和序列号字段由发送端任意报文中的标识符和序列号字段由发送端任意选择,因此在选择,因此在ICMP包中标识符、序列号和选项数据等部分包中标识符、序列号和选项数据等部分都可用来秘密携带信息都可用来秘密携带信息8由于防火墙、入侵检测系统等网络设备通常只检查由于防火墙、入侵检测系统等网络设备通常只检查ICMP报报文的首部,因此使用文的首部,因此使用ICMP建立秘密通道时往往直接把数据建立秘密通道时往往直接把数据放到选项数据中放到选项数据中8这类秘密信道可以实现直接的客户端和服务端通信,具有这类秘密信道可以实现直接的客户端和服务端通信,具有准实时的特点准实时的特点类型(0或8)代码(0)校验和标
42、识符序列号选项数据0 7 8 15 16 317.4.5 木马的秘密信道技术木马的秘密信道技术u 利用利用HTTP协议建立秘密通道协议建立秘密通道8 利用反弹端口型木马的利用反弹端口型木马的“逆向连接逆向连接”技术建立木技术建立木马连接马连接8 是合并端口法是合并端口法 使用特殊的手段,在一个端口上同时绑定两个使用特殊的手段,在一个端口上同时绑定两个TCP或者或者UDP连接,通过把木马端口绑定于特定连接,通过把木马端口绑定于特定的服务端口之上,比如的服务端口之上,比如HTTP的的80端口,使得其端口,使得其秘密通信对防火墙更具迷惑性,从而降低秘密通秘密通信对防火墙更具迷惑性,从而降低秘密通信流
43、量被发现的风险信流量被发现的风险8 使用报文伪装技术建立秘密信道使用报文伪装技术建立秘密信道 将数据插入到将数据插入到HTTP协议报文的一些无用的段内协议报文的一些无用的段内,然后利用建立,然后利用建立TCP连接的三次握手规则进行秘连接的三次握手规则进行秘密通信密通信7.4.6 木马的远程监控技术木马的远程监控技术u 木马的远程监控技术,包括木马的远程监控技术,包括8 远程监视技术远程监视技术 对服务端计算机的监视,包括对鼠标、键盘以及对服务端计算机的监视,包括对鼠标、键盘以及屏幕显示、甚至网络流量流向的监视,也包括对屏幕显示、甚至网络流量流向的监视,也包括对服务端计算机系统信息服务端计算机系
44、统信息(如磁盘信息、操作系统信如磁盘信息、操作系统信息、硬件信息息、硬件信息)的搜集的搜集8 远程控制技术远程控制技术 远程控制则是攻击者控制服务端计算机按照自己远程控制则是攻击者控制服务端计算机按照自己的意愿,运行某程序或关闭某服务,包括控制服的意愿,运行某程序或关闭某服务,包括控制服务端计算机的鼠标、键盘、操作系统、文件系统务端计算机的鼠标、键盘、操作系统、文件系统,或者让其启动,或者让其启动/停止某种服务程序,甚至关闭服停止某种服务程序,甚至关闭服务端计算机务端计算机8 远程监控功能是木马最主要的功能,也是木马的远程监控功能是木马最主要的功能,也是木马的最终目的最终目的7.5.1 中木马
45、后常出现的状况中木马后常出现的状况u发现一下异常,应当检查计算机是否感染了木马发现一下异常,应当检查计算机是否感染了木马8当浏览一个网站时,弹出来一些广告窗口是很正常的事情当浏览一个网站时,弹出来一些广告窗口是很正常的事情,可是如果用户根本没有打开浏览器,而浏览器突然自己,可是如果用户根本没有打开浏览器,而浏览器突然自己打开,并且进入某个网站,那么,就要怀疑是否中了木马打开,并且进入某个网站,那么,就要怀疑是否中了木马8正在操作计算机,突然一个警告框或者是询问框弹出来,正在操作计算机,突然一个警告框或者是询问框弹出来,问一些用户从来没有在计算机上接触过的问题问一些用户从来没有在计算机上接触过的
46、问题8Windows系统配置经常被莫名其妙地自动更改系统配置经常被莫名其妙地自动更改8总是无缘无故地读硬盘,软驱灯经常自己亮起,网络连接总是无缘无故地读硬盘,软驱灯经常自己亮起,网络连接及鼠标屏幕出现异常现象及鼠标屏幕出现异常现象8计算机意外地打开了某个端口,用嗅探器发现存在异常的计算机意外地打开了某个端口,用嗅探器发现存在异常的网络数据传输网络数据传输8拨号上网用户离线操作计算机时,突然弹出拨号对话框拨号上网用户离线操作计算机时,突然弹出拨号对话框7.5.2 检测和清除木马的方法检测和清除木马的方法u 反击恶意代码,最佳的武器是最新的、成熟的病毒反击恶意代码,最佳的武器是最新的、成熟的病毒扫
47、描工具扫描工具u 扫描工具能够检测出大多数特洛伊木马,并尽可能扫描工具能够检测出大多数特洛伊木马,并尽可能地使清理过程自动化地使清理过程自动化u 许多管理员过分依赖某些专门针对特洛伊木马的工许多管理员过分依赖某些专门针对特洛伊木马的工具来检测和清除木马,但某些工具的效果令人怀疑具来检测和清除木马,但某些工具的效果令人怀疑,至少不值得完全信任,更何况任何工具软件在防,至少不值得完全信任,更何况任何工具软件在防治新木马时都存在一定的滞后性治新木马时都存在一定的滞后性7.5.2 检测和清除木马的方法检测和清除木马的方法u 检测和清除木马的一般流程检测和清除木马的一般流程(对于动态嵌入式对于动态嵌入式
48、DLL木马,一般不是查看端口,而是查看内存模块木马,一般不是查看端口,而是查看内存模块)8 特洛伊木马入侵的一个明显证据是受害计算机上特洛伊木马入侵的一个明显证据是受害计算机上意外地打开了某个端口意外地打开了某个端口查看端口断开网络连接查找并停止木马进程、线程清除木马启动项及木马文件用用Netstat检测检测BO木马木马7.5.2 检测和清除木马的方法检测和清除木马的方法8Windows XP的的Netstat工具提供了工具提供了一个新的一个新的-o选项,能够选项,能够显示出正在显示出正在使用端口的使用端口的程序或服务程序或服务的进程标识的进程标识符符(PID)。有。有了了PID,用任,用任务
49、管理器就务管理器就可以方便地可以方便地根据根据PID找到找到对应的程序对应的程序,以便终止,以便终止之之进程标识符进程标识符PID与映射名称与映射名称7.5.3 木马木马“广外女生广外女生”的分析和清除的分析和清除u木马木马“广外女生广外女生”简介简介8是广东外语外贸大学是广东外语外贸大学“广外女生广外女生”网络小组的作品,它可网络小组的作品,它可以运行于以运行于Windows 98、Windows 98SE、Windows ME、Windows NT、Windows 2000或已经安装或已经安装Winsock2.0的的Windows 95/97上上8该木马把启动项设在该木马把启动项设在HKL
50、M SOFTWARE Classesexefileshellopencommand下,这个注册表下,这个注册表项的作用是定义运行可执行文件的格式项的作用是定义运行可执行文件的格式8木马将木马将HKLM SOFTWARE Classesexefileshellopencommand下的键值由原来下的键值由原来的的“%1 %*”修改为修改为“C:WINDOWSSystem32DIAGCFG.EXE %1 %*”,包含了木马程序包含了木马程序DIAGCFG.EXE,此后每次再运行任何可,此后每次再运行任何可执行文件时都要先运行执行文件时都要先运行DIAGCFG.EXE,即启动木马,即启动木马7.5.
51、3 木马木马“广外女生广外女生”的分析和清除的分析和清除u 木马端口木马端口8 Fport是是FoundStone出品的一个用来列出系统中出品的一个用来列出系统中所有打开的所有打开的TCP/IP和和UDP端口,以及它们对应应端口,以及它们对应应用程序的完整路径、用程序的完整路径、PID标识、进程名称等信息标识、进程名称等信息的软件。在命令行中运行的软件。在命令行中运行fport.exe,可以看到:,可以看到:E:ToolsFport-2.0fportE:ToolsFport-2.0fportPid Process Port Proto PathPid Process Port Proto Path584 tcpsvcs - 7 TCP C:WINDOWSSystem32tcpsvcs.exe584 tcpsvcs - 7 TCP C:WINDOW
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 潍坊学院《食品酶学》2023-2024学年第二学期期末试卷
- 模电 7-信号的运算和处理学习资料
- 江苏省苏州市常熟一中达标名校2025届第二学期期末统一考试(数学试题理)试题含解析
- 六安职业技术学院《西方文化与近代中国》2023-2024学年第一学期期末试卷
- 南通职业大学《行为矫正》2023-2024学年第一学期期末试卷
- 辽宁传媒学院《分析代数方法选讲》2023-2024学年第一学期期末试卷
- 二零二五广告合同范例大全
- 展会知识产权保护合同范例
- 委托代理采购协议书二零二五年
- 房地产项目顾问合同书二零二五年
- 二年级下册科学不断发展的人工产品鄂教版课件
- 小学部编版六年级下册道德与法治《4、地球-我们的家园》第一课时说课稿
- DB11T 1340-2022 居住建筑节能工程施工质量验收规程
- 保险市场调查与分析实训三任务一2.3.1任务一运用Excel整理市场调查问卷数据
- 中央空调(多联机)施工方案
- PKPM砖混结构抗震及其他计算全攻略
- “育鲲”轮转叶式舵机工作原理和电气控制以及故障分析
- 流动资金自动测算表(内自带计算公式)
- 最新.尔雅批判与创意思考--冯林答案
- 宿州光伏玻璃项目可行性研究报告(范文模板)
- 10KV变电站施工方案
评论
0/150
提交评论