详解特洛伊木马(2)
9.捆绑文件
实现这种触发条件首先要控制端和服务端已通过木马建立连接,然后控制端用户用工具软件将木马文件和某一应用程序捆绑在一起,然后上传到服务端覆盖源文件,这样即使木马被删除了,只要运行捆绑了木马的应用程序,木马义会安装上去。绑定到某一应用程序中,如绑定到系统文件,那么每一次Windows启动均会启动木马。
10.反弹端口型木马的主动连接方式
反弹端口型木马我们已经在前面说过了,由于它与一般的木马相反,其服务端 (被控制端)主动与客户端 (控制端)建立连接,并且监听端口一般开在80,所以如果没有合适的工具、丰富的经验真的很难防范。这类木马的典型代表就是网络神偷"。由于这类木马仍然要在注册表中建立键值注册表的变化就不难查到它们。同时,最新的天网防火墙(如我们在第三点中所讲的那样),因此只要留意也可在网络神偷服务端进行主动连接时发现它。
木马的隐藏方式
1.在任务栏里隐藏
这是最基本的隐藏方式。如果在windows的任务栏里出现一个莫名其妙的图标,傻子都会明白是怎么回事。要实现在任务栏中隐藏在编程时是很容易实现的。我们以VB为例。在VB中,只要把from的Visible属性设置为False,ShowInTaskBar设为False程序就不会出现在任务栏里了。
2.在任务管理器里隐藏
查看正在运行的进程最简单的方法就是按下Ctrl+Alt+Del时出现的任务管理器。如果你按下Ctrl+Alt+Del后可以看见一个木马程序在运行,那么这肯定不是什么好木马。所以,木马会千方百计地伪装自己,使自己不出现在任务管理器里。木马发现把自己设为 "系统服务“就可以轻松地骗过去。
因此,希望通过按Ctrl+Alt+Del发现木马是不大现实的。
3.端口
一台机器有65536个端口,你会注意这么多端口么?而木马就很注意你的端口。如果你稍微留意一下,不难发现,大多数木马使用的端口在1024以上,而且呈越来越大的趋势;当然也有占用1024以下端口的木马,但这些端口是常用端口,占用这些端口可能会造成系统不正常,这样的话,木马就会很容易暴露。也许你知道一些木马占用的端口,你或许会经常扫描这些端口,但现在的木马都提供端口修改功能,你有时间扫描65536个端口么?
4.隐藏通讯
隐藏通讯也是木马经常采用的手段之一。任何木马运行后都要和攻击者进行通讯连接,或者通过即时连接,如攻击者通过客户端直接接人被植人木马的主机;或者通过间接通讯。如通过电子邮件的方式,木马把侵入主机的敏感信息送给攻击者。现在大部分木马一般在占领主机后会在1024以上不易发现的高端口上驻留;有一些木马会选择一些常用的端口,如80、23,有一种非常先进的木马还可以做到在占领80HTTP端口后,收到正常的HTTP请求仍然把它交与Web服务器处理,只有收到一些特殊约定的数据包后,才调用木马程序。
5.隐藏隐加载方式
木马加载的方式可以说千奇百怪,无奇不有。但殊途同归,都为了达到一个共同的目的,那就是使你运行木马的服务端程序。如果木马不做任何伪装,就告诉你这是木马,你会运行它才怪呢。而随着网站互动化避程的不断进步,越来越多的东西可以成为木马的传播介质,Java Script、VBScript、ActiveX.XLM....几乎WWW每一个新功能部会导致木马的快速进化。
6.最新隐身技术
在Win9x时代,简单地注册为系统进程就可以从任务栏中消失,可是在Windows2000盛行的今天。这种方法遭到了惨败。注册为系统进程不仅仅能在任务栏中看到,而且可以直接在Services中直接控制停止。运行(太搞笑了,木马被客户端控制)。使用隐藏窗体或控制台的方法也不能欺骗无所不见的Admlin大人(要知道,在NT下,Administrator是可以看见所有进程的)。在研究了其他软件的长处之后,木马发现,Windows下的中文汉化软件采用的陷阱技术非常适合木马的使用。
这是一种更新、更隐蔽的方法。通过修改虚拟设备驱动程序(VXD)或修改动态遵掇库 (DLL)来加载木马。这种方法与一般方法不同,它基本上摆脱了原有的木马模式---监听端口,而采用替代系统功能的方法(改写vxd或DLL文件),木马会将修改后的DLL替换系统已知的DLL,并对所有的函数调用进行过滤。对于常用的调用,使用函数转发器直接转发给被替换的系统DLL,对于一些相应的操作。实际上。这样的事先约定好的特种情况,DLL会执行一般只是使用DLL进行监听,一旦发现控制端的请求就激活自身,绑在一个进程上进行正常的木马操作。这样做的好处是没有增加新的文件,不需要打开新的端口,没有新的进程,使用常规的方法监测不到它。在往常运行时,木马几乎没有任何瘫状,且木马的控制端向被控制端发出特定的信息后,隐藏的程序就立即开始运作。
特洛伊木马具有的特性
1.包含干正常程序中,当用户执行正常程序时,启动自身,在用户难以察觉的情况下,完成一些危害用户的操作,具有隐蔽性。
由于木马所从事的是 "地下工作",因此它必须隐藏起来,它会想尽一切办法不让你发现它。很多人对木马和远程控制软件有点分不清,还是让我们举个例子来说吧。我们进行局域网间通讯的常用软件PCanywhere大家一定不陌生吧?我们都知道它是一款远程控制软件。PCanywhere比在服务器端运行时,客户端与服务器端连接成功后,客户端机上会出现很醒目的提示标志;而木马类的软件的服务器端在运行的时候应用各种手段隐藏自己,不可能出现任何明显的标志。木马开发者早就想到了可能暴露木马踪迹的问题,把它们隐藏起来了。例如大家所熟悉木马修改注册表和而文件以便机器在下一次启动后仍能载入木马程式,它不是自己生成一个启动程序,而是依附在其他程序之中。有些木马把服务器端和正常程序绑定成一个程序的软件,叫做exe-binder绑定程序,可以让人在使用绑定的程序时,木马也入侵了系统。甚至有个别木马程序能把它自身的exe文件和服务端的图片文件绑定,在你看图片的时候,木马便侵人了你的系统。它的隐蔽性主要体现在以下两个方面:
(1)不产生图标
木马虽然在你系统启动时会自动运行,但它不会在 "任务栏"中产生一个图标,这是容易理解的,不然的话,你看到任务栏中出现一个来历不明的图标,你不起疑心才怪呢!
(2)木马程序自动在任务管理器中隐藏,并以"系统服务"的方式欺骗操作系统。
2.具有自动运行性。
木马为了控制服务端。它必须在系统启动时即跟随启动,所以它必须潜人在你的启动配置文件中,如win.ini、system.ini、winstart.bat以及启动组等文件之中。
3.包含具有未公开并且可能产生危险后果的功能的程序。
4.具备自动恢复功能。
现在很多的木马程序中的功能模块巴不再由单一的文件组成,而是具有多重备份,可以相互恢复。当你删除了其中的一个,以为万事大吉又运行了其他程序的时候,谁知它又悄然出现。像幽灵一样,防不胜防。
5.能自动打开特别的端口。
木马程序潜人你的电脑之中的目的主要不是为了破坏你的系统,而是为了获取你的系统中有用的信息,当你上网时能与远端客户进行通讯,这样木马程序就会用服务器客户端的通讯手段把信息告诉黑客们,以便黑客们控制你的机器,或实施进一步的人侵企图。你知道你的电脑有多少个端口?不知道吧?告诉你别吓着:根据TCP/IP协议,每台电脑可以有256乘以256个端口,也即从0到65535号 "门",但我们常用的只有少数几个,木马经常利用我们不大用的这些端口进行连接,大开方便之 "门"。
6、功能的特殊性。
通常的木马功能都是十分特殊的,除了普通的文件操作以外,还有些木马具有搜索cache中的口令、设置口令、扫描目标机器人的IP地址、进行键盘记录、远程注册表的操作以及锁定鼠标等功能。上面所讲的远程控制软件当然不会有这些功能,毕竟远程控制软件是用来控制远程机器,方便自己操作而已,而不是用来黑对方的机器的。
搜索更多相关主题的帖子:
木马 详解 服务端 应用程序 口型