62岁程序员植入逻辑炸弹, 面临10年监禁和25万美元罚款

企业动态
一个62岁的程序员由于植入逻辑炸弹被抓了,可能会面临10年的监禁和25万美元的罚款。

 [[271906]]

一个62岁的程序员由于植入逻辑炸弹被抓了,可能会面临10年的监禁和25万美元的罚款。

这个程序员叫Tinley,是美国西门子在宾夕法尼亚州门罗维尔市的一个合同工,2002年他用Excel和VBA开发了一个软件,管理公司的电气设备订单。 这个软件工作得很好,直到2014年,Tinley在其中植入了一个逻辑炸弹。

于是,每年这个Excel软件都会出点小故障:弹出一些错误消息,按钮的大小也会发生改变。这时候西门子只好把他给叫过来,付给他钱来Fix这些Bug。

Tinley是怎么改这个Bug的呢?非常简单!把那个“炸弹”的触发日期给重置一下,然后就可以等待明年继续收钱了。

事情如Tinley所愿,运转得非常良好,直到2016年5月,他出去度假了,但是西门子要下一个紧急的订单,非常着急,可是这个Excel软件又出问题了。

在西门子公司的强烈要求下,Tinley被迫交出了这个Excel软件的管理员密码,好让其他西门子的程序员去Fix Bug ,很快这个逻辑炸弹被发现了。为了确认就是VBA脚本中的逻辑炸弹引发了过去几年的问题,西门子还请律师和程序员一起工作,一共花费42000美元。

故事讲完了,不知道大家有什么感想?

首先,肯定是不能在软件中留这样的逻辑炸弹了,但是从一个程序员的角度来讲,有这么几点可以思考的:

1. 西门子在门罗维尔市的子公司IT管理能力堪忧啊!

同样的错误,一再出现,居然没有引起他们的重视!每次Tinley过来Fix Bug 的时候,难道都没有人问问root cause吗?为什么一到特定时间软件就会显示错误信息,界面按钮的大小发生变化?(Tinley在辩护中声称这是Excel升级导致的,实际上微软的Office向后兼容性是相当好的)

2. 肯定没有代码审查

根据特定日期触发炸弹,这样的逻辑在VBA脚本中应该是非常清楚的,而VBA脚本是解释执行的,代码就在那里,只要有代码审查,肯定会被发现。

3. 遗留系统的问题

有人对用Excel和VBA来实现一个核心的订单系统感到震惊,其实这可以理解。我在网上搜了一下,门罗维尔市是个小镇,人口才3万,这里可能是西门子的一个办事处。也许他们之前都是手工用Excel来记录这些订单,后来才雇佣Tinley把工作自动化了。

2002年开发,已经用了10多年了,这说明还是能满足他们的需求的,可能就是这个原因,他们一直没有找另外一个人来接手这个软件。

但是比较悲催的是,这个系统的逻辑只有Tinley知道,只有他一个人能维护,或者这么说,别的程序员也不愿意维护这样古老的系统,让我去我也不愿意啊,要是让我把它重写成Web系统还差不多。

这就是典型的遗留系统,出了问题就去找Tinley, 没想到Tinley在里边埋了一个炸弹。

4. 版权问题

在2011年的时候,西门子就问Tinley要那个Excel的密码,但是Tinley不给,他声称他要保护他的软件。这个订单系统真的是属于Tinley的吗?

我没见到Tinley和西门子的合同,大家可以看看自己和公司签的合同,看看有没有这么一条:在合同有效期内,员工的工作成果都归公司所有,包括专利,软件,文档。

Tinley很有可能没有所有权的。

总之,Tinley的所作所为已经严重违反了法律,希望大家能引以为戒吧。

【本文为51CTO专栏作者“刘欣”的原创稿件,转载请通过作者微信公众号coderising获取授权】

 

戳这里,看该作者更多好文

责任编辑:武晓燕 来源: 51CTO专栏
相关推荐

2020-12-03 19:17:22

GDPR数据保护数据安全

2011-11-09 09:38:13

2019-07-25 12:37:08

程序员技能开发者

2020-08-07 07:46:54

漏洞安全数据

2018-04-26 12:50:17

微软Windows 10违法

2020-08-20 08:11:15

程序员技术网络

2018-11-09 11:11:42

2024-03-11 09:33:16

2012-04-05 11:06:29

2024-09-09 14:50:00

数据训练

2023-07-26 18:57:04

2021-10-11 14:07:28

比特币虚拟货币加密货币

2019-04-28 15:35:21

Facebook隐私保护信息泄露

2015-02-28 17:59:49

2024-01-05 13:56:00

2013-02-20 14:09:45

思科物联网网络

2012-02-10 09:34:02

2023-03-30 14:19:11

程序员数据报告软件开发

2020-06-02 15:25:01

程序员技能开发者

2023-06-05 11:59:11

点赞
收藏

51CTO技术栈公众号