2007年4月29日星期日

别买NEC光驱

我的光驱是NEC的3550A,买他的原因当然就是冲着可以刷成4551A,支持光雕,虽然我一张盘都没雕过。购买时间是去年夏天,至今一年都不到。可前两天突然发现,买来的DVD和自己刻的DVD-R都不能读了。而且奇怪的是,我发现在Windows和Linux中都不能读的盘,在Dos里却可以读出来。

上网一查,发现这原来不是特例。很多人都遇到了NEC光驱读盘能力弱、使用一段时间后不认自己刻的DVD-R等问题。有没有解决办法也众说纷纭,有把4551A刷回去变好的,有说清理一下光头有用的,不过有一点是可以肯定的了,NEC光驱口碑很次。

那些办法我都还没试过,反正手头还有一个闲置的康宝。不过想想堂堂日系一线厂商,人品竟然沦落成这样,也真是够可怜的。奉劝大家一句,别买NEC的光驱。

2007年4月11日星期三

少年包青天3

“明天我就要走了。你收拾好一切,跟我一起走好吗。你放心,我会好好疼你。你病了,我喂你吃药。你累了,我让你靠在我胸口休息。你老了,我就拉着你的手,我们一起去看夕阳,一起回忆双喜镇的事,回忆年轻时的事,回忆我们的儿子出生时,孙子出生时的事。你放心,我一定会好好照顾自己,不让自己比你先死。我会照顾你到最后,让你舒舒服服地走。然后我会立刻下去陪你,不让你有一点孤独。”

这是《少年包青天3》里,公孙策的对白。要不是因为有PPLive,我也不会看到。如果仅仅是肉麻,那也就罢了。问题在于公孙策是男的,而他倾诉的对象,也是男的。这本是剧情最关键的秘密,我当时就能知道并不是因为我比“大宋第二聪明人”聪明,而是因为我看过《金田一》。

这部强片第一个故事就来“唇红齿白,模样俊俏”的男扮女装,第二个故事不但有日本三大神器,还有火贺派忍者小萝莉。除了这些,对白里还有二尾子、大小和尚的龌龊事、清秀的禁脔,连“对足踝有特别癖好”这种话都有,让人怀疑《秦始皇》是不是真的审了有六年。

若说抄,那是一定的了。不但有日本人的,还有斯皮尔伯格和金大侠。在我看这也不是太紧要的事,反正也就是娱乐大众的一个故事。孔孟、老庄、诗词歌赋,张旭、颜真卿、吴道子,太极、两仪、四象、三天二十八宿,现在的孩子能接触到中国传统的机会不多,以这样的方式传承些东西,也不错。

2007年4月6日星期五

令人失望的谷歌拼音

头一回见到“谷歌”这名字,不是在网络上,而是在《经济观察报》上看到的平面广告。虽说无肉使人瘦,可那占了整版的水墨竹广告,还是让我觉得很俗气。一种说不清的感觉,味道不太对。之后,“Google”还是google.com。反正cache一样不能用,gmail、gtalk也没变成谷歌邮、谷歌通,我找不到任何改变习惯的理由。

看报纸、看杂志、看网站,“本地化”这三个字看得实在有点腻味。感觉那是说给上司听的,说给政府和股民听的。反正只要不撞墙,不管是Google中文还是谷歌,不管服务器和公司注册地是在美国还是中国,对我来说也没多少区别。不过关心还是要关心的,毕竟是几乎天天用到的服务。起码,也可以当娱乐版来看。

这不,传言了大半个月的谷歌输入法真的放出来了,各处讨论又是一派热火朝天的景象。这个热闹一定要凑,我尝试从智能ABC换到搜狗拼音,还在磨合期中,是经不起什么诱惑的。可惜用了一小会,感觉就跟看见那幅广告时一样,味道不对。

谷歌拼音跟搜狗拼音,实在太像了。后来者的谷歌所提供的功能,几乎就是搜狗拼音的一个子集。抄袭或许还谈不上,毕竟后来者借鉴前辈是很正常的事。有很多功能,也未必是搜狗独创。但即便这么想,我也没办法对谷歌这次拿出来的东西,赞一个好字。

谷歌拼音比搜狗拼音多出来的功能有三个。“一键搜索”无非又一个谷歌工具栏,没什么用处。“网络同步”虽然是一个好主意,可也没什么特别的。让我眼前一亮的,只有“英文提示”而已。像我这样英文不好记性又差的人,是挺喜欢有个人能帮忙提示一下的。

可是,拼音输入法是用来输入中文的。谷歌的这几个“创新”,无一与“输入法”的核心功能有关。输入法真正该干好的事情,谷歌拼音却未必做得有多好。

中国人一样要用到英文,谷歌显然意识到了这一点,可“英文”并不等于26个小写字母。试试“v/etc”?“/”键根本就没反应。再试试“vUser-Agent”?上屏的就是“vUser-Agent”,包括前面的那个v。

中文多音字非常多,也因此才发展出了以词定字和拆字辅助码的功能,谷歌拼音目前却一概欠奉。靠“智能组词”解决多音字问题?别开玩笑了。除非谷歌不想做输入法,否则这个功能肯定会加上的。

让他我对搜狗拼音深恶痛绝的错词错音就更不要提了。以搜狗拼音Blog上一篇《每周错词总结》为例。捅漏子、胡涂、倘徉、份量、忿忿、伏输、伏罪、蝴碟、希罕、旁徨、余辉、直接了当,17个错词谷歌拼音有12个。“pingzhuhuxi”出来的是“屏住呼吸”,“bingzhuhuxi”出来的是“摒住呼吸”。“张柏芝”是“zhangbaizhi”,“zhangbozhi”居然是“张伯芝”。

keso说:“用市场创新去代替技术创新,最终可能给竞争者留出机会。”这话我同意,所以“搜狗酷字”之类的功能我也不喜欢。但“放弃搜狗拼音,是因为他们在取得最初的成就之后,过早地将注意力放在了‘换肤’这种噱头上”则不然。与吸引小男生小女生的“换肤”相比,“一键搜索”有的只是铜味。产品品质还差人家一大截就开始惦记自己的流量,又是谁比较不可期?

2007年4月4日星期三

病毒之后

究竟是31号还是1号中的毒,我也不记得了,总之这是个蛮特别的愚人节。感觉,有一点复杂。

虽然裸奔习惯的确不好,可这次事件我就算装了什么病毒监控也一样没用。有人提到说他25号就已经中毒了,那离我在网上找寻解决办法至少有五天。如果是我花了钱,买了一套杀毒软件,却发现不但没有尽到保护责任,反应速度还这么慢,那种感觉肯定很糟。一众杀毒软件商们,看来也就这样了。

在刚发现感染病毒的时候,我并没太当一回事。利用了Windows的新漏洞是挺先锋,可病毒本身并没什么特别的。实际上我用Ruby写的清除程序原始版本,只有50来行。包括分析病毒行为和写代码在内,也不过三、五个小时。

不但如此,我甚至还觉得有一点好玩。毕竟我自己的机器几乎没中过毒,该病毒修改可执行文件的手法也不邪恶,所以刚开始也就没有感到作者很恶意。而且病毒试图在hosts文件里屏蔽的那些网站,都不是什么好去处。过招谈不上,似乎是一种交谈的感觉。他给我弄了点小麻烦,可摊子还没烂到无法收拾。只可惜后续的发展,让事情的味道有了些变化。

先是有很多人在我那篇《遭遇Sysload3.exe》里留言,好像认定了我会放出一个“病毒专杀软件”出来一样。我本来只是想弄个rb2exe,帮帮找到我这里来的人而已。可是留言的人不止一个两个。控制台?命令行?想想也知道那对普通用户来说意味着什么。

既然能帮到那么多人,那这件事就不能不管。而且当时在Google里搜索sysload3.exe,我这里排在搜索结果第一位,就更确定了我的想法。于是去下了一个VB6精简版,花了一个晚上写出第一个版本的rmsl3.exe。真的很久很久没用VB6了,手很生。现在让我写VB6的代码,肯定不太舒服,但怀念的感觉倒是蛮真实的。

为了尽快放出程序,导致界面很简陋,功能也不完善,所以我写了个尽可能详细的说明。用户环境千差万别,没经过什么测试,就对硬盘里成百上千个文件进行读写可不是闹着玩的。我注明了不要随意转载,因为我不想自己写的代码给任何人带来损失。不过还是有人转了,说明也有,就一句话,还有一句对作者的感谢。

我没有责怪那位转载者的意思。在找不到解决办法的情况下发现我的程序,恐怕我说什么都值得试一试。转载如果能帮到更多的人,当然也不违背我的本意。可我仍旧有一种沟通困难的感觉,是理念和角度的不同,还是单纯太毛躁?或许我也不该这么谨小慎微,该对自己的代码更有自信才对。

至于病毒本身和其作者。因为我赶着写程序,直到第一个版本完成了,我才发现这个病毒会篡改php、html等文件的内容。如果跑IIS的Web服务器感染了这个病毒,那可真是一次撂倒一大片。这个发现,让我对病毒作者的感觉有了很大变化。

实际上并不是所有的病毒都只干“坏事”,像CIH那样的毕竟是少数。有些病毒只是占你一点硬盘、耗你一点内存,甚至还有帮你杀其他病毒和堵系统漏洞的病毒。虽然这种未获许可的行为仍然不具有正确性,可我宁愿认为这是高手们的“调皮”。多多少少,我能体会这种感觉。

可是这个病毒篡改php等文件的方法是直接覆盖。这与感染可执行文件的方式不同,是没有办法恢复原始内容的。数据无价,硬盘坏了“想死的心都有”,这话我听过很多次。我认为这是界限,所以“调皮”变成了“恶意”,我甚至有那么点失望的感觉。

不管怎么说,今年的愚人节早就过了。我想这个病毒的作者,应该也看不到我这篇东西。目前rmsl3.exe已被下载了70来次,Google里“sysload3.exe”这个关键字的搜索结果,前三页都没有我的链接,大概不会有多少人找上门来了。所以,这件事情可以告一个段落了。

2007年4月1日星期日

遭遇sysload3

因为机器比较老旧,我一向都是裸奔,下了什么东西运行以前,顶多用AVPDOS32扫描一下。这的确不是一个好习惯,以下就算是一个教训。

事情是这样的,昨天找了几个PS2相关的软件,就发现系统不太正常。执行一些控制台程序,例如ruby.exe、lftp.exe、grep.exe等,会弹出一个新控制台窗口,隐隐觉得不对。打开任务管理器一看,有若干个notepad.exe和iexplore.exe进程。可我当时一个记事本都没打开,肯定有问题。

查看系统启动加载项,发现了诸如iexpl0re.exe、c0nime.exe、winlog0n.exe之类的东西,显然是中木马了。我首先想到的就是360安全卫士,奇虎从良以后这个产品的口碑还是不错的。下载运行,查出了两个恶意软件cmdbcs和upxdnd。强制停掉进程后修复,并把加载项及其指向的文件全部删掉后重启,这下360报告没有找到恶意程序了,可事情还没完。

我上了一会网后还是觉得不对,因为硬盘莫名其妙响了一阵。打开任务管理器,又是若干个notepad.exe和iexplore.exe,注册表的情况也一样,那些木马又都回来了。因为重启以前我仔细检查过,所有的自动加载项和系统服务应该都没有问题。这说明木马并不是在系统启动时加载的,而且这次重启后我并没有运行任何可疑的程序。看来我遇到的并不仅仅是木马那么简单,很有可能是一个会感染可执行程序的病毒。

正好早就听说有款叫“驱逐舰”的杀毒软件用了俄国大蜘蛛Dr.Web的引擎,资源占用很少。下回来之后才发现用网上流传的序列号可以安装,但无法升级病毒库,还得用专门的第三方升级工具才行。早知如此我就下试用版了,反正可以用一个月。这是题外话,以后再说。

用驱逐舰扫描后发现了很多可疑文件,病毒名称为DLOADER.Trojan,括号说明“智能启发”。资料里说,所谓“智能启发”就是查找未知病毒的功能。可麻烦的是,如果选择清除病毒,驱逐舰会把可疑文件整个删掉。我硬盘上被感染的文件不止一个两个,如果全删等于是完完全全重作系统,那还不得累死。再尝试用最新病毒库的卡巴斯基来查,这回更是一无所获。八成是个新病毒,这些个杀毒软件都还没反应呢,只好死马当成活马医了。

想了想,Loader是加载器的意思,D要么是Double要么是Dll。从控制台程序会弹出一个新窗口执行看,病毒可能是修改了可执行文件,先执行了他自己的代码后再新开一个进程执行原始程序。挑了两个被感染的文件和原始文件对比一下,发现都多出了12808字节。如果只是单纯把两个可执行文件合并成一个,那感染文件里肯定有两个PE头。

确认的办法很简单,每个可执行文件头部都有一句“This program cannot be run in DOS mode”(不同的编译器不一样,这是VC的),搜就是了。果然,在偏移量0×3200找到了第二个PE头。0×3200是十进制的12800,试着把感染文件头部12800字节和最后的8字节去掉,与原始文件对比,相符。我应该是不需要重装系统了,松了一口气……

恢复文件有眉目了,顺带我还发现了些挺有趣的东西。这个病毒会调用IE去下载文件,这样至少能躲过防火墙。下载的目的文件是http://a.2007ip.com/css.css,这实际上是一个ini文件。病毒会根据这个文件的指示下载若干个木马,上面提到upxdnd和cmdbcs就是这么来的。还有一个http://if.iloveck.com/test/hos.gif,这是个纯文本文件,用来覆盖hosts,屏蔽若干网址。UpdateMe指向的是病毒文件,也就是说这个病毒是可以通过网络升级的。

最有趣的是还是tongji那一行,这一行指向http://if.iloveck.com/test/tongji.htm。这是一个html页面,调用了CNZZ.com的统计代码。每一台被病毒感染的机器都会用IE调用这个地址,包括IP、系统版本、浏览器信息等都会被记录下来。病毒作者给“网站”取的名字叫“安装率”,可惜阅读统计报告需要密码,不然我也想看看究竟有多少人中了他的招。

好了,说正经的:

  • 病毒原始文件名为sysload3.exe,长度12800字节,MD5校验99720C731D19512678D9594867024E7E。
  • 病毒程序被执行后,会试图添加启动加载项“System Boot Check”。
  • 可执行文件被感染后增加12808字节,头部12800字节,尾部8字节。病毒体长度不定,被感染文件尾部的8字节即为病毒体长度。
  • 到目前为止,卡巴斯基无法发现该病毒,驱逐舰虽然可以发现被感染文件,但不能清除。
  • 用360安全卫士删掉恶意软件,并将注册表中的木马加载项删除后,可清除掉病毒主体。但如果有被感染文件存在,一旦执行系统将再次被感染。
  • 打开360安全卫士的保护功能,当病毒进行注册表操作时会报警,可防止病毒被添加进系统加载项,这样能进行带毒操作。可我不清楚病毒代码究竟干了多少事,所以这不是个好主意
  • 我不想一个个去试那些杀毒软件了,所以会尝试自己写一个清除程序。如果在看到这篇东西时兄台的杀毒软件仍然对付不了这个病毒,可以留言问问我。

Update

因为我似乎是网上第一个放出该病毒删除工具的人,因此这一篇也成为我写blog以来,访问和留言人数最多的东西。当时还有人跑来留言,为别的某些网站和论坛打广告拉人,想想也蛮有意思的。现在事件已经过去,问题也都解决了,所以这里不再提供我所写的病毒删除工具,同时把文字恢复到其本来的样子。