2009年5月13日,上海某软件公司总经理代表全体职工专程来到杨浦区检察院送感谢信。在信中他们表达了诚挚的谢意:感谢检察院及承办人在办理此案中表现出的专业精神,使我们公司得以挺过难关,一场来势汹涌的商业信誉危机得以化解,更让1500名员工保住了工作岗位……
国庆节里的投诉电话
2007年国庆长假,当人们正享受着节日的惬意时,上海某软件公司全体员工却不得不在接连不断的投诉电话中匆匆结束假期。投诉者都是该公司客户,投诉内容也惊人一致,从该公司所购的“算量软件”存在严重病毒,在使用该软件时竟删除了用户计算机硬盘内的所有数据和应用程序。
仅一、两天时间,该公司就已经收到类似投诉四十余个。员工们明显感受到一场前所未有的信誉危机正向他们袭来。原本,员工们很为自己的公司自豪,软件研发十余年,投资近亿元,规模设施堪称业界一流,客户的赞誉和好评更是为该公司赢得了相当高的声誉。在上海,诸多重点大型建筑项目都使用过该公司的建筑“算量软件”,其销售量在行业内曾位居全国第二。如今,用户纷纷提出赔偿要求,已造成该公司直接经济损失二十五万余元。同时,用户们对该公司产品的信誉产生严重质疑,解约的要求纷至沓来。经济上的损失和舆论上的压力曾一度使该公司面临倒闭的危险。
“逻辑炸弹”制造者竟是编程员
为查找病毒的由来,该公司对每一个程序员编写的每一个软件进行了逐行逐条地检查,最后发现除了 “算量软件2008安装版5.0”及“报表软件1.0”两款软件中存在“逻辑炸弹”,嵌有删除用户硬盘数据的恶意代码外,其他软件都是安全稳定的。而这两款软件出问题部分由同一人负责研发——程序员黄志明。
黄志明,辽宁普兰店人,80后的大学生。十分巧合的是他在国庆假日前夕刚以奶奶重病需返乡探望为由向公司提出辞职,公司领导予以挽留,但他态度十分坚决。而该恶意代码的启动时间恰恰就是2007年10月1日零点。
黄志明会不会就是捣鬼的人呢?该公司遂向警方报案。警方聘请专业技术鉴定机构对黄志明的电脑进行了鉴定。虽然黄志明在辞职前已将电脑内的部分信息作删除处理,但鉴定部门运用专业技术发现他曾在电脑中编写过两个恶意代码,该代码与销售的“算量软件”中的恶意代码完全一致。于是,警方立案侦查,并网上追逃已下落不明的黄志明。
攻破“零口供”挽回商业信誉
黄志明归案后对自己的犯罪事实予以全盘否定,辩称编写该代码的初衷是因为私人电脑出现病毒,所以在单位电脑里编写了个杀毒程序,而当时自己正好在研发“量算软件”,所以就借用该软件编写个独立的杀毒程序。但是因为种种原因没有完成,时间长了便忘了。过了段时间又想起此事便试图重新编写,但还是无功而返,最后他就彻底忘了此事。所以,这个杀毒程序导致“算量软件”崩溃纯属过失。
不久后,此案移送至杨浦区检察院审查起诉。年轻公诉人何涛是此案的承办人。就此案目前的证据来说既无人证又无犯罪嫌疑人供述,如何判断黄志明存在主观上的犯罪故意,目前唯一的途径就是从技术上予以论证。不过,对于何涛来说恶意代码、逻辑炸弹等是完全陌生的名词,软件领域更是从未涉及的方面,但是要还原事实真相就必须先弄清相关概念和之间的关系,否则无从下手。为此他开始自学计算机编程的基本知识,并数次前往专业技术部门请教专业知识,到被害单位了解操作流程,等等。
经过一段时间的学习和论证,何涛已完全可以从技术的层面上来证明黄志明的主观故意。
首先,黄志明编写的所谓杀毒程序经鉴定仅有恶意删除功能,无丝毫杀毒功效。
其次,他编写的恶意代码中有调动“算量软件”中一个函数的功能。也就是说他的恶意代码是与“算量软件”挂钩的,只要一启动“算量软件”,相关函数就发挥作用,触发恶意功能的运行。这点直指黄志明坚称该杀毒程序是个完全独立程序的谎言。
再次,针对黄志明健忘的诡辩,何涛发现先后两个恶意代码黄志明都经过数次编写,而最后一次编写的时间正是他辞职的前一天。如果真的是忘了怎么会反复去修改?反复修改过的东西又怎会如此轻易忘记?
最后,身为一名专业程序员,黄志明不会不明知自己所编程序的危害性,如果不知其危害性又何必在离职前专门将这部分删除呢?
此外,黄志明是以奶奶病重回乡探望为由辞职的,而事实上他根本没有直接回乡,而是一直躲避在外数月后方才回到家乡。可见他的真正目的是逃避惩罚。
上述几方面足以印证黄志明主观上存在编写恶意代码的故意。于是,检察机关以破坏计算机信息系统罪对黄志明依法提起公诉。法庭上,黄志明仍一口咬定自己是遗忘后的无心过失。公诉人何涛遂用收集到的证据和有关鉴定结论一一加以驳斥。确凿的证据和公诉人充分的准备让法院完全采纳了检察机关的意见和认定的罪名,最终判处黄志明有期徒刑二年六个月。
判决书对于软件公司来说无疑是最好的证明,该公司并非产品质量有问题,而是个别员工的恶意行为,而该员工已受到法律的制裁。随即,该公司召集客户专门召开了新闻发布会,说明了此事的原由,并得到了客户的谅解,表示愿意继续购买该公司软件产品,一场商业信誉危机终于得以化解。

|