寻梦网络,wangdi1900的个人空间,真诚期待与你成为朋友!

探讨两个比较难杀灭的灰鸽子变种

上一篇 / 下一篇  2007-02-12 16:24:23 / 个人分类:软件

探讨两个比较难杀灭的灰鸽子变种

 

发信人:刚王arch###@yahoo.com.cn
收件人:nslog.cn@gmail.com
日期: 2006-10-29 下午9:35

主题: 探讨两个比较难杀灭的灰鸽子变种

     非常感谢你开了这样一个博客来帮助大家解决问题。正是你提供的procexp帮我解决掉了一个灰鸽子变种。
   我为了这个木马忙了两天多,在网上没有找到什么有价值的解决方法,是你的博客帮我最终解决了问题。我想把具体的情况跟你介绍一下。通过你的博客把相关经验介绍出去,方便更多的网友。因为我发现和我有相同遭遇的网友基本都无法解决问题。毕竟你的网页的流量会有很大帮助。

   案例一:             单位的公用上网机器,PIII 800M,XPSP2,未打MS最近的67个补丁。原来用的瑞星,木马和病毒泛滥。后来我在上面用nod32和ewido使劲杀了一阵子,恢复到正常状态,用冰刃未发现不良的进程和内核模块。两天后,nod32频繁报警,称IEXPLORE.EXE频繁通过80端口访问ads.cn3721.com,下载文件b1.exe、b2.exe、……、log[1].exe等木马并尝试运行(其中有魔兽世界、QQ的盗号木马),并将其存放在\Documents and Settings\%username%\LocalSettings\Temp下和\%username%\Local Settings\Temporary Internet Files\Content.IE5中的子目录下。IE进程可以在资源管理器中发现,但并没有窗口程序。nod32只能阻止连接,并不能关闭相关进程,甚至连下载的病毒都无法隔离。用冰刃发现,是系统的explorer.exe进程中的某个线程创建的IE。如果硬性关闭IE,则木马会定时自检,再继续调用IE。在冰刃的内核模块中,发现??%windir%\TEMP\MC21.TMP,在HKLM\SYSTEM\CurrentControlSet\Services\mchInjDrv\ImagePath 有键值:%windir%\TEMP\MC21.TMP,但在TEMP文件夹下用冰刃根本找不到MC21.TMP。木马还加入启动项好像叫什么SOUNDM,搞得跟声卡驱动似的,但执行文件是恶意的%windir%\winsmd.exe。删掉winsmd.exe和注册表项mchInjDrv后,我通过虚拟软驱进入系统,把\Local Settings下的文件夹和%windir%下的\system32、\Downloaded Program Files都找了个遍,有相关关键字的文件基本都删了。进入系统,还是有内核模块运行,还是继续下载病毒。我又关闭了不少系统服务,甚至连非PNP的设备驱动都关的关删的删,还是无法解决问题。尤其是系统服务,并未发现有除了杀毒软件和防火墙之外的非系统服务,连改名蒙混的都没有。其间,我上网找了很多相关资料,基本确定是灰鸽子变种,但网上的所有手工杀法都不顶事,只有“灰鸽子vip0105破解版测试报告”倒是有些靠谱的地方,但还是没有解决方案。冰刃都没有用,hijackthis更是毫无作为。最后,重装了XP系统。
         这个案例真是太失败了。
     案例二:
        回家后用冰刃看了看自己的机器,本机10月初因不慎运行了两个下载文件后出现异常。杀毒后以为没事了。在冰刃的内核模块中,发现??c:\windows\system32\drivers\mchinjdrv.sys。
在注册表HKLM\SYSTEM\CurrentControlSet\Enum\Root\
HKLM\SYSTEM\CurrentControlSet001\Enum\Root\
HKLM\SYSTEM\CurrentControlSet002\Enum\Root\
中都发现有LEGACY_MCHINJDRV项。我差点没昏过去,因为机器重装损失太大无法承受。把系统中该删的文件、注册表都删了,把服务减少到最低限度,还是照样加载木马的内核模块,删掉的注册表项又自动恢复。用你所说的autoruns.exe也没检查出到底木马是怎样自我保护和加载的。就在这时,我发现系统服务中有些在我关闭它后又处于启动状态,有些我明明记得自己已经关闭并禁用了,尤其是Cryptographi c Severices,感觉好像离解决问题不远了。看到你介绍的procexp,我试用了一下,发现功能远强于我先前用的procview。我发现procexp有个“Find”菜单,就抱着试试看的心理找了下mchinjdrv。结果在系统的smss.exe进程中找到了!但是,这个是货真价实的系统进程,根本不要想删除。用冰刃发现smss并未加载其它模块,里面总共就三个线程,我哪敢关。难道真的得重装?我要看看mchinjdrv在smss.exe的什么地方,单击procexp中的smss.exe,procexp下面的子窗口中显示有两项:section   \BaseNamedObjects\mc2*****(我没记住,像是随机字母)    
和section   \BaseNamedObjects\mchinjdrvmap
然后我大着胆子选择了“close handle”,把两个section关闭,系统并无不良反应。此后系统服务就没有出现无端更改的情况。重启后,木马的内核模块就没有加载,系统终于恢复正常。
     
      下面的总结有些东西不知道对不对,希望向你请教一下:我觉得两个案例中的木马都已经注入到系统关键进程如smss.exe的可执行代码段中,木马的保护进程已经注入为系统服务或者是系统设备。系统进程中的木马大概通过Timer周期性检查服务和设备确保不被删除和关闭。我的疑问是,是由系统服务保证每次开机时能把木马注入到smss中呢还是smss.exe本身就已经被木马修改过了?从autorun的结果看,似乎是前者。
       我的感受是,这是我见过的最凶悍的木马。从我的两个案例看,大概是不同的变种。但都实现了潜入系统级进程的目标,我的机器上的除了注册表项略有差异、木马没有反弹端口下载木马、添加自启动项目winsmd.exe以外,基本行为都十分相似。普通的杀毒和杀木马软件对它们基本无能为力,我的经历表明在安全环境下查杀也不行,我的机器在safe mode就没有加载木马,根本查不出来。系统级的保护进程又确保了木马很难手工清除。我觉得现在可以信赖的手工软件也就是冰刃、procview,只有冰刃才能仔细检查内核模块的加载情况,只有procview才能摸清系统进程里到底有什么东西。在案例一中,我也用冰刃检查过系统进程,根本无法从exploer.exe的模块和线程中看出什么来,木马的关键字一个也没有,在这样大的模块中找木马是极其困难的。而且感染的都是维系XP运行的基本进程,怎么敢随便关其中的模块和线程。
  
    我觉得现阶段菜鸟在normal模式XP下对付这两种木马的方法是:冰刃查可疑内核模块,procview通过关键字定位木马并删除,关闭相关异常的服务和设备驱动,registry workshop删除相关键值。
  
    我担心的是,以后的木马作者如果像飘雪那样针对冰刃和procview做了规避实现隐身,我想获得ring0权限后干这些事不会没有办法,如果保护进程附着在RPC、WMI、PNP这些无法关闭的关键服务上,那时该怎么查杀呢?
   就说这么多了,谢谢。
   PS:如果可能的话,你应该考虑把你的相关文章发到《电脑报》这样的媒体上,让更多的菜鸟能得到及时有效的帮助。
   PS:鄙视一下网上所谓的手工杀灰鸽子的文章,真是堆bullshit,完全跟不上木马变种的形势了。

    以上是王刚朋友的来信照登,虽然还有一些小的错误,但还是有不少值得借鉴的地方。
   最后一个案例,那个mchinjdrv的handler应该是属于system这个进程空间中的(它接下来的第一个就是smss.exe),这些属于驱动,在Windows加载内核的时候进行加载,它位于system这个系统空间内。smss.exe是属于会话管理的,当然,也有可能其它进程注入smss.exe当中。     关于normal模式下对付流氓软件,几种办法都不错,但是对付一些比较高级的,就不行,很多流氓软件的驱动即使在安全模式下也会加载。如果在安全模式下不加载,就很容易对付。    目前比较好的办法还是 IceSword + 360safe + Procexp + 文件粉碎器。    其中文件粉碎器可以删除几乎所有的文件,包括正在运行的,象你第一个案例中提到的.tmp文件。用我介绍的两个找到可疑驱动的办法,也应该能找到你的那两个文件。一般来说,我推荐的,是先清除文件,然后再清除注册表。注册表只是一个引子而已,只要把文件清除了,注册表的值已经没有用了。   清除流氓软件和木马,我的概括是分为三步: 查——杀——防,其中第一步是最困难的。

   查:就是找出和确定哪些进程是恶意的,假冒的,有危险的。这个需要对整个windows系统有一定的了解,包括进程,线程,驱动,内核等,所以它的要求也是最广的。

   杀:这个相对来说就是比较容易,版内介绍的几个工具可以对付95%的了。

   防:现在流氓软件木马层出不尽,简直是防不胜防,不过还是有一些办法和工具可以帮助我们的。
   以后的文章大体就是按照上面的三个大类来写,欢迎指点。


网友评论:
1 网友:ljack - 2006-10-30 12:41
如何确认为就是鸽子?
有一年多没玩鸽子了,也没什么发言权,但我确定不了是否有驱动级的鸽子。
一直都认为很多驱动级的木马被误认为是鸽子

2 nslog - 2006-10-30 12:59
嗯,个人也觉得可能有误报,转发这个的主要目的是反应一些网友
在处理这个层面上的流氓软件/木马的一些心得。

3 网友:ljack - 2006-10-30 13:06
不同意文中“PS:鄙视一下网上所谓的手工杀灰鸽子的文章,真是堆bullshit,完全跟不上木马变种的形势了”

很多手工杀鸽子文,大多都是通过服务入手的,这也抓住了鸽子的根本,灰鸽子官方在06年前的版本,无论如何勤奋的频繁升级服务端,也只是做了免杀处理,根本上还是建立服务,并无驱动之说。

我没有接触过06年后的鸽子官方版本,但未见确实的驱动级鸽子,就目前所见的一些明确中鸽子求助者,也就是禁用服务了事

如果说驱动级的远程控制服务端,pcshare大概在去年4月份就实现了,号称国内首创驱动级远程控制软件,的确如此。它的Y字头系列在很长一个阶段没有相应的解决办法,这跟它不如鸽子流行有关

依旧怀疑很多人将驱动级的东东安在鸽子头上,可能与鸽子无关

4 网友:ljack - 2006-10-30 13:14
授鱼不如授渔

非常棒

在虎翼网未停掉免费ftp前,去年7月份时,我几个帐号上的鸽子肉鸡都有四五千,而服务端还是05年3月份的,太多太多的用户根本就不装杀毒软件、或者杀毒软件干脆就不升级,形同摆设,有不少人还是从事IT的

nslog,任重而道远哈~~

 

5 teyqiu - 2006-10-30 15:43
我的沙发在哪里啊。。。

已阅。

6 匿名网友 - 2006-10-31 00:36
"IE进程可以在资源管理器中发现,但并没有窗口程序。"
这不是什么灰鸽子,而是前段时间流行肆虐的流氓软件(好象是千橡还是什么的)的一种.似乎会感染QQ文件夹,替换或感染QQ正常程序或文件,如timplatform.exe.
IE进程可以在任务管理器发现,但在桌面和任务栏却没有,而且IE的进程一打开就是好多个.可以用冰刃禁止线程和协件,再删除文件,清理注册表,再重新安装QQ.否则一重启QQ就又激活了.


7 网友:狐狸吖 - 2006-11-01 09:19
循序才能渐进...

8 网友:arch - 2006-11-07 13:29
"IE进程可以在任务管理器发现,但在桌面和任务栏却没有,而且IE的进程一打开就是好多个.可以用冰刃禁止线程和协件,再删除文件,清理注册表,再重新安装QQ.否则一重启QQ就又激活了."
作为当事人,我可以明确地说这行不通。删除文件,你连文件都找不到。生成IE的线程是被随机注入到exploer.exe的,连怎么注入的都很难追查,关掉一个线程木马还是会再度生成新线程的。我这个水平的菜鸟基本查不出来,一般不懂系统编程和驱动的普通用户怎么查,即使是程序员不接触这一块也照样一窍不通。所以方法不具备可行性。
另外有人对是否是鸽子表示怀疑。这我不否认,我只是根据木马的关键字进行搜索的,你拿我文中的关键字到百度goolge搜搜看,只能和鸽子挂钩。我没兴致购买鸽子来研究,也没能力反汇编鸽子的样本,这里只好把武断地罪名安在鸽子身上,所以我称之为“变种”。
无论怎样,我都觉得鸽子的作者和买下鸽子进行大肆改造的家伙都是不道德的,即便在技术上有过人之处和创意。为了赚钱置普通公民的隐私和通信自由于不顾,严重干扰别人的学习和生活。这些人的存在,大概就是为了完美诠释“破窗效应”吧。

9 风中之渡 - 2006-11-18 22:28
用我这方法试试,可以关SMSS进程
http://hi.baidu.com/antivir/blog/item/3061b0c2c338811b0ff47778.html

10 网友:stardust - 2006-12-10 22:19
"..因为机器重装损失太大无法承受.."
============================
没有未雨绸缪吗?
一般我遇到解决不了的问题都是通过系统还原或ghost来解决的

11 网友:stardust - 2006-12-10 22:55
病毒注重传染性,流氓软件注重生存能力,而木马则注重隐蔽性.

如果一款木马软件没有作到隐蔽性,即使其他方面做得再好也是失败的.因为一般用户在发现电脑中了木马后都会不惜代价把木马删除掉,这样的话生存能力再强也没有意义(毕竟没有病毒能在格式化后还能生存的).所以我想灰鸽子也不急着去做到驱动级,它本身的隐蔽能力已经够强了,做到驱动级只是能让大家把删除环境从安全模式搬到DOS.

恶意程序会怎么发展,我想还是可能会继续针对查杀这两个阶段.
针对查这个阶段,由于我们主要是通过查看进程 模块 服务 文件(包括名称 路径 大小 描述)等来实现的,恶意程序可能会继续采用各种隐藏技术(像Rookit 线程插入 拦截相关API等技术),或者随即名称产生来达到隐蔽自身的效果.
针对杀这个阶段,恶意程序可能会继续采用Rookit技术 或者针对安全工具进行干扰破坏

而对于反恶意程序者来说,则需要提高安全工具的技术,以更坚固的盾去对抗更尖利的矛,另外在预防方面做好措施.比如说,在针对程序添加自启动项或者其他一些不正常的举动做出提示.

12 网友:stardust - 2006-12-10 23:00
安全问题的产生,我觉得一个重要的缘故在于ms的思维.
ms制作操作系统的思维是:用户是缺乏计算机知识的,很容易对计算机造成破坏,所以需要对用户的操作作出限制.而软件制作者则是可信的,可以给予最大的权限.


13 网友:untitle - 2006-12-21 02:39
目前来说,icesword(其实gmer也不错)仍然是对付malware、spyware和rootkit等程序的一个有效工具,像其中的“复制”、“写内存”功能,还有V1.2里面filereg又有多少用过呢,毕竟icesword是针对有经验的用户的,所以pjf把帮助文档写得非常简略。呵,期待pjf的icesword V2.0呀,不过似乎牛人一般都比较忙和懒呀!

来自 http://hi.baidu.com/nslog/blog/item/12a12b7fa3d5440829388a16.html


TAG: 软件

 

评分:0

我来说两句

显示全部

:loveliness: :handshake :victory: :funk: :time: :kiss: :call: :hug: :lol :'( :Q :L ;P :$ :P :o :@ :D :( :)

日历

« 2009-01-10  
    123
45678910
11121314151617
18192021222324
25262728293031

数据统计

  • 访问量: 243234
  • 日志数: 1577
  • 图片数: 5
  • 文件数: 27
  • 书签数: 176
  • 建立时间: 2006-08-06
  • 更新时间: 2008-12-26

RSS订阅

Open Toolbar