查看: 2359|回复: 4
收起左侧

[其他] 关于木马!

[复制链接]
YoYo
发表于 2007-9-25 10:32:03 | 显示全部楼层 |阅读模式
木马是如何启动的
  作为一个优秀的木马,自启动功能是必不可少的,这样可以保证木马不会因为你的一次关机操作而彻底失去作用。正因为该项技术如此重要,所以,很多编程人员都在不停地研究和探索新的自启动技术,并且时常有新的发现。一个典型的例子就是把木马加入到用户经常执行的程序 (例如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自动生成,在执行了Windows自动生成,在执行了Win.com并加截了多数驱动程序之后
  开始执行 (这一点可通过启动时按F8键再选择逐步跟踪启动过程的启动方式可得知)。由于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.COM等都是木马的目标,要小心搂。对付这类木马,只能经常检查HKEY_C\\shell\\open\\command主键,查看其键值是否正常。

9.捆绑文件
  实现这种触发条件首先要控制端和服务端已通过木马建立连接,然后控制端用户用工具软件将木马文件和某一应用程序捆绑在一起,然后上传到服务端覆盖源文件,这样即使木马被删除了,只要运行捆绑了木马的应用程序,木马义会安装上去。绑定到某一应用程序中,如绑定到系统文件,那么每一次Windows启动均会启动木马。

10.反弹端口型木马的主动连接方式
  反弹端口型木马我们已经在前面说过了,由于它与一般的木马相反,其服务端 (被控制端)主动与客户端 (控制端)建立连接,并且监听端口一般开在80,所以如果没有合适的工具、丰富的经验真的很难防范。这类木马的典型代表就是网络神偷"。由于这类木马仍然要在注册表中建立键值注册表的变化就不难查到它们。同时,最新的天网防火墙(如我们在第三点中所讲的那样),因此只要留意也可在网络神偷服务端进行主动连接时发现它。

木马原理分析(1)

木马的隐藏方式

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时代,简单地注册为系统进程就可以从任务栏中消失,可是在Windows XP,这种方法遭到了惨败。注册为系统进程不仅仅能在任务栏中看到,而且可以直接在Services中直接控制停止。运行(太搞笑了,木马被客户端控制)。使用隐藏窗体或控制台的方法也不能欺骗无所不见的Admlin大人(要知道,在NT下,Administrator是可以看见所有进程的)。在研究了其他软件的长处之后,木马发现,Windows下的中文汉化软件采用的陷阱技术非常适合木马的使用。
  这是一种更新、更隐蔽的方法。通过修改虚拟设备驱动程序(VXD)或修改动态遵掇库 (DLL)来加载木马。这种方法与一般方法不同,它基本上摆脱了原有的木马模式---监听端口,而采用替代系统功能的方法(改写vxd或DLL文件),木马会将修改后的DLL替换系统已知的DLL,并对所有的函数调用进行过滤。对于常用的调用,使用函数转发器直接转发给被替换的系统DLL,对于一些相应的操作。实际上。这样的事先约定好的特种情况,DLL会执行一般只是使用DLL进行监听,一旦发现控制端的请求就激活自身,绑在一个进程上进行正常的木马操作。这样做的好处是没有增加新的文件,不需要打开新的端口,没有新的进程,使用常规的方法监测不到它。在往常运行时,木马几乎没有任何瘫状,且木马的控制端向被控制端发出特定的信息后,隐藏的程序就立即开始运作。

木马原理分析(2)  

木马采用的伪装方法

1.修改图标
  木马服务端所用的图标也是有讲究的,木马经常故意伪装成了XT.HTML等你可能认为对系统没有多少危害的文件图标,这样很容易诱惑你把它打开。看看,木马是不是很狡猾?

2.捆绑文件
  这种伪装手段是将木马捆绑到一个安装程序上,当安装程序运行时,木马在用户毫无察觉的情况下,偷偷地进入了系统。被捆绑的文件一般是可执行文件 (即EXE、COM一类的文件)。

3.出错显示
  有一定木马知识的人部知道,如果打开一个文件,没有任何反应,这很可能就是个木马程序。木马的设计者也意识到了这个缺陷,所以已经有木马提供了一个叫做出错显示的功能。当服务端用户打开木马程序时,会弹出一个错误提示框 (这当然是假的),错误内容可自由定义,大多会定制成一些诸如 "文件已破坏,无法打开!"之类的信息,当服务端用户信以为真时,木马却悄悄侵人了系统。

4.自我销毁
  这项功能是为了弥补木马的一个缺陷.我们知道,当服务端用户打开含有木马的文件后,木马会将自己拷贝到Windows的系统文件夹中(C;\\wmdows或C:\\windows\\system目录下),一般来说,源木马文件和系统文件夹中的木马文件的大小是一样的 (捆绑文件的木马除外),那么,中了木马的朋友只要在近来收到的信件和下载的软件中找到源木马文件,然后根据源木马的大小去系统文件夹找相同大小的文件,判断一下哪个是木马就行了。而木马的自我销毁功能是指安装完木马后,源木马文件自动销毁,这样服务端用户就很难找到木马的来源,在没有查杀木马的工具帮助下。就很难删除木马了。

5.木马更名
  木马服务端程序的命名也有很大的学问.如果不做任何修改,就使用原来的名字,谁不知道这是个木马程序呢?所以木马的命名也是千奇百怪,不过大多是改为和系统文件名差不多的名字,如果对系统文件不够了解,那可就危险了。例如有的木马把名字改为window.exe,如果不告诉你这是木马的话,你敢删除吗?还有的就是更改一些后缀名,比如把dll改为dl等,不仔细看的,你会发现吗?
  
被感染后的紧急措施
  如果计算机已经被木马光临过了,系统文件被黑客改得一塌糊涂,硬盘多出来一大堆乱七八糟的文件,很多重要的数据也可能被黑客窃取,这里提供3条建议:
  (1)所有的账号和密码都要马上更改,例如拨号连接,ICQ,mIRC,FTP,个人站点,免费邮箱等等,凡是需要密码的地方,把密码尽快改过来
  (2)删掉所有硬盘上原来没有的东西
  (4)检查一次硬盘上是否有病毒存在
销售的好
发表于 2007-9-25 11:51:44 | 显示全部楼层
收到,写的不错
某某猫
发表于 2007-9-25 16:24:31 | 显示全部楼层
很详细,学习了
luck
发表于 2007-9-25 17:00:39 | 显示全部楼层
不错,在旧常识之外增添了不少新内容。  
心照不选
发表于 2007-9-25 19:27:38 | 显示全部楼层
很详细,学习了
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

手机版|杀毒软件|软件论坛| 卡饭论坛

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2024-6-30 12:08 , Processed in 0.121137 second(s), 17 queries .

卡饭网所发布的一切软件、样本、工具、文章等仅限用于学习和研究,不得将上述内容用于商业或者其他非法用途,否则产生的一切后果自负,本站信息来自网络,版权争议问题与本站无关,您必须在下载后的24小时之内从您的电脑中彻底删除上述信息,如有问题请通过邮件与我们联系。

快速回复 客服 返回顶部 返回列表