本文目录一览:
- 1、特洛伊木马是什么意思?
- 2、“特洛伊木马”是一种怎样的计算机病毒程序?
- 3、为什么有种病毒叫木马病毒而不叫别的病毒呢?这和希腊神话有什么关系呢
- 4、特洛伊木马病毒有何危害?
- 5、特洛伊战争有关简介及特洛伊木马是如何得来的它在战争中发挥了何种作用?
- 6、什么是特洛伊木马?如果计算机中了这个病毒会怎样?
特洛伊木马是什么意思?
称呼的来历:特洛伊木马的故事是在古希腊传说中,希腊联军围困特洛伊久攻不下,于是假装撤退,留下一具巨大的中空木马,特洛伊守军不知是计,把木马运进城中作为战利品。夜深人静之际,木马腹中躲藏的希腊士兵打开城门,特洛伊沦陷。后人常用“特洛伊木马”这一典故,用来比喻在敌方营垒里埋下伏兵里应外合的活动。特洛伊木马也是著名电脑木马程序的名字。
病毒:洛伊木马”(trojan horse)简称“木马(wooden horse)”,名称来源于上文提到的希腊神话《木马屠城记》,如今黑客程序借用其名,有“一经潜入,后患无穷”之意。特洛伊木马没有复制能力,它的特点是伪装成一个实用工具或者一个可爱的游戏,诱使用户将其安装在PC或者服务器上。
组成
完整的木马程序一般由两个部分组成:一个是服务端(被控制端),一个是客户端(控制端)。“中了木马”就是指安装了木马的服务端程序,若你的电脑被安装了服务端程序,则拥有相应客户端的人就可以通过网络控制你的电脑、为所欲为,这时你电脑上的各种文件、程序,以及在你电脑上使用的账号、密码无安全可言了。
木马程序不能算是一种病毒,但可以和最新病毒、漏洞利用工具一起使用,几乎可以躲过各大杀毒软件,尽管现在越来越多的新版的杀毒软件可以查杀一些防杀木马了,但是不要认为使用有名的杀毒软件电脑就绝对安全,木马永远是防不胜防的,除非你不上网。
启动
作为一个优秀的木马,自启动功能是必不可少的,这样可以保证木马不会因为你的一次关机操作而彻底失去作用。正因为该项技术如此重要,所以,很多编程人员都在不停地研究和探索新的自启动技术,并且时常有新的发现。一个典型的例子就是把木马加入到用户经常执行的程序 (例如explorer.exe)中,用户执行该程序时,则木马自动发生作用。当然,更加普遍的方法是通过修改Windows系统文件和注册表达到目的,现经常用的方法主要有以下几种:
1.在Win.ini中启动
在Win.ini的[windows]字段中有启动命令"load="和"run=",在一般情况下 "="后面是空白的,如果有后跟程序,比方说是这个样子:
run=c:\windows\file.exe
load=c:\windows\file.exe
要小心了,这个file.exe很可能是木马哦。
2.在System.ini中启动
System.ini位于Windows的安装目录下,其[boot]字段的shell=Explorer.exe是木马喜欢的隐藏加载之所,木马通常的做法是将该何变为这样:shell=Explorer.exefile.exe。注意这里的file.exe就是木马服务端程序!
另外,在System.中的[386Enh]字段,要注意检查在此段内的"driver=路径\程序名"这里也有可能被木马所利用。再有,在System.ini中的[mic]、[drivers]、[drivers32]这3个字段,这些段也是起到加载驱动程序的作用,但也是增添木马程序的好场所,现在你该知道也要注意这里喽。
3.利用注册表加载运行
如下所示注册表位置都是木马喜好的藏身加载之所,赶快检查一下,有什么程序在其下。
4.在Autoexec.bat和Config.sys中加载运行
请大家注意,在C盘根目录下的这两个文件也可以启动木马。但这种加载方式一般都需要控制端用户与服务端建立连接后,将己添加木马启动命令的同名文件上传到服务端覆盖这两个文件才行,而且采用这种方式不是很隐蔽。容易被发现,所以在Autoexec.bat和Confings中加载木马程序的并不多见,但也不能因此而掉以轻心。
5.在Winstart.bat中启动
Winstart.bat是一个特殊性丝毫不亚于Autoexec.bat的批处理文件,也是一个能自动被Windows加载运行的文件。它多数情况下为应用程序及Windows自动生成,由于Autoexec.bat的功能可以由Witart.bat代替完成,因此木马完全可以像在Autoexec.bat中那样被加载运行,危险由此而来。
6.启动组
木马们如果隐藏在启动组虽然不是十分隐蔽,但这里的确是自动加载运行的好场所,因此还是有木马喜欢在这里驻留的。启动组对应的文件夹为C:\Windows\start menu\programs\startup,在注册表中的位置:HKEY_CURRENT_USER\Software\Microsoft\windows\CurrentVersion\Explorer\shell
Folders Startup="c:\windows\start menu\programs\startup"。要注意经常检查启动组哦!
7.*.INI
即应用程序的启动配置文件,控制端利用这些文件能启动程序的特点,将制作好的带有木马启动命令的同名文件上传到服务端覆盖这同名文件,这样就可以达到启动木马的目的了。只启动一次的方式:在winint.ini.中(用于安装较多)。
8.修改文件关联
修改文件关联是木马们常用手段 (主要是国产木马,老外的木马大都没有这个功能),比方说正常情况下TXT文件的打开方式为Notepad.EXE文件,但一旦中了文件关联木马,则txt文件打开方式就会被修改为用木马程序打开,如著名的国产木马冰河就是这样干的. "冰河"就是通过修改HKEY_CLASSES_ROOT\txtfile\whell\open\command下的键值,将“C:\WINDOWS\NOTEPAD.EXE本应用Notepad打开,如著名的国产HKEY一CLASSES一ROOT\txt闹e\shell\open\commandT的键值,将 "C:\WINDOWS\NOTEPAD.EXE%l"改为 "C:\WINDOWS\SYSTEM\SYSEXPLR.EXE%l",这样,一旦你双击一个TXT文件,原本应用Notepad打开该文件,现在却变成启动木马程序了,好狠毒哦!请大家注意,不仅仅是TXT文件,其他诸如HTM、EXE、ZIP等都是木马的目标,要小心喽。
对付这类木马,只能经常检查HKEY_C\shell\open\command主键,查看其键值是否正常。
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地址、进行键盘记录、远程注册表的操作以及锁定鼠标等功能。上面所讲的远程控制软件当然不会有这些功能,毕竟远程控制软件是用来控制远程机器,方便自己操作而已,而不是用来黑对方的机器的。
伪装方法
1.修改图标
木马服务端所用的图标也是有讲究的,木马经常故意伪装成了XT.HTML等你可能认为对系统没有多少危害的文件图标,这样很容易诱惑你把它打开。看看,木马是不是很狡猾?
2.捆绑文件
这种伪装手段是将木马捆绑到一个安装程序上,当安装程序运行时,木马在用户毫无察觉的情况下,偷偷地进入了系统。被捆绑的文件一般是可执行文件 (即EXE、COM一类的文件)。
3.出错显示
有一定木马知识的人部知道,如果打开一个文件,没有任何反应,这很可能就是个木马程序。木马的设计者也意识到了这个缺陷,所以已经有木马提供了一个叫做出错显示的功能。当服务端用户打开木马程序时,会弹出一个错误提示框 (这当然是假的),错误内容可自由定义,大多会定制成一些诸如 "文件已破坏,无法打开!"之类的信息,当服务端用户信以为真时,木马却悄悄侵人了系统。
4.自我销毁
这项功能是为了弥补木马的一个缺陷。我们知道,当服务端用户打开含有木马的文件后,木马会将自己拷贝到Windows的系统文件夹中(C;\wmdows或C:\windows\system目录下),一般来说,源木马文件和系统文件夹中的木马文件的大小是一样的 (捆绑文件的木马除外),那么,中了木马的朋友只要在近来收到的信件和下载的软件中找到源木马文件,然后根据源木马的大小去系统文件夹找相同大小的文件,判断一下哪个是木马就行了。而木马的自我销毁功能是指安装完木马后,源木马文件自动销毁,这样服务端用户就很难找到木马的来源,在没有查杀木马的工具帮助下。就很难删除木马了。
“特洛伊木马”是一种怎样的计算机病毒程序?
这种程序是一种埋藏了计算机指令的病毒程序,也是隐藏和传播计算机病毒及网络“蠕虫”的常用手段。这种病毒程序看起来似乎无用,但却携带某种病毒,并由一种程序代码激活。一旦用户偶然进入这种代码,“特洛伊木马”程序就会运行,修改或破坏信息数据,降低系统的功能等。就如同古希腊特洛伊城的战例一样,在空心的木马中隐藏士兵,看起来无用,但却隐含杀机。例如,当用户上机入网时,计算机屏幕上突然显示出网络正忙的信息,并提示用户要反复进行入网尝试,这样,“特洛伊木马”病毒程序就会拿到用户的注册号、密码口令等,以便进一步传播病毒。“特洛伊木马”程序还可伪装成保证计算机或网络安全的某种手段,如“撒旦”。这种“撒旦”软件看起来似乎很有用,因为可以用来检查UNIX系统的安全性等问题,因此在1NTERNET上随处可见。但当某位用户应用这种病毒程序时,相关的重要信息就会被对方悄悄地偷走。设计水平较高的“特洛伊木马”程序会不留任何痕迹,因为它不造成任何明显的破坏,因此探测和防御这种病毒很难。
为什么有种病毒叫木马病毒而不叫别的病毒呢?这和希腊神话有什么关系呢
什么是特洛伊木马?
“特洛伊木马”(trojan horse)简称“木马”,据说这个名称来源于希腊神话《木马屠城记》。古希腊有大军围攻特洛伊城,久久无法攻下。于是有人献计制造一只高二丈的大木马,假装作战马神,让士兵藏匿于巨大的木马中,大部队假装撤退而将木马摈弃于特洛伊城下。城中得知解围的消息后,遂将“木马”作为奇异的战利品拖入城内,全城饮酒狂欢。到午夜时分,全城军民尽入梦乡,匿于木马中的将士开秘门游绳而下,开启城门及四处纵火,城外伏兵涌入,部队里应外合,焚屠特洛伊城。后世称这只大木马为“特洛伊木马”。如今黑客程序借用其名,有“一经潜入,后患无穷”之意。
完整的木马程序一般由两个部份组成:一个是服务器程序,一个是控制器程序。“中了木马”就是指安装了木马的服务器程序,若你的电脑被安装了服务器程序,则拥有控制器程序的人就可以通过网络控制你的电脑、为所欲为,这时你电脑上的各种文件、程序,以及在你电脑上使用的帐号、密码就无安全可言了。
木马程序不能算是一种病毒,但越来越多的新版的杀毒软件,已开始可以查杀一些木马了,所以也有不少人称木马程序为黑客病毒。
特洛伊木马病毒有何危害?
木马是一个有用的,或表面上有用的程序或命令过程,包含了一段隐藏的、激活时进行某种不想要的或者有害的功能的代码。它的危害性是可以用来非直接地完成一些非授权用户不能直接完成的功能。洛伊木星马的另一动机是数据破坏,程序看起来是在完成有用的功能(如:计算器程序),但它也可能悄悄地在删除用户文件,直至破坏数据文件,这是一种非常常见的病毒攻击。
特洛伊战争有关简介及特洛伊木马是如何得来的它在战争中发挥了何种作用?
1、特洛伊战争
特洛伊战争是以争夺世上最漂亮的女人海伦(Helen)为起因,以阿伽门农,墨涅拉俄斯为首的希腊联军进攻以普里阿摩斯为国王的特洛伊城的十年攻城战。
2、洛伊木马
由希腊人制造,是一匹巨大的木马,在马腹内藏着一批勇士。随后他们就装出战败撤退的样子,慌忙逃到海边上了船,然后驶入附近的一个海湾躲藏了起来。
特洛伊人不知道这是敌人的计谋,以为希腊人厌战了,追出城外,发现了一个大木马,便把它作为战利品拉进城内。
深夜,在特洛伊人毫无戒备的时候,希腊勇士们,从大木马的肚子里跳了出来,他们打开城门,发出了信号,这时从海上隐蔽悄悄返回的希腊人,在城中同伴的配合下,里应外合,迅速地夺取了特洛伊城。
战争背景:
特洛伊战争发生在迈锡尼文明时期。迈锡尼文明是世界早期较为发达的文明,兴盛于公元前15世纪~前12世纪,最鼎盛的时期在公元前13世纪左右。
这支文明的创造者已被证实是古希腊人的一支,只不过那个时候,他们还没有“希腊人”的称呼,他们被称作阿卡亚人。
阿卡亚人大约在公元前1650年左右从巴尔干半岛迁徙到古希腊半岛的中部和南部,并在那里建立起世界上第一个奴隶制国家——迈锡尼王国。
公元前12世纪,迈锡尼王国为了争夺海上霸权而跟小亚该亚西南沿海的国家发生冲突,其中最著名的就是特洛伊战争。
10年的特洛伊战争消耗了迈锡尼大量的元气,让这个一度辉煌的国家变得千疮百孔。一场战争拖垮了一个文明,这也是特洛伊战争备受关注的一个原因。
什么是特洛伊木马?如果计算机中了这个病毒会怎样?
特洛伊木马完全解析
一位客户的PC出现了奇怪的症状,速度变慢,CD-ROM托盘毫无规律地进进出出,从来没有见过的错误信息,屏幕图像翻转,等等。我切断了他的Internet连接,然后按照对付恶意软件的标准步骤执行检查,终于找出了罪魁祸首:两个远程访问特洛伊木马——一个是Cult of the Dead Cow臭名昭著的Back Orifice,还有一个是不太常见的The Thing。在这次事件中,攻击者似乎是个小孩,他只想搞些恶作剧,让别人上不了网,或者交换一些色情资料,但没有什么更危险的举动。如果攻击者有其他更危险的目标,那么他可能已经从客户的机器及其网络上窃得许多机密资料了。
特洛伊木马比任何其他恶意代码都要危险,要保障安全,最好的办法就是熟悉特洛伊木马的类型、工作原理,掌握如何检测和预防这些不怀好意的代码。
一、初识特洛伊木马
特洛伊木马是一种恶意程序,它们悄悄地在宿主机器上运行,就在用户毫无察觉的情况下,让攻击者获得了远程访问和控制系统的权限。一般而言,大多数特洛伊木马都模仿一些正规的远程控制软件的功能,如Symantec的pcAnywhere,但特洛伊木马也有一些明显的特点,例如它的安装和操作都是在隐蔽之中完成。攻击者经常把特洛伊木马隐藏在一些游戏或小软件之中,诱使粗心的用户在自己的机器上运行。最常见的情况是,上当的用户要么从不正规的网站下载和运行了带恶意代码的软件,要么不小心点击了带恶意代码的邮件附件。
大多数特洛伊木马包括客户端和服务器端两个部分。攻击者利用一种称为绑定程序的工具将服务器部分绑定到某个合法软件上,诱使用户运行合法软件。只要用户一运行软件,特洛伊木马的服务器部分就在用户毫无知觉的情况下完成了安装过程。通常,特洛伊木马的服务器部分都是可以定制的,攻击者可以定制的项目一般包括:服务器运行的IP端口号,程序启动时机,如何发出调用,如何隐身,是否加密。另外,攻击者还可以设置登录服务器的密码、确定通信方式。
服务器向攻击者通知的方式可能是发送一个email,宣告自己当前已成功接管的机器;或者可能是联系某个隐藏的Internet交流通道,广播被侵占机器的IP地址;另外,当特洛伊木马的服务器部分启动之后,它还可以直接与攻击者机器上运行的客户程序通过预先定义的端口进行通信。不管特洛伊木马的服务器和客户程序如何建立联系,有一点是不变的,攻击者总是利用客户程序向服务器程序发送命令,达到操控用户机器的目的。
特洛伊木马攻击者既可以随心所欲地查看已被入侵的机器,也可以用广播方式发布命令,指示所有在他控制之下的特洛伊木马一起行动,或者向更广泛的范围传播,或者做其他危险的事情。实际上,只要用一个预先定义好的关键词,就可以让所有被入侵的机器格式化自己的硬盘,或者向另一台主机发起攻击。攻击者经常会用特洛伊木马侵占大量的机器,然后针对某一要害主机发起分布式拒绝服务攻击(Denial of Service,即DoS),当受害者觉察到网络要被异乎寻常的通信量淹没,试图找出攻击者时,他只能追踪到大批懵然不知、同样也是受害者的DSL或线缆调制解调器用户,真正的攻击者早就溜之大吉。
二、极度危险的恶意程序
对于大多数恶意程序,只要把它们删除,危险就算过去,威胁也不再存在,但特洛伊木马有些特殊。特洛伊木马和病毒、蠕虫之类的恶意程序一样,也会删除或修改文件、格式化硬盘、上传和下载文件、骚扰用户、驱逐其他恶意程序,例如,经常可以看到攻击者霸占被入侵机器来保存游戏或攻击工具,用户所有的磁盘空间几乎都被侵占殆尽,但除此之外,特洛伊木马还有其独一无二的特点——窃取内容,远程控制——这使得它们成为最危险的恶意软件。
首先,特洛伊木马具有捕获每一个用户屏幕、每一次键击事件的能力,这意味着攻击者能够轻松地窃取用户的密码、目录路径、驱动器映射,甚至医疗记录、银行帐户和信用卡、个人通信方面的信息。如果PC带有一个麦克风,特洛伊木马能够窃听谈话内容。如果PC带有摄像头,许多特洛伊木马能够把它打开,捕获视频内容——在恶意代码的世界中,目前还没有比特洛伊木马更威胁用户隐私的,凡是你在PC前所说、所做的一切,都有可能被记录。
一些特洛伊木马带有包嗅探器,它能够捕获和分析流经网卡的每一个数据包。攻击者可以利用特洛伊木马窃取的信息设置后门,即使木马后来被清除了,攻击者仍可以利用以前留下的后门方便地闯入。
其次,如果一个未经授权的用户掌握了远程控制宿主机器的能力,宿主机器就变成了强大的攻击武器。远程攻击者不仅拥有了随意操控PC本身资源的能力,而且还能够冒充PC合法用户,例如冒充合法用户发送邮件、修改文档,当然还可以利用被侵占的机器攻击其他机器。二年前,一个家庭用户请我帮忙,要我帮他向交易机构证明他并没有提交一笔看来明显亏损的股票交易。交易机构确实在该笔交易中记录了他的PC的IP地址,而且在他的浏览器缓冲区中,我也找到了该笔有争议的交易的痕迹。另外,我还找到了SubSeven(即Backdoor_G)特洛伊木马的迹象。虽然没有证据显示出特洛伊木马与这笔令他损失惨重的股票交易直接有关,但可以看出交易发生之时特洛伊木马正处于活动状态。
三、特洛伊木马的类型
常见的特洛伊木马,例如Back Orifice和SubSeven等,都是多用途的攻击工具包,功能非常全面,包括捕获屏幕、声音、视频内容的功能。这些特洛伊木马可以当作键记录器、远程控制器、FTP服务器、HTTP服务器、Telnet服务器,还能够寻找和窃取密码。攻击者可以配置特洛伊木马监听的端口、运行方式,以及木马是否通过email、IRC或其他通信手段联系发起攻击的人。一些危害大的特洛伊木马还有一定的反侦测能力,能够采取各种方式隐藏自身,加密通信,甚至提供了专业级的API供其它攻击者开发附加的功能。由于功能全面,所以这些特洛伊木马的体积也往往较大,通常达到100 KB至300 KB,相对而言,要把它们安装到用户机器上而不引起任何人注意的难度也较大。
对于功能比较单一的特洛伊木马,攻击者会力图使它保持较小的体积,通常是10 KB到30 KB,以便快速激活而不引起注意。这些木马通常作为键记录器使用,它们把受害用户的每一个键击事件记录下来,保存到某个隐藏的文件,这样攻击者就可以下载文件分析用户的操作了。还有一些特洛伊木马具有FTP、Web或聊天服务器的功能。通常,这些微型的木马只用来窃取难以获得的初始远程控制能力,保障最初入侵行动的安全,以便在不太可能引起注意的适当时机上载和安装一个功能全面的大型特洛伊木马。
随便找一个Internet搜索网站,搜索一下关键词Remote Access Trojan,很快就可以得到数百种特洛伊木马——种类如此繁多,以至于大多数专门收集特洛伊木马的Web网站不得不按照字母顺序进行排列,每一个字母下有数打甚至一百多个木马。下面我们就来看看两种最流行的特洛伊木马:Back Orifice和SubSeven。
■ Back Orifice
1998年,Cult of the Dead Cow开发了Back Orifice。这个程序很快在特洛伊木马领域出尽风头,它不仅有一个可编程的API,还有许多其他新型的功能,令许多正规的远程控制软件也相形失色。Back Orifice 2000(即BO2K)按照GNU GPL(General Public License)发行,希望能够吸引一批正规用户,以此与老牌的远程控制软件如pcAnywhere展开竞争。
但是,它默认的隐蔽操作模式和明显带有攻击色彩的意图使得许多用户不太可能在短时间内接受。攻击者可以利用BO2K的服务器配置工具可以配置许多服务器参数,包括TCP或UDP、端口号、加密类型、秘密激活(在Windows 9x机器上运行得较好,在Windows NT机器上则略逊一筹)、密码、插件等。
Back Orifice的许多特性给人以深刻的印象,例如键击事件记录、HTTP文件浏览、注册表编辑、音频和视频捕获、密码窃取、TCP/IP端口重定向、消息发送、远程重新启动、远程锁定、数据包加密、文件压缩,等等。Back Orifice带有一个软件开发工具包(SDK),允许通过插件扩展其功能。
默认的bo_peep.dll插件允许攻击者远程控制机器的键盘和鼠标。就实际应用方面而言,Back Orifice对错误的输入命令非常敏感,经验不足的新手可能会使它频繁地崩溃,不过到了经验丰富的老手那里,它又会变得驯服而又强悍。
■ SubSeven
SubSeven可能比Back Orifice还要受欢迎,这个特洛伊木马一直处于各大反病毒软件厂商的感染统计榜前列。SubSeven可以作为键记录器、包嗅探器使用,还具有端口重定向、注册表修改、麦克风和摄像头记录的功能。图二显示了一部分SubSeven的客户端命令和服务器配置选项。
SubSeven具有许多令受害者难堪的功能:攻击者可以远程交换鼠标按键,关闭/打开Caps Lock、Num Lock和Scroll Lock,禁用Ctrl+Alt+Del组合键,注销用户,打开和关闭CD-ROM驱动器,关闭和打开监视器,翻转屏幕显示,关闭和重新启动计算机,等等。
SubSeven利用ICQ、IRC、email甚至CGI脚本和攻击发起人联系,它能够随机地更改服务器端口,并向攻击者通知端口的变化。另外,SubSeven还提供了专用的代码来窃取AOL Instant Messenger(AIM)、ICQ、RAS和屏幕保护程序的密码。
四、检测和清除特洛伊木马
如果一个企业网络曾经遭受病毒和Email蠕虫的肆虐,那么这个网络很可能也是特洛伊木马的首选攻击目标。由于木马会被绑定程序和攻击者加密,因此对于常规的反病毒软件来说,查找木马要比查找蠕虫和病毒困难得多。另一方面,特洛伊木马造成的损害却可能远远高于普通的蠕虫和病毒。因此,检测和清除特洛伊木马是系统管理员的首要任务。
要反击恶意代码,最佳的武器是最新的、成熟的病毒扫描工具。扫描工具能够检测出大多数特洛伊木马,并尽可能地使清理过程自动化。许多管理员过分依赖某些专门针对特洛伊木马的工具来检测和清除木马,但某些工具的效果令人怀疑,至少不值得完全信任。不过,Agnitum的Tauscan确实称得上顶级的扫描软件,过去几年的成功已经证明了它的效果。
特洛伊木马入侵的一个明显证据是受害机器上意外地打开了某个端口,特别地,如果这个端口正好是特洛伊木马常用的端口,木马入侵的证据就更加肯定了。一旦发现有木马入侵的证据,应当尽快切断该机器的网络连接,减少攻击者探测和进一步攻击的机会。打开任务管理器,关闭所有连接到Internet的程序,例如Email程序、IM程序等,从系统托盘上关闭所有正在运行的程序。注意暂时不要启动到安全模式,启动到安全模式通常会阻止特洛伊木马装入内存,为检测木马带来困难。
大多数操作系统,当然包括Windows,都带有检测IP网络状态的Netstat工具,它能够显示出本地机器上所有活动的监听端口(包括UDP和TCP)。打开一个命令行窗口,执行“Netstat -a”命令就可以显示出本地机器上所有打开的IP端口,注意一下是否存在意外打开的端口(当然,这要求对端口的概念和常用程序所用的端口有一定的了解)。
显示了一次Netstat检测的例子,检测结果表明一个Back Orifice使用的端口(即31337)已经被激活,木马客户程序使用的是远程机器(ROGERLAP)上的1216端口。除了已知的木马常用端口之外,另外还要特别留意未知的FTP服务器(端口21)和Web服务器(端口80)。
但是,Netstat命令有一个缺点,它能够显示出哪些IP端口已经激活,但却没有显示出哪些程序或文件激活了这些端口。要找出哪个执行文件创建了哪个网络连接,必须使用端口枚举工具,例如,Winternals Software的TCPView Professional Edition就是一个优秀的端口枚举工具。Tauscan除了能够识别特洛伊木马,也能够建立程序与端口的联系。另外,Windows XP的Netstat工具提供了一个新的-o选项,能够显示出正在使用端口的程序或服务的进程标识符(PID),有了PID,用任务管理器就可以方便地根据PID找到对应的程序。
如果手头没有端口枚举工具,无法快速找出幕后肇事者的真正身份,请按照下列步骤操作:寻找自动启动的陌生程序,查找位置包括注册表、.ini文件、启动文件夹等。然后将机器重新启动进入安全模式,可能的话,用Netstat命令确认一下特洛伊木马尚未装入内存。接下来,分别运行各个前面找出的有疑问的程序,每次运行一个,分别用Netstat命令检查新打开的端口。如果某个程序初始化了一个Internet连接,那就要特别小心了。深入研究一下所有可疑的程序,删除所有不能信任的软件。
Netstat命令和端口枚举工具非常适合于检测一台机器,但如果要检测的是整个网络,又该怎么办?大多数入侵检测系统(Intrusion Detection System,IDS)都具有在常规通信中捕获常见特洛伊木马数据包的能力。FTP和HTTP数据具有可识别的特殊数据结构,特洛伊木马数据包也一样。只要正确配置和经常更新IDS,它甚至能够可靠地检测出经过加密处理的Back Orifice和SubSeven通信。请参见,了解常见的源代码开放IDS工具。
五、处理遗留问题
检测和清除了特洛伊木马之后,另一个重要的问题浮现了:远程攻击者是否已经窃取了某些敏感信息?危害程度多大?要给出确切的答案很困难,但你可以通过下列问题确定危害程度。首先,特洛伊木马存在多长时间了?文件创建日期不一定值得完全信赖,但可资参考。利用Windows资源管理器查看特洛伊木马执行文件的创建日期和最近访问日期,如果执行文件的创建日期很早,最近访问日期却很近,那么攻击者利用该木马可能已经有相当长的时间了。
其次,攻击者在入侵机器之后有哪些行动?攻击者访问了机密数据库、发送Email、访问其他远程网络或共享目录了吗?攻击者获取管理员权限了吗?仔细检查被入侵的机器寻找线索,例如文件和程序的访问日期是否在用户的办公时间之外?
在安全要求较低的环境中,大多数用户可以在清除特洛伊木马之后恢复正常工作,只要日后努力防止远程攻击者再次得逞就可以了。至于安全性要求一般的场合,最好能够修改一下所有的密码,以及其他比较敏感的信息(例如信用卡号码等)。
在安全性要求较高的场合,任何未知的潜在风险都是不可忍受的,必要时应当调整管理员或网络安全的负责人,彻底检测整个网络,修改所有密码,在此基础上再执行后继风险分析。对于被入侵的机器,重新进行彻底的格式化和安装。
特洛伊木马造成的危害可能是非常惊人的,由于它具有远程控制机器以及捕获屏幕、键击、音频、视频的能力,所以其危害程度要远远超过普通的病毒和蠕虫。深入了解特洛伊木马的运行原理,在此基础上采取正确的防卫措施,只有这样才能有效减少特洛伊木马带来的危害