烟消火灭网

一个程序员因为写错一行代码,被判了四年半。这事发生在2018年,不是段子。 他叫李明化名),在一家做电商SaaS的小公司负责后端。公司系统有个优惠券模块,逻辑是用户领券后扣减库存。他写的那段代码在并发

漏洞入狱

一个程序员因为写错一行代码,漏洞入狱被判了四年半。漏洞入狱这事发生在2018年,漏洞入狱不是漏洞入狱段子。

他叫李明(化名),漏洞入狱在一家做电商SaaS的漏洞入狱小公司负责后端。公司系统有个优惠券模块,漏洞入狱逻辑是漏洞入狱用户领券后扣减库存。他写的漏洞入狱那段代码在并发场景下没加锁,两个人同时点领取,漏洞入狱库存只扣一次,漏洞入狱券却发了两张。漏洞入狱测试环境QPS低,漏洞入狱没暴露。漏洞入狱上线三个月,漏洞入狱被羊毛党盯上了,一夜之间刷走价值六十多万的优惠券,公司真金白银赔进去四十多万。

公司报警。警方按“破坏计算机信息系统罪”立案。李明懵了——他觉得自己只是技术疏忽,不是故意破坏。但检方认为,他作为专业开发人员,应当预见并发风险而未处理,属于“过失破坏”。最终法院判了四年半,附带民事赔偿。

我翻过判决书。里面有一句很扎眼:“被告人作为从业五年的后端工程师,对高并发场景下的数据一致性负有注意义务。”注意义务——这四个字把技术漏洞和刑事责任焊死了。

写代码的人都知道,并发问题几乎是每个后端迟早会踩的坑。教科书里讲锁、讲事务隔离级别,但真实业务里,赶工期、压测不充分、代码review走过场,太常见了。李明的代码我后来在技术论坛上看到有人贴过片段,就是一个典型的“check-then-act”竞态条件。说实话,这种bug在中小厂里一抓一大把。区别只在于,有没有被人利用,有没有造成够得上刑事立案的损失金额。

另一个案子更让我后背发凉。2021年,杭州一个运维,因为脚本里写错了删除路径的通配符,把生产数据库的备份全删了。公司数据丢了三天,直接损失过百万。他被判了两年,缓刑三年。庭审时他说了一句话:“我以为有回收站。”——但Linux的rm没有回收站,这是常识。法官没接受“我以为”。

这两件事串起来看,会发现一个很冷的逻辑:法律对技术漏洞的容忍度,远低于技术圈自己的容忍度。在技术圈,出bug是常态,修bug是日常。但在法律框架里,一个漏洞如果被利用、造成损失,写代码的人就可能从“工程师”变成“被告人”。

我不是说法律不该管。故意留后门、恶意删库,该判。但“过失”和“故意”之间的那条线,在代码世界里特别模糊。一个没加锁的扣库存操作,和一个故意写的薅羊毛脚本,在刑法第286条面前,可能只差一个“主观故意”的认定。而主观这东西,法官只能从代码、聊天记录、操作日志里反推。

有个刑辩律师跟我说过,他接这类案子最怕当事人说“我以为”。因为“我以为”在法律上约等于“我应当知道但没做到”。技术人员的“我以为”往往基于经验惯性,而法律要求的是“行业标准注意义务”。这两者之间的gap,就是牢狱之灾的入口。

现在很多公司开始给代码上“审计留痕”,上线前强制做并发测试,甚至给核心模块买保险。听起来夸张,但李明那四年半,足够让任何一个写代码的人重新掂量:你敲下的那行代码,可能不只是逻辑,还是证据。

我自己的习惯也变了。以前写删除操作,随手一个rm -rf。现在会先echo一遍路径,确认三秒再回车。不是怕丢工作,是怕丢自由。技术漏洞进监狱这事,概率极低,但一旦砸中,就是百分之百。

访客,请您发表评论:

© 2026. sitemap