”“大牛助手”app涉嫌干扰“钉钉“打卡正常运行,CEO张某被指控犯破坏计算机信
”
“大牛助手”app涉嫌干扰“钉钉“打卡正常运行,CEO张某被指控犯破坏计算机信息系统罪,近日新闻披露了二审结果,二审法院依然认定构成犯罪,但是量刑比一审降低了,从5年6个月降为4年。这个案件在国庆后新闻报道一审结果,到现在二审判决,一路引起很多讨论,也有不少人和快播王欣案联系起来,坚持技术无罪,该案二审辩护律师在面对新闻采访时也称二审作无罪辩护。
看待一个诉讼案件,不能仅从基本情感出发,而是要关注事实。正如很多观点认为,只是生成一个虚拟位置,何罪之有。实际上这并没有抓住这款软件的工作机制,当然法院同样也没有,但却作出相反的认定。这个案件的价值点,不在于讨论技术是否中立,而是它反映出当前立法和司法实践落后于技术发展,法院甚至没有完全查明“大牛助手”的工作机制,从而不能很好地归入法律关系之中。
从技术上看,大牛助手并非只是简单地模拟虚拟位置,钉钉在安全方面走得更远,而大牛助手同样也做得更多。本文就从诉讼角度去拆解这个案件,解决三个问题:
1、大牛助手的工作机制是什么?
2、破坏计算机信息系统罪规制的行为是什么?
3、技术与法律边界是什么?
01
要理解大牛助手的工作机制,就要先厘清钉钉打卡功能的工作机制。钉钉要实现打卡功能需经历两个环节,环节①获取用户位置,环节②判定当前位置是否有效。环节①获取位置失败,就不会进入环节②,打卡失败;环节①获取成功,但环节②判定位置无效,打卡依然失败;只有在环节①获取用户位置成功,进而在环节②判定当前位置有效,才能打卡成功。
很多模拟定位软件都是针对环节①,即产生一个虚拟位置,“骗”过那些需要用户位置的软件。但是,这招对于钉钉行不通,钉钉会在继续在②环节去判定获取的位置是否有效,如果发现在虚拟机中运行,那对于所获取的位置会被判定无效,进而打卡失败。
钉钉的工作原理,一方面反映出他们的安全团队实力很强,另一方面也解释了大牛助手并不仅仅是生成了一个虚拟位置,而是针对环节②,让钉钉“认为”自己并不是在虚拟机中运行。具体原理为:CPU、内存和其他一些模块的运行速度,在实机和虚拟机运行是不同的,钉钉通过监测自己自己一段代码的性能——比如软件内置时钟的时钟频率,在虚拟机环境和硬件环境中相差很多,从而去逆推自己是在虚拟机还是实机上运行。这里的重点在于,钉钉在环节②并不需要用户提交数据,而是“自我审查”。大牛助手为了让钉钉“认为”自己是在实机上运行,从非常用、非必要渠道提交了一系列数据,从而让钉钉判定在实机运行,进而打卡成功。
换句话说,大牛助手生成了一个虚拟位置,再主动向钉钉输入了一系列数据,即所谓的“注入式攻击”。
综上,本节的结论是:大牛助手确实主动向钉钉发送了数据。
02
现行《刑法》第286条“破坏计算机信息系统罪”规定:违反国家规定,对计算机信息系统功能进行删除、修改、增加、干扰,造成计算机信息系统不能正常运行,后果严重的,处五年以下有期徒刑或者拘役;后果特别严重的,处五年以上有期徒刑。违反国家规定,对计算机信息系统中存储、处理或者传输的数据和应用程序进行删除、修改、增加的操作,后果严重的,依照前款的规定处罚。故意制作、传播计算机病毒等破坏性程序,影响计算机系统正常运行,后果严重的,依照第一款的规定处罚。
该罪名的行为表现包括三种,对计算机系统进行删改增扰致其不能正常运行、对数据进行删改增、使用病毒(破坏性程序)影响计算机系统正常运行。那大牛助手符合上述哪一种情形?
我的观点是,大牛助手不属于上述任何一种情形。
要理解这点,就要先厘清“破坏计算机信息系统罪”立法愿意。这是一个有历史的罪名,在1997就写入了《刑法》第286条,它诞生于PC时代,甚至带着浓厚的工业色彩。从表述的语句就能看出,这是线性和单一因果的思维。实际上是把计算机系统、程序等同于工业机器,一按按键,就要启动工作,而工作结果是唯一的。比如说,在设计一台汽车时,它的功能是踩下油门就会加大发动机功率,转速会加大,车辆会提速,这就是线性和单一因果。
如果汽车受到外来因素介入,踩下油门而不能提速,说明汽车不能正常工作,设计的功能不能实现,汽车被影响了,我们就可以说汽车坏了。这个思路推导的必然结果是,正常工作就是实现功能,功能实现不了就是不能正常工作。
同样的,对待数据也是把其等同于实物仓库中的货物,不管是存储还是运输,有一件算一件,不能多、不能少、不能被掉包,如果有外来影响,那仓库(数据库)一定会发生变化,我们可以说货物(数据)、仓库(数据库)被破坏了。
所以在那个时代,把不能实现设计功能等同于不能正常工作,是符合现实和认知的。
在大牛助手案件中,有证人证言指出大牛助手让钉钉无法实现其功能,一审法院也采纳了这个观点,实际上就是把功能实现等同于正常工作的思维延续。但如果在法庭上,被告人、辩护人质问下去:钉钉系统从头到尾是否有被中断运行、宕机、用户不能使用、程序不能启动、服务器无法连接等等“不能正常运行”的表现?或许公诉人和证人都无法拿出相应的证据,因为钉钉一直在运行,不会出现上述情形。但是,“功能无法实现”就等同于“不能正常运行”的认定模式,最终还是在检察院、法院中占据了主导地位。这也是我认为的,法院未能全面审查事实。
或许,在二审时法院也意识到钉钉并没有被“破坏”到无法正常工作,于是不再认为大牛助手是破坏性程序,但意义有限,因为“破坏性程序“是该罪的第三个表现,但只要还保持“功能无法实现”就等同于“不能正常运行”的认定模式,就会认定其符合罪名的第一个表现,仍然不能改变定罪量刑的结果。
继续下去,我们可以追问钉钉打卡设计的功能。这是一个考勤机制,就必然要包括打卡失败。但前提是它还在工作,如果它不工作,就不会产生打卡成功或失败的结果,即便有大牛助手的介入,但钉钉确实仍在工作,只不过它拿到的数据并不真实。
我们要问,某个公司设计出来的程序,法律有义务保障它收集到的数据是真实的吗?但是如果是外来因素介入,向系统输入了数据呢?而这种外来数据却又没有让系统停止工作呢?
03
在互联网技术发展到今天,很多过去的线性思维需要同步更新,至少不能再把系统正常工作等同于功能实现。我们理解的功能,应该是一个不确定的结果,只要程序正常工作,就不能把功能实现作为可以诉诸法律的理由。否则,就会出现各种程序“占山为王”,把地盘先圈进来,只要有外来因素导致功能不能实现,就寻求法律保护。这对于遏制大公司无序扩张、鼓励创业公司、为后来者留下创新空间,提供法律制度上的准备。
钉钉使用的安全技术不仅具备技术意义,更有法律意义,上述环节②的存在,让破解程序但凡碰一下钉钉,都可能触犯法律。但同时也要注意的是,大牛助手并没有针对钉钉的服务器注入数据,而是在用户手机上演一出“猫鼠游戏“。法律保护的主体必然要有其边界,但现在互联网技术让这个边界变得模糊。是否只要手机安装了某个程序,该手机就成为了公司的专有领域?如果是这样,那无线传输技术中的传输线路,是否也是公司数据传输的专有领域?多个程序共存于用户手机时,相互之间的干扰、影响、竞争,法律要在哪个烈度之下介入更为适宜?
这些问题不能奢望一个刑事案件就全部解决,但至少不能忽视它们,甚至我认为不应该动不动就追究刑事责任。
话说回来,大牛助手并非就不用承担任何法律责任,它向钉钉非正常地输入数据,至少符合不正当竞争行为。《反不正当竞争法》第12条规定:经营者不得利用技术手段,通过影响用户选择或者其他方式,实施下列妨碍、破坏其他经营者合法提供的网络产品或者服务正常运行的行为:……(四)其他妨碍、破坏其他经营者合法提供的网络产品或者服务正常运行的行为。
根据法律,钉钉可以向大牛助手要求最高为获利金额5倍的赔偿,如果以获利500万计算,最高可以索赔2500万。当然,这涉及到举证的问题,在民商事活动中举证向来是重点,也是难题。不像刑事案件,钉钉在报案之后,由公安机关负责侦查工作,取证的力度、广度、深度与民商事主体在民商案件中,完全不可等量齐观,这是公权力打击犯罪行为的必然要求,但同时也是刑法谦抑性的源由,原因不言自明。
不能回避的问题时,现行的立法已经不能适应信息技术发展,刑事方面涉及计算机信息犯罪的罪名从285到287之二,共9个罪名,在学界就有是否规制范围过大的疑问。不仅是大牛助手所触犯的“破坏计算机信息系统罪”,更具有典型意义的是“非法侵入计算机信息系统罪“、”非法获取计算机信息系统数据罪“,东南大学杨志琼曾在《法学评论》撰文指出,非法获取计算机信息系统数据罪有“口袋化”倾向。通过社会新闻也能发现,现实中有大量涉及“爬虫程序”的犯罪案件。那个老生常谈的问题反复出现:爬虫技术到底能不能用,它的法律底线如何界定。
回到大牛助手这个案件,如果法院没有全面查明钉钉、大牛助手的工作机制就认定事实,恐难以法服众。我认为,在技术使用发展和法律保护二者之间仍需要进一步厘清,法律要尽可能保持克制。
特别声明:以上文章内容仅代表作者本人观点,不代表ESG跨境电商观点或立场。如有关于作品内容、版权或其它问题请于作品发表后的30日内与ESG跨境电商联系。
二维码加载中...
使用微信扫一扫登录
使用账号密码登录
平台顾问
微信扫一扫
马上联系在线顾问
小程序
ESG跨境小程序
手机入驻更便捷
返回顶部