木马程序的发展、分类和功能,木马程序

木马的发展与分类

木马是一种后门程序,黑客可以利用其盗取用户的隐私信息,甚至远程控制用户的计算机。木马全称特洛伊木马,其名称源于古希腊神话中的《特洛伊木马记》。在公元前12世纪,希腊向特洛伊城宣战,交战了10年也没有取得胜利。最后,希腊军队佯装撤退,并在特洛伊城外留下很多巨大的木马。这些木马是空心的,里面藏了希腊最好的战士。在希腊人佯装撤走后,特洛伊人把这些木马作为战利品拉进了城。当晚,希腊战士从木马中出来并与城外的希腊军队里应外合攻下特洛伊城,这就是特洛伊木马名称的由来。因此,特洛伊木马一般会伪装成合法程序植入系统,进而对系统安全构成威胁。完整的木马程序一般由两部分组成,一是服务器被控制端程序,二是客户端控制端程序。黑客主要利用植入目标主机的客户端控制端程序来控制目标主机。

(1)木马技术的发展

从木马技术的发展来看,其基本上可分为4代。

第1代木马功能单一,只是实现简单的密码窃取与发送等,在隐藏和通信方面均无特别之处。

第2代木马在隐藏、自启动和操纵服务器等方面有了很大进步。国外具有代表性的第2代木马有BOZ000和Sub7。冰河可以说是国内木马的典型代表之一,它可以对注册表进行操作以实现自动运行,并能通过将程序设置为系统进程来进行伪装隐藏。

第3代木马在数据传递技术上有了根本性的进步,出现了ICMP等特殊报文类型传递数据的木马,增加了查杀的难度。这一代木马在进程隐藏方面也做了很大的改进,并采用了内核插入式的嵌入方式,利用远程插入线程技术嵌入DLL线程,实现木马程序的隐藏,达到了良好的隐藏效果。

第4代木马实现了与病毒紧密结合,利用操作系统漏洞,直接实现感染传播的目的,而不必像以前的木马那样需要欺骗用户主动激活。具有代表性的等4代木马有最近新出现的磁碟机和机器狗木马等。

(2)木马程序的分类

根据木马程序对计算机的具体动作方式,可以把现在的木马程序分为以下5类。

1)远程控制型

远程控制型木马是现今最广泛的特洛伊木马,这种木马具有远程监控的功能,使用简单,只要被控制主机联入网络并与控制端客户程序建立网络连接,就能使控制者任意访问被控制的计算机。这种木马在控制端的控制下可以在被控主机上做任何事情,如键盘记录、文件上传/下载、屏幕截取、远程执行等。

2)密码发送型

密码发送型木马的目的是找到所有的隐藏密码,并且在用户不知情的情况下把它们发送到指定的邮箱。在大多数情况下,这类木马程序不会在每次Windows系统重启时都自动加载,它们大多数使用25端口发送电子邮件。

3)键盘记录型

键盘记录型木马非常简单,它们只做一件事情,就是记录用户的键盘敲击,并且在LOG文件里进行完整的记录。这种木马程序会随着Windows系统的启动而自动加载,并能感知受害主机在线,且记录每一个用户事件,然后通过邮件或其他方式将用户事件发送给控制者。

4)毁坏型

大部分木马程序只是窃取信息,不做破坏性的事件,但毁坏型木马却以毁坏并且删除文件为己任。它们可以自动删除受控主机上所有的.ini或.exe文件,甚至远程格式化受控主机硬盘,使受控主机上的所有信息都受到破坏。总而言之,该类木马的目标只有一个,就是尽可能地毁坏受感染系统,使其瘫痪。

5)FTP型

FTP型木马会打开被控主机系统的21号端口(FTP服务所使用的默认端口),使每个人都可以用一个FTP客户端程序无需密码就能连接到被控主机系统,进而进行最高权限的文件上传和下载,窃取受害系统中的机密文件。

根据木马的网络连接方向,可以将木马分为以下两类。

正向连接型:发起连接的方向为控制端到被控制端,这种技术被早期的木马广泛采用,其缺点是不能透过防火墙发起连接。

反向连接型:发起连接的方向为被控制端到控制端,其出现主要是为了解决从内向外不能发起连接这一问题。其已经被较新的木马广泛采用。

根据木马使用的架构,木马可分为4类。

C/S架构:这种架构是普通的服务器、客户端的传统架构,一般将客户端作为控制端,服务器端作为被控制端。在编程实现的时候,如果采用反向连接的技术,那么客户端(也就是控制端)就要采用socket编程的服务器端的方法,而服务端(也就是被控制端)就要采用Socket编程的客户端的方法。

B/S架构:这种架构是普通的网页木马所采用的方式。通常在B/S架构下,服务器端被上传了网页木马,控制端可以使用浏览器来访问相应的网页,进而达到对服务器端进行控制的目的。

C/P/S架构:这里的P意为Proxy,也就是在这种架构中使用了代理。当然,为了实现正常的通信,代理也要由木马作者编程实现,进而才能实现一个转换通信。这种架构的出现,主要是为了适应一个内部网络对另外一个内部网络的控制。但是,这种架构的木马目前还没有被发现。

B/S/B架构:这种架构的出现,也是为了适应一个内部网络对另外一个内部网络的控制。当被控制端与控制端都打开浏览器浏览这个服务器上的网页时,一端就变成了控制端,而另一端就变成了被控制端。这种架构的木马已经在国外出现。

根据木马存在的形态的不同,可将木马分为以下几种:

传统EXE程序文件木马:这是最常见、最普通的木马,即在目标计算机中以.exe文件运行的木马。

传统DLL/VXD木马:此类木马自身无法运行,它们须利用系统启动或其他程序来运行,或使用Rundi132.exe来运行。

替换关联式DLL木马:这种木马本质上仍然是DLL木马,但它却会替换某个系统的DLL文件并将它改名。

嵌入式DLL木马:这种木马利用远程缓冲区溢出的入侵方式,从远程将木马代码写入目前正在运行的某个程序的内存中,然后利用更改意外处理的方式来运行木马代码。这种技术在操作上难度较高。

网页木马:即利用脚本等设计的木马。这种木马会利用IE等的漏洞嵌入目标主机,传播范围广。

溢出型木马:即将缓冲区溢出攻击和木马相结合的木马,其实现方式有很多特点和优势,属于一种较新的木马类型。

此外,根据隐藏方式,木马可以分为以下几类:本地文件隐藏、启动隐藏、进程隐藏、通信隐藏、内核模块隐藏和协同隐藏等。隐藏技术是木马的关键技术之一,直接决定木马的生存能力。木马与远程控制程序的主要不同点就在于它的隐蔽性,木马的隐蔽性是木马能否长期存活的关键。

(3)木马的功能

木马的功能可以概括为以下5种。

1)管理远程文件

对被控主机的系统资源进行管理,如复制文件、删除文件、查看文件、以及上传/下载文件等。

2)打开未授权的服务

为远程计算机安装常用的网络服务,令它为黑客或其他非法用户服务。例如,被木马设定为FTP文件服务器后的计算机,可以提供FTP文件传输服务、为客户端打开文件共享服务,这样,黑客就可以轻松获取用户硬盘上的信息。

3)监视远程屏幕

实时截取屏幕图像,可以将截取到的图像另存为图片文件;实时监视远程用户目前正在进行的操作。

4)控制远程计算机

通过命令或远程监视窗口直接控制远程计算机。例如,控制远程计算机执行程序、打开文件或向其他计算机发动攻击等。

5)窃取数据

以窃取数据为目的,本身不破坏计算机的文件和数据,不妨碍系统的正常工作。它以系统使用者很难察觉的方式向外传送数据,典型代表为键盘和鼠标操作记录型木马。
责编AJX

相关推荐

相关文章