木马病毒(你知道木马病毒的原理吗?)
木马原理基础知识
在介绍木马的原理之前,有一些木马的基础知识要提前说明,因为下面有很多地方要提到。
(资料图)
一个完整的木马系统由硬件部分、软件部分和特定连接部分组成。
(1)硬件:建立木马连接所必需的硬件实体。控制端:远程控制服务器的一方。服务器:被控制端远程控制的一方。互联网:控制端远程控制服务器端并传输数据的网络载体。
(2)软件部分:遥控所必需的软件程序。控制终端程序:控制终端用来远程控制服务器终端的程序。木马程序:潜入服务器获取其操作权限的程序。木马配置程序:设置端口号、触发条件、木马名称等的程序。的木马程序,使其在服务器中更加隐蔽。
(3)具体连接部分:通过互联网在服务器和控制器之间建立木马通道的必要要素。控件IP,服务器IP:即控件和服务器的网络地址,也是木马传输数据的目的地。控制端口,木马端口:即控制端和服务器端的数据入口,通过它数据可以直接到达控制端程序或木马程序。
木马
利用木马作为网络入侵的黑客工具,在过程中大致可以分为六个步骤(详见下图)。这里我们就按照这六个步骤来阐述木马的攻击原理。
1.配置特洛伊木马
一般来说,设计良好的木马都有木马配置程序。从具体的配置内容来看,主要是实现以下两个功能:
(1)木马伪装:木马配置程序会使用多种伪装方式,如修改图标、绑定文件、自定义端口、自毁等。,为了在服务器端尽可能的隐藏木马。我们将在“传播木马”一节中详细介绍。
(2)信息反馈:木马配置程序会设置信息反馈的方式或地址,如设置邮箱、IRC号、ICO号等。信息反馈。我们将在“信息反馈”这一节中详细介绍。二。传播特洛伊木马
(1)传播方式:
木马的传播方式主要有两种:一种是通过电子邮件,控制端将木马程序以附件的形式剪辑后发送出去,只要打开附件系统,收件人就会感染木马;另一个是软件下载。一些不正规网站打着提供软件下载的名义,将木马绑定到软件安装程序中。下载后,这些程序一运行就会自动安装木马。
(2)红豆博客伪装:
鉴于木马的危害性,很多人还是有一些木马知识的,对木马的传播有一定的抑制作用,这是木马设计者不愿意看到的。因此,他们开发了各种伪装木马的功能,以降低用户的警惕性,欺骗用户。
(a)修改图标
当你在电子邮件的附件中看到这个图标时,你会认为它是一个文本文件吗?但是我要告诉你,它可能是一个木马程序。现在有木马可以把木马服务器程序的图标改成HTML、TXT、ZIP等文件的图标,相当混乱。不过目前提供这个功能的木马很少,这种伪装也不是无懈可击,不用整天提心吊胆。
(2)捆绑文档
这种伪装意味着特洛伊木马与安装程序捆绑在一起。安装程序运行时,木马会在用户不知情的情况下潜入系统。至于捆绑的文件,一般都是可执行文件(也就是EXE、COM之类的文件)。
(3)错误显示
稍微有点木马知识的人都知道,如果打开一个文件,任何一个红豆博客都没有反应,那很可能就是木马程序。木马的设计者也意识到了这个缺陷,所以有些木马提供了一个叫错误显示的功能。服务端用户打开Muma程序,会弹出如下图所示的错误提示框(这当然是假的)。错误内容可以自由定义,大部分都会定制成“文件损坏,无法打开!”这样的信息,当服务器用户信以为真的时候,木马已经悄悄入侵了系统。
(4)海关口岸
很多老式的木马端口都是固定的,这给判断一个木马是否被感染带来了方便。只要检查特定的端口,就知道感染了什么木马。所以现在很多新型木马都加入了自定义端口的功能。控制端用户可以选择1024到65535之间的任意端口作为木马端口(一般不选择1024以下的端口),这给判断感染木马的类型带来了麻烦。
(5)自毁
这个功能是为了弥补木马的一个缺陷。我们知道,当服务器用户打开含有木马的文件时,木马会将自身复制到WINDOWS系统文件夹(C:\WINDOWS或C:\WINDOWS\SYSTEM目录)。一般来说,原木马文件和系统文件夹中的木马文件大小相同(捆绑文件的木马除外)。所以,中了木马的朋友只需要在最近收到的信件和下载的软件中找到原木马文件,然后根据原木马的大小去系统文件夹中找到相同大小的文件即可。木马的自毁功能意味着木马安装后会自动销毁原有的木马文件,因此服务器用户很难找到木马的来源,没有查杀木马的工具帮助也很难删除木马。
(6)木马改名。
安装在系统文件夹中的木马文件名一般都是固定的,所以只要根据一些查杀木马的文章,在系统文件夹中寻找具体的文件,就可以确定木马在什么地方。所以现在很多木马都允许控制端的用户自由定制已安装木马的文件名,这就很难判断被感染木马的类型。3.用户运行木马或与木马捆绑的程序后,木马会自动安装。先将自身复制到WINDOWS系统文件夹(C:\WINDOWS或C:\WINDOWS\SYSTEM目录),然后在注册表、启动组、非启动组中设置木马的触发条件,这样就完成了木马的安装。安装后,就可以启动木马了。具体流程见下图:
(1)触发条件激活木马触发条件是指启动木马的条件,一般出现在以下八个地方:
1.注册表:用Run和RunServices打开HKEY _ local _ machine \ software \ Microsoft \ windows \ current version \下的5个主键,寻找可能是启动木马的键值。
2.win.ini:C:\ Windows目录下有一个配置文件win . ini,以文本形式打开。[windows]字段中有启动命令load=和run=,通常为空白色。如果有启动程序,可能是木马。3.SYSTEM.INI:C:\WINDOWS红豆博客记录了一个配置文件SYSTEM.INI,以文本方式打开。[386Enh]、[mic]、[drivers32]中都有命令行,在其中寻找木马的启动命令。
4.Autoexec.bat和config . sys:c盘根目录下的这两个文件也可以启动木马。但这种加载方式一般需要控件终端用户与服务器建立连接,然后将同名文件上传到服务器,以覆盖这两个文件。
5.*.INI:即应用程序的启动配置文件。利用这些文件可以启动程序的特性,控制端将带有木马启动命令的同名文件上传到服务器端,以覆盖同名文件,从而达到启动木马的目的。
6.注册表:打开HKEY _类_根\文件类型\外壳\打开\命令主键,并查看其键值。比如国内的木马“冰川”就是修改HKEY _类_根\ txtfile \ shell \ open \ command下的键值,把“C :\WINDOWS \NOTEPAD。EXE %1”转换为“C:\ windows \ system \ syxxxplr . EXE % 1”。还要注意的是,不仅是TXT文件,修改HTML、EXE、ZIP等文件的启动命令的键值,也可以启动木马。区别只是主键“文件类型”的区别。TXT是TXTFILE,ZIP是WINZIP。你可以试着去找。
7.绑定文件:为了实现这个触发条件,控制端和服务器通过木马建立了连接,然后控制端用户用工具软件将木马文件和一个应用程序绑定,然后上传到服务器覆盖原文件,这样即使木马被删除,只要运行捆绑木马的应用程序,木马就会被重新安装。
8.启动菜单:“启动-程序-开始”选项下也可能存在木马触发条件。(2)木马激活后,进入内存,打开事先定义的木马端口,准备与控制终端建立连接。此时,服务器最终用户可以在MS-DOS模式下键入NETSTAT -AN来检查端口状态。一般在个人电脑的离线状态下,是没有端口打开的。如果有端口打开,要注意是否感染了木马。下面是电脑感染木马后用NETSTAT命令检查端口的两个例子:①是服务器与控制器连接建立时的显示状态,②是服务器与控制器连接尚未建立时的显示状态。在上网的过程中,必须打开一些端口,用于下载软件、发送信件、在线聊天等。以下是一些常用的端口:
(1)1到1024之间的端口:这些端口称为保留端口,专门用于一些外部通信程序,比如使用21的FTP、使用25的SMTP、使用110的POP3等。很少有木马会用预留端口作为木马端口。
(2)1025以上的连续端口:在互联网上浏览网站时,浏览器会打开多个连续端口,将文字和图片下载到本地硬盘。这些端口都是1025以上的连续端口。
(3)端口4000:这是OICQ的通信端口。
(4)端口6667:这是IRC的通讯端口。除了以上端口,基本可以排除。如果发现其他端口打开,尤其是数值较大的端口,就要怀疑是否感染了木马。当然,如果木马有自定义端口的功能,任何端口都可能是木马端口。四。信息泄露:
一般来说,设计良好的木马都有信息反馈机制。所谓信息反馈机制,是指木马安装成功后,会收集服务器的一些软硬件信息,并通过电子邮件、IRC或ICO告知控制端用户。下图是典型的信息反馈邮件。
从这封邮件中,我们可以知道服务器的一些软硬件信息,包括使用的操作系统、系统目录、硬盘分区状态、系统密码等。在这些信息中,最重要的是服务器IP,因为只有获得这个参数,控制器才能与服务器建立连接。我们将在下一节解释具体的连接方法。5.建立连接:在这一节,我们将解释木马连接是如何建立的。木马连接的建立首先要满足两个条件:一是服务器已经安装了木马程序;第二,控制端和服务器端要在线。在此基础上,控制端可以通过木马端口与服务端建立连接。为了便于解释,我们用插图的形式来解释。如上图所示,A机是控制端,B机是服务器端。A机要和B机建立连接,必须知道B机的木马端口和IP地址,由于木马端口是A机事先设置好的,是已知项,所以最重要的是如何获取B机的IP地址,获取B机的IP地址主要有两种方式:信息反馈和IP扫描。前一种在上一节已经介绍过了,这里就不赘述了。我们将重点讨论IP扫描。因为B机安装了木马程序,其木马端口7626是开放的,所以现在A机只需要扫描IP地址段中端口7626开放的主机。例如,图中机器B的IP地址是202.102.47.56。当机器A扫描这个IP并发现它的端口7626是开放的,那么这个IP将被添加到列表中。此时,A机可以通过木马控制程序向B机发送连接信号,B机中的木马程序收到信号后会立即响应。当A机收到响应信号后,打开随机端口1031与B机的木马端口7626建立连接,这时木马连接就真正建立了。值得一提的是,扫描整个IP地址段显然是费时费力的。一般来说,控制终端首先通过信息反馈获得服务器的IP地址。因为拨号上网的IP是动态的,也就是用户每次上网的IP是不一样的,但是这个IP是在一定范围内变化的。如图,B机的IP是202.102.47.56,所以B机上网的IP范围是202.102.000.000-202。6.远程控制:木马连接建立后,控制端口和木马端口之间会出现一个通道。如下图所示,控制端的控制程序可以通过这个通道与服务器上的木马程序取得联系,通过木马程序远程控制服务器。下面介绍一下控制端可以享有的具体控制权,远比你想象的要大。
(1)窃取密码:所有明文,*形式或缓存在缓存中的密码都可以被木马检测到。另外,很多木马还提供了按键记录功能,会记录服务器的每一次按键,所以一旦有木马入侵,密码就很容易被窃取。
(2)文件操作:控制终端可以远程控制删除、创建、修改、上传、下载、运行、改变服务器上文件的属性,基本涵盖了WINDOWS平台上所有的文件操作功能。
(3)修改注册表:控制端可以任意修改服务器注册表,包括删除、创建或修改主键、子项和键值。通过该功能,控制终端可以禁止使用服务器上的软驱和光驱,锁定服务器上的注册表,将服务器上的木马触发条件设置得更加隐蔽。
(4)系统操作:此内容包括重启或关闭服务器操作系统、断开服务器网络连接、控制服务器鼠标和键盘、监控服务器桌面操作、检查服务器进程等。控制器甚至可以随时向服务器发送消息。想象一下,当服务器桌面上弹出一段话,并不可怕。