查看: 20937|回复: 126
收起左侧

[技术原创] 女生电脑杀毒奇遇记

[复制链接]
杏林小草
发表于 2008-6-21 17:03:44 | 显示全部楼层 |阅读模式
一日,可爱女生罗妹妹递来她的爱本,称里头肯定有N多病毒。
    我问她,你怎么知道,她说:1.速度慢;2.U盘在公共电脑上用过,拿回家插到本本后杀软没有任何反应。
    我觉得她说得有道理,接手这个任务。开机,还算顺畅,杀软是D版卡巴,key早就被封,病毒库停留在三个月以前的,估计里头是病毒乐园了。
    我说:“这简单,重装系统就可以了。”
    此时,罗妹妹提出一个额外要求:明天就要背着这部机器去东莞,一去就几个月,希望马上能弄好。
    我晕倒。她那部机器,装了N个软件,要我一一重装啊,疯掉不说,时间也不够啊。
    于是冒险挺进,尝试杀毒。
    最先想到的是Avast!的开机扫描,这个功能非常简单实用。你在windows下装好Avast!,在图形界面下升级,然后配置好开机扫描的参数,重启就行了。
    不过,Avast!安装到一半,系统就死机了。hoho,看来病毒们不好对付啊。
    这时,只能掏出王牌----Linux Live CD!
    开源的操作系统果然零舍不同,可以运作于光盘之上。你猜到了,这种CD就叫Live CD。能屈能伸,既能做成只有命令行界面,也能做成具有图形界面,拿它做系统拯救盘非常合适。我选择的是ubuntu live CD,因为我自己用的就是ubuntu,我有它的安装盘,而且,它的安装盘就是一个live CD。
    把ubuntu live CD放到本本的光驱中,重启,进入BIOS的启动设备菜单,选择从CD-ROM启动。少顷,就进入ubuntu的桌面。即使运行于光盘之上,这个操作系统依然功能完备,常见应用软件一应俱全,例如Firefox浏览器、open office软件等。唯一的遗憾是,干嘛不预装一个杀毒软件呢?
    没办法,只得自己下载。在Linux下杀毒,我喜欢用红伞,因为它和win版一样的够狠。
    从官网下载deb包,安装。我已经熟悉Linux命令行了,所以,不安装GUI。如果你不熟悉,可以安装GUI,但是需要另行安装java支持。
    安装完成,打开一个终端,键入命令开始联网升级:sudo antivir --update
    为防止误删有用文件,还需要创建一个隔离区:
       mkdir /home/ubuntu/quarantine
    升级完成,开始扫描:
       antivir -s -z -v --moveto=/home/ubuntu/quarantine /media/disk
       antivir -s -z -v --moveto=/home/ubuntu/quarantine /media/disk-1
    这个命令是什么意思呢?-s代表扫描所有子目录,-z代表扫描所有文件,-v代表彻底扫描,--moveto=指定了隔离区的位置,/media/disk是扫描的起始位置。
    在罗妹妹的例子中,她的电脑有2个分区,均为NTFS格式,ubuntu能正确识别,并挂载在/media/目录下面,两个分区分别叫disk、disk-1,这些名字未必每台机器都相同,但是ubuntu都是把它挂载在/media下面的,自己找找,然后依葫芦画瓢就可以了。借助于Linux卓越的并行计算能力,我可以同时打开多个终端,并行扫描不同分区,如果分区太大,还可以并行扫描多个目录,这样可以提高扫描速度。
    正夸赞着Linux的时候,突然所有antivir进程几乎同时崩溃,桌面也变得非常缓慢。我大吃一惊,莫非遇到跨平台的牛B病毒?!Linux也感染了?!还是遇上antivir免杀?!
    跨平台恶意代码其实很常见,一个最简单的例子,设计一段所有浏览器都能执行的恶意javascript代码,就可以借助浏览器攻击Linux、BSD、mac、win平台上的用户。但是,要设计跨平台的二进制可执行文件,难度非常大,因为不同的操作系统平台,其可执行文件的格式截然不同。因此,寄生在可执行文件中的跨平台病毒极其罕见。而且,Linux的用户权限设计得很好,不容易遭到可执行文件的攻击。我觉得跨平台病毒可能性很小。
    遭到免杀也是可能的。针对扫描器的漏洞,开发出畸形的压缩包,在扫描器扫描到该压缩包时,导致扫描器崩溃。这样的攻击手法并不少见。可是,这不好解释所有独立的antivir进程同时崩溃啊,莫非它们同时遭遇畸形包?这么巧?!
    还有什么可能呢?此时,请出Unix家族的一个独家武器:虚拟终端。我先在终端窗口里执行sudo passwd root,输入root帐户的新密码,这样就激活了root帐户(注:root帐户就是Linux下的超级管理员,在ubuntu的Live CD会话期间,root帐户是默认关闭的)。由于系统很卡,所以,费了好大的劲才输入命令并执行。命令成功执行后,按下ctrl+alt+F1,此时屏幕切换到一个命令行界面。这个界面与刚才的图形界面是平行的,互不干扰的,强大吧!我在新的命令行界面中以root的身份登录,然后检查谁在疯狂地占用系统资源。我用top命令观察。这个命令每隔3秒钟更新一次进程信息,默认按占用CPU的百分比排列各个进程。我注意到系统概览中提示的内存量已经非常少了。谁占用了内存?在top界面中,我输入大写的M字母,系统自动按内存占用百分比排序,咦,最大的一个进程才占用了百分之一出点头,内存都到哪里去了?
    纳闷了一下,头脑里灵光一闪,该不会罗妹妹的电脑病毒超多,挤爆隔离区了?马上求证:
       ls /home/ubuntu/quarantine
    酷,列出的文件名占据了一页又一页的显示屏,由于系统很卡,我等得不耐烦了,ctrl+c中断它。
    病因找到了!Live CD其实是让用户在不破坏本地硬盘的前提下感受Linux的一种方法。要实现这一点,Linux在内存中开辟空间,创建虚拟硬盘,然后将它自己安装到虚拟硬盘中。我设定的隔离区正好在虚拟硬盘上,换句话说,罗妹妹爱机上的病毒撑爆了隔离区,就等于占用了内存。
    对症下药吧,把虚拟硬盘上的隔离区搬到罗妹妹的本地硬盘去:
       mv /home/ubuntu/quarantine /media/disk
    硬盘在轻轻的呻吟着,我在焦急的等待着。终于,命令完成了。忐忑不安地按下ctrl+alt+F7,切换回图形界面。成功了!运行流畅,只可惜丢了进度,得从头再来。没关系,发挥Linux用户百折不挠的精神
       antivir -s -z -v --moveto=/media/disk/quarantine /media/disk
       antivir -s -z -v --moveto=/media/disk/quarantine /media/disk-1
    (注意,隔离区的位置更换了)
    扫描完成,重启,顺利进入xp界面。安装免费的Avast!,升级,配置好开机扫描。为稳妥起见,执行开机扫描。
    至此,完成了修复女生电脑的光荣任务,得到罗妹妹奖励的干鱿鱼一包。总结经验教训如下:
1.不要随便接收女生电脑杀毒的任务!我的天,忙了一晚上,就只值一包鱿鱼干?!
2.如果你不会找key,不要装D版杀软,免得key过期了无法升级,导致病毒横行。
3.在一台病毒横行的电脑上,最好格掉重装。
4.运行Linux Live CD杀毒时,要么直接删除,格杀勿论,要么将隔离区设定到本机硬盘。
5.据个人观察,Unix版的antivir解开压缩包的能力不及win版的,所以,我的经验是在Linux下扫毒后仍需启动到win下再次扫毒。两次扫毒的意义不同,Linux下扫毒主要目的是清除可能存在的rootkit,这种恶意软件一旦感染系统,就扎根内核,很难甩掉。Linux治愈了win的痼疾,此时就可以在相对清洁的win下再次扫毒,清除其它趁火打劫进来的病毒。
6.想知道antivir for Unix的命令行参数有什么用吗?请参阅:http://bbs.kafan.cn/viewthread.php?tid=273377


------------------------------------------------------------------
小草根本就没想到各位弟兄姐妹有如此热烈的回响,哈哈,不得不开辟答辩专区

网友geeinside、 cjsu37:不会ubuntu,不会LINUX,纯支持。
答:从不会到会,有个过程的,关键是,你是否愿意转变。卡饭社区是一个学习型的社区,想想看,这里头的杀软爱好者有几个是正统学计算机或者信息安全的?我们都是普通的杀软用户。和别人不同,我们爱捣鼓。小草就是捣鼓完杀软,去捣鼓操作系统的。结果,从此爱上自由世界,和微软决裂。

网友agnt7130:咋不先试试Dr.Web呢?
答:Dr.Web是一款优秀的杀软,小草用过,感觉也很好。但是Dr.Web有几个问题。首先,它提供免费的中文版----CrueIt!,很多卡饭用这个东东做辅杀。小草曾试过用它为感染病毒的电脑消毒,界面顺利启动,但就是无法启动扫描器。其实,罗妹妹的本本可以试用CureIt,但是小草不放心,因为CureIt都不向内核注入代码,怎么能清除rootkit?注:关于“CureIt不向内核注入代码”,纯属小草个人猜测,理由是安装CureIt无需超级特权,无需重启,如果普通用户下无需重启就能向内核注入代码,那太强了!
    Dr.Web提供DOS版,小草以前介绍过,还翻译了它的说明。这个DOS版是“真正的”DOS,并非运行于windows命令行窗口的。但是,它不是免费的,弄key很麻烦。小草已经厌烦了搞key的日子,所以,压根没有考虑这个方案。

网友无尽藏海:咋不在PE里搞?
答:PE是一个解决思路,它的优点是提供熟悉的操作环境----毕竟PE也是windows嘛。但,PE成也windows,败也windows----罗妹妹本本里的windows病毒一样可以感染PE哦。只不过,PE往往运行于光盘,重启一下系统就干净了。可是,谁能保证PE再次挂载本地硬盘时不被感染?有人说,PE里可以安装防病毒监控嘛。对,确实可以,不过,光盘重启后,所有的病毒库都打回原形。而本地硬盘的加载,是在病毒库更新之前。谁能保证本地硬盘加载过程中病毒不会钻空子感染PE系统?这个空子可能是我们熟悉的autorun.ini,也可能是别的我们以前还不知道的东西。
   Linux最大的好处在于二进制可执行文件的不兼容性,这样,极大地减少Linux平台运行windows病毒的可能。
    当然,Live CD是一种方案,PE是另一种方案,各位卡饭各取所需。小草提出来,只是分享Live CD方案的思路,供各位卡饭参考。

网友solcroft:我只想知道为什么linux版杀软的病毒库里会有windows病毒的特征?
网友Precious代答:linux版的杀毒软件就是专门用来消灭windows的病毒的!

网友ifoejwifoew:如果是给本本杀毒的话,如果对方不怕失去质保或者已经过保,可以直接拆下硬盘,装到移动硬盘盒,插到其他机器上(比如带着自己的本本),再全盘杀毒。
答:对,以前我们整台式组合机时就经常这样干。不过,诚如提问的网友所说,这样去整品牌机或者本本的话,会失去质保。拆本本,更是讲究技术。小草一向吃软不吃硬(玩软件,不懂硬件),不够胆也不够格去拆她的本本。

网友wwtd:我就在WIN环境下用wubi加挂ubuntu,偶尔在ubuntu下扫描WINDOWS分区。
答:这个提议好,wubi安装Ubuntu的过程很安全,而且是在win环境下,对于新手而言,是一种“无痛”的过程。但是,这是实实在在的安装,会占有硬盘空间。不过,现在的硬盘都很大了,Ubuntu连同各个自带软件包,完全安装也这是3G多点,现在的硬盘,不在乎了。
    顺便更正网友的一个错误的提法,wubi用于在win环境下安装和初步配置ubuntu。重启后有选项让用户选择启动win还是Ubuntu。如果选择Ubuntu,这是启动的是真正的Linux,而非win下虚拟运行的Linux。

网友spaceplane:用windows清理助手来扫一遍,一般病毒就搞定了。
答:谢谢你的提议。你说的软件我没有用过,无法评论。我始终偏好系统外杀毒,总感觉引导到干净的操作系统后杀毒比较可靠,这可能是DOS时代清除引导病毒的惯性思维。

网友deane_tiantian:winpe搞定一切,用linux是自找麻烦。我承认linux很优秀,但是,它不适合我们普通人使用。
答:解决问题的方案有很多,winpe这是其中的一种。关于winpe的资料网上大把,但是详细讲述Linux下杀win毒的不多。因此,小草记述了自己的一次经历,供大家参考。另外,小草反对绝对的提法。小草认为,不存在包办一切病毒的杀软,winpe也不能解决一切问题。所以,多一条路,多一种选择。至于Linux是否麻烦,这个见仁见智。Linux有很多发行版,有的适合高手,有的很亲民。Ubuntu就属于易用的一种。不过,从windows切换到Linux,确实需要时间改变习惯。

网友frogzjut:ghost也素王道。
答:对于有备份的用户,ghost是不错的选择。问题是罗妹妹根本就不知道ghost为何物,也没有安装、使用过镜像软件。真让人头痛哦~顺便一提,已经有病毒会破坏ghost备份镜像了。

网友fish:好像比重装还麻烦~
答:重装操作系统简单,问题是那一堆的应用程序,以及应用程序的设置.......想想就要吐血

网友pengsheng1985:linux不适合个人吧!
答:小草就是一个Linux个人桌面用户。用过了,确实有个痛苦的转型、磨合过程,但是很快就能上手,现在感觉不错。

网友边缘vip:PE似乎更快一些。
答:速度问题没有比较过。但是小草觉得可比性可能不大,因为除了操作系统的设计会带来效率问题外,杀软的win版和Linux版设计得也有差别。

网友diketaozi:过程好像很复杂。
答:如果没有后面那段崩溃的意外,整个过程并不复杂。小草从这次意外中吸取教训,以后将隔离区设置到本地硬盘,此后再帮几位初级用户清理病毒,过程都很顺利。

网友zf366:在linux下升级杀毒都要打命令的啊???还有其它好多都是打命令的???我还想试玩下的呢~~要是那样我看还是算了~~~~
答:如果讨厌命令行,可以试试AVG或者Avast!,它们的GUI安装很简单。小红伞也有GUI,但是安装过程稍复杂点,所以没写出来。

网友Spiha非常较真,他提了很多问题,小草有点招架不住,其它问题可以日后慢慢整理,但是这个问题很要命,特此指出: 不知道linux下的杀软+ntfs3g是否能扫到‘ntfs数据流’,虽然利用ntfs数据流的不多但是也有一定数量的病毒在利用的。如果杀不到的话......
答:经测试,Ubuntu 8.04自带的ntfs-3g(1.2216)可以支持点名浏览数据流文件,但是这个功能默认没有开启;在开启数据流支持后,antivir for Unix仍无法扫描到数据流,除非用户指名。查阅有关文献后,小草发现数据流是一个不错的藏身之处,由此看来,Linux下杀win毒,还真有可能漏掉某些危险分子,值得警惕!谢谢spiha前辈!详细的测试经过请看http://bbs.kafan.cn/viewthread.php?tid=274264


[ 本帖最后由 杏林小草 于 2008-6-23 00:50 编辑 ]
JY-YZX714
发表于 2008-6-21 17:07:43 | 显示全部楼层
吓人吓人啊……
杏林小草
 楼主| 发表于 2008-6-21 17:11:01 | 显示全部楼层
原帖由 yzx714 于 2008-6-21 17:07 发表
吓人吓人啊……

你看完啦?
啊,吓死我啦,这么快就看完了
geeinside
头像被屏蔽
发表于 2008-6-21 17:11:12 | 显示全部楼层
不会ubuntu
tearcle
发表于 2008-6-21 17:14:23 | 显示全部楼层
赞一个!楼主强大
agnt7130
发表于 2008-6-21 17:43:12 | 显示全部楼层
咋不先试试Dr.Web呢?
无尽藏海
发表于 2008-6-21 17:44:53 | 显示全部楼层
咋不在PE里搞
cjsu37
发表于 2008-6-21 17:47:31 | 显示全部楼层
不会LINUX,纯支持.饿
zshyfabc
发表于 2008-6-21 18:06:35 | 显示全部楼层
不错,很厉害
solcroft
发表于 2008-6-21 18:08:22 | 显示全部楼层
我只想知道为什么linux版杀软的病毒库里会有windows病毒的特征
您需要登录后才可以回帖 登录 | 快速注册

本版积分规则

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

Copyright © KaFan  KaFan.cn All Rights Reserved.

Powered by Discuz! X3.4( 沪ICP备2020031077号-2 ) GMT+8, 2026-10-22 07:17 , Processed in 0.083011 second(s), 2 queries , Redis On.

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

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