网络用语木马的意思
- 提问者网友:孤山下
- 2021-05-15 06:20
- 五星知识达人网友:独钓一江月
- 2021-05-15 07:51
- 1楼网友:污到你湿
- 2021-05-15 12:19
12.1.2 木马的工作原理(2) http://book.51cto.com 2008-07-21 15:26 李匀 电子工业出版社博文视点 我要评论(0) 摘要:《网络渗透测试——保护网络安全的技术、工具和过程》第12章木马和后门的运用,这一章主要介绍考察木马、病毒及后门应用程序,还会介绍一些恶意黑客和渗透测试人员使用的著名病毒、木马及后门程序,最后讨论如何检测这些恶意软件及在网络上预防这些恶意软件攻击的步骤,本节为木马的工作原理。 标签:网络安全 Web 恶意软件 攻击 网络渗透测试 Oracle帮您准确洞察各个物流环节
12.1.2 木马的工作原理(2)
3.木马的启动方式
作为一个优秀的木马,自启动功能是必不可少的。自启动可以保证木马不会因为用户的一次关机操作而彻底失去作用。正因为该项技术如此重要,所以很多编程人员都在不停地研究和探索新的自启动技术。一个典型的例子就是把木马加入到用户经常执行的程序(例如Explorer.exe)中,当用户执行该程序时,木马就自动执行并运行。当然,更加普遍的方法是通过修改Windows系统文件和注册表实现自启动。实现自启动的常用方法包括下述几种,
通过启动组实现自启动
这也是一种很常见的方式,很多正常的程序都用它,大家常用的QQ就是用这种方式实现自启动的,但木马很少使用这种方式,原因在于启动组的每个程序都会出现在“系统配置实用程序”(msconfig.exe,以下简称msconfig)中。事实上,出现在“开始”菜单的“程序\启动”中足以引起普通人的注意,所以,极少有木马使用这种启动方式。
在Win.ini文件中启动
同启动组一样,这也是从Windows3.2开始就可以使用的方法,是从Win16遗传到Win32的。在Windows3.2中,Win.ini就相当于Windows9x中的注册表,在该文件中的[Windows]域中的load和run项会在Windows启动时运行,这两个项目也会出现在msconfig中,这种方法也不很适合木马使用。
在System.ini文件中启动
System.ini文件位于Windows安装目录下,其中[Boot]节中的Shell= Explorer.exe是经常被用于隐藏加载木马的地方。通常的做法是将该项变为Shell= Explorer.exe Sample.exe。这里的Sample.exe是某个木马服务端程序。我们可以在"Explorer.exe"后加上木马程序的路径,这样Windows启动后木马也就随之启动,而且即使是安全模式启动也不会跳过这一项,这样木马也就可以保证永远随Windows启动了,名噪一时的尼姆达病毒就使用了这种方法。这时,如果木马程序也具有自动检测添加Shell项的功能的话,那简直是天衣无缝的绝配,我想除了使用查看进程的工具中止木马,再修改Shell项和删除木马文件外没有别的破解之法了。但这种方式也有先天不足,因为只有一个Shell项,如果有两个木马都使用这种方式实现自启动,那么后来的木马可能会使前一个木马无法启动,此所谓以毒攻毒。
System.ini文件中的[386Ehn]节的“driver=路径\程序名”也可以用来实现自启动。此外,System.ini中的[mic]、[drivers]、[drivers32]也是加载程序的好地方。
在*.ini文件中启动
后缀为.ini的文件是系统中应用程序的启动配置文件,木马程序利用这些文件能够自启动应用程序的特点,将制作好的、带有木马服务端程序自启动命令的文件上传到目标主机中,这样就可以达到启动木马的目的了。
通过修改文件关联启动
修改文件关联是木马常用手段,例如,在正常情况下,.txt文件的打开方式为Notepad.exe文件,但一旦中了文件关联木马,则.txt文件打开方式就会被修改为用木马程序打开,如著名的国产木马冰河就是这样。
冰河木马通过修改HKEY_CLASSES_ROOT\txtfile\shell\open\command下的键值,将“C:\WINDOWS\notepad.exe %1”修改为“%SystemRoot%\system32\sysexplr.exe %1”,实现该木马的启动。
只要用户双击任意一个.txt文件,原本应该使用notepad.exe程序打开.txt文件,现在就变成启动Windows system32目录下的sysexplr.exe木马程序了。需要提醒读者的是,不仅仅是.txt文件,其他如html、JPG、Zip、rar等扩展名都是木马作者制定自动启动方案的目标。
通过捆绑文件方式启动
木马和正常程序捆绑,有点类似于病毒,程序在运行时,木马程序先获得控制权或另开一个线程以监视用户操作,截取密码等,这类木马编写的难度较大,需要了解PE文件结构和Windows的底层知识(直接使用捆绑程序除外)。使用著名的黑客软件Deception Binder就可以实现木马与正常程序的捆绑。这是国外的一款文件合并器,小巧而功能强大。能够捆绑任意格式(包括.txt、.jpg)文件;能够设置打开文件是否隐蔽运行;能够设置打开文件是否加入注册表启动项;能够设置打开文件时是否显示错误信息以迷惑对方等。当木马程序连接到Notepad时,其结果会显示为Notepad,而且执行时也像是Notepad,但同时也会执行木马程序。
通过将特定的程序改名方式启动
这种方式常见于针对QQ的木马,如将QQ的启动文件QQ2000b.exe,改为 QQ2000b.ico.exe(Windows默认不显示扩展名,因此它会被显示为QQ2000b.ico,而用户会认为这是一个图标),再将木马程序改为QQ2000b.exe,此后,用户运行QQ,实际上运行了QQ木马,再由QQ木马去启动真正的QQ,这种方式实现起来很简单。
通过Autoexec.bat文件,或winstart.bat,config.sys文件启动
其实这种方法并不适合木马使用,因为该文件会在Windows启动前运行,此时系统处于DOS环境,只能运行16位应用程序,Windows下的32位程序是不能运行的。因此也就失去了木马的意义。不过,这并不是说它不能用于启动木马。可以想像,SoftIce for Win98(功能强大的程序调试工具,被黑客奉为至宝,常用于破解应用程序)也是先要在Autoexec.bat文件中运行然后才能在Windows中显示窗口,进行调试,既然如此,谁能保证木马不会这样启动呢?
通过注册表启动
这里通常有两组注册表项供使用。下面分别予以简要介绍。
通过下面的三个注册表项:
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServices
这是很多Windows程序都采用的方法,也是木马最常用的方法。它的使用非常方便,但也容易被人发现,由于其应用太广,所以几乎提到木马,就会让人想到这几个注册表项中的主键,通常木马会使用最后一个。使用Windows自带的程序msconfig或注册表编辑器(regedit.exe)都可以将它轻易的删除,所以这种方法并不十分可靠。但可以在木马程序中加一个时间控件,以便实时监视注册表中自身的启动键值是否存在,一旦发现被删除,则立即重新写入,以保证下次Windows启动时自己能被运行。这样木马程序和注册表中的启动键值之间形成了一种互相保护的状态。木马程序未中止,启动键值就无法删除(手工删除后,木马程序又自动添加上了),相反的,不删除启动键值,下次启动Windows还会启动木马。怎么办呢?其实破解它并不难,即使在没有任何工具软件的情况下也能轻易解除这种互相保护。破解方法是,首先,以安全模式启动Windows,这时,Windows不会加载注册表中的项目,因此木马不会被启动,相互保护的状况也就不攻自破了,然后,你就可以删除注册表中的键值和相应的木马程序。采用这种启动方式的典型木马包括:BO2000、GOP、NetSpy、IEthief、冰河等。
通过下面的三个注册表项:
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunOnceHKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\RunOnceHKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\RunServicesOnce
这种方法好像使用的人不是很多,但隐蔽性比上一种方法好,它的内容不会出现在msconfig中。在这个键值下的项目和上一种相似,会在Windows启动时启动,但Windows启动后,该键值下的项目会被清空,因而不易被发现,但是只能启动一次,木马如何能发挥效果呢?其实很简单,不是只能启动一次吗?那木马启动成功后再在这里添加一次不就行了吗?在Delphi中这不过三五行程序。虽说这些项目不会出现在msconfig中,但是在Regedit中却可以直接将它删除,那么木马也就从此失效了。还有一种控制再次启动的方法,它不是在启动的时候添加注册表项,而是在退出Windows的时候添加,这就要求木马程序本身要截获Windows的消息,当发现关闭Windows消息时,暂停关闭过程,添加注册表项目,然后才开始关闭Windows,这样使用Regedit也找不到它的踪迹了。这种方法也有个缺点,就是一旦Windows异常中止(比如断电),木马也就失效了。
另外使用这三个键值并不完全一样,通常木马会选择第一个,因为在第二个键值下的项目会在Windows启动完成前运行,并等待程序结束后才会继续启动Windows。采用这种启动方式的典型木马包括Happy99等。
4.黑客欺骗用户运行木马的方法
木马是一个软件,它由使用者传播或种植,而不会“长腿”自己跑到用户的机器上,正像《特洛伊》剧情中描述的一样,木马往往是用户自己将其带进计算机中的。有了木马程序,如果没有高超的骗术,木马也无用武之地,因此,这里将简单地介绍几种网络上流行的欺骗方法,目的是让读者了解这些骗术的内容,如果遇到类似情况,也可以当场揭穿而不会付出城池失守的代价。
捆绑欺骗
把木马服务端和某个游戏,或者Flash文件捆绑成一个文件通过QQ或邮件发给受害者。当受害者对这个游戏或者Flash文件感兴趣而下载到机器上,而且不幸打开了文件后,就会被种植上木马。受害者会看到游戏程序正常打开,但却不会发觉木马程序已经悄悄运行。这种方法可以起到很好的迷惑作用,而且即使受害者重装系统,如果用户保存了那个捆绑文件,还有可能再次中招。
邮件冒名欺骗
现在上网的用户很多,但其中一些用户的电脑知识并不丰富,防范意识也不强,当黑客用匿名邮件工具冒充用户的好友或大型网站、政府机构向目标主机用户发送邮件,并将木马程序作为附件。用户看到发送者的名字是某知名网站或大型机构,而附件命名为调查问卷,注册表单等,用户就有可能毫无戒心地打开附件,从而种植上木马。
压缩包伪装
这个方法比较简单,也比较实用。首先,将一个木马和一个损坏的Zip/Rar文件包(可自制)捆绑在一起,生成一个后缀名为.exe的文件。然后指定捆绑后的文件为Zip/Rar文件图标,这样一来,除了后缀名与真正的Zip/Rar文件不同,执行起来却和一般损坏的Zip/Rar文件没什么两样,用户可能根本不知道木马已经在悄悄运行了。
网页欺骗
也许读者在网上都有这样的经历,当用户在聊天的时候,入侵者发给用户一些陌生的网址,并且说明网站上有一些比较吸引人的东西或者热门的话题。如果用户不够警惕,或者好奇心较强,不幸单击了这个链接,在网页弹出的同时,用户的机器也可能已经被种植了木马。 欺骗的方法多种多样,并且随着时间的推移,新的方法和手段也都会被发明出来。
- 2楼网友:摆渡翁
- 2021-05-15 10:51
- 3楼网友:何以畏孤独
- 2021-05-15 10:24
- 4楼网友:未来江山和你
- 2021-05-15 08:49
- 5楼网友:舊物识亽
- 2021-05-15 08:11