开发
kg公司2014年成立,早期做互联网金融,2017年转型做互联网科技公司,主营业务是“助贷”,也就为按揭贷款购房的客户提供赎楼及债务置换贷款等服务。
这个业务需要经常性地访问政府居住证网站,查询房产地址、房屋编码和学区房的使用情况,用于做房产的市场评估和客户风险评估。
因为手动查询效率低下,公司产品组经讨论后提出了一个建议——用爬虫软件自动查询。
2018年1月,项目经理给程序员一个抓取数据的程序源代码,程序员开始修改。
链接某市居住证网站,也就是某市公安局人口管理处的居住证系统;
可以在某市居住证网站上查询到房产地址、房屋编码等对应的资料;
软件对网站访问量能达到每小时数十万次。
查询的信息都被下载保存到公司购买的阿某云服务器上。
这个程序还被用于查询房地产中介(中原地产、链家地产、q房网等)在网上挂盘的房子信息,主要是查询房价、用作参考。
出事
2018年4月27日10:43-12:00左右,居住证系统的承建单位发现系统出现宕机现象,结合日志追踪到请求来源于应用端,请求应用服务器tomcat端口为xxxx,但xxxx端口的tomcat的localhost_access日志缺失,无法定位请求ip来源,当时怀疑是人为攻击。
此时,公司这边还不知道惹祸了,直到2018年5月17日晚上11点,服务器维护人员接到了阿某云客服的电话。阿某云说他们公司的服务器ip被网警锁定了,因有攻击行为,让他们赶紧联系网警。cto随即电话联系研发人员(应该是指程序员),对方说估计是因为居住证网站加了验证码,但公司程序没做相应的更新,就造成了程序出错发出攻击行为。
案发时,某市居住证服务平台的注册用户超过530万,服务面包括:
所有市民的网上自助受理系统;
151个派出所、街道办居住证受理点的现场受理系统;
后台接口为市网格办、市交警局、市民政局,市交委等多个政府部门提供居住证、居住登记条件查询和审核。
居住证系统受攻击瘫痪期间:
软件对某市居住证系统查询访问量为每秒183次,共计查询信息约151万条次,窃取大量建筑物编码数据,造成政府信息泄漏;
所有居住证办理、居住登记申报、信息查询、对外服务功能均无法正常工作,影响面极广;
市民无法办理居住证和居住登记,相关生产生活秩序受到严重影响。
除了此次攻击,还有一些派出所出具证明证实5月期间经常出现系统无法登陆,录入过程频繁出现掉线、系统数据异常等情况。居住证系统无法正常使用、出现异常情况的时间长达一个多月。
供述
2018年8月,cto、程序员被捕。
导出的库备份中检出多个包含房产信息的数据表,包括房产的所处位置、楼宇编号、房间编号等信息,约有2905万条;
在程序员的电脑上检测出爬虫程序的源代码;
在ip地址为xxxx的服务器检出爬虫程序,这两个爬虫软件程序均使用遍历查询的方式短时间向目标网址url地址“......”发起大量查询请求,从而实现非授权下载数据库内容。
网站遭受自动化程序攻击。
ipxxxx对居住证服务器的持续大量的访问造成了平台在……期间无法正常对外提供服务,服务器无法正常运行。
爬取的是公开信息,没有任何恶意去攻击网站和系统,只是为了提高查询效率。
没有爬取个人信息,没有在市场上买卖或者和其他公司搞资源置换,没有通过查询某市居住证网站信息获利。
软件是公司管理层开会决定开发的,由法定代表人交代技术部研发,系统里的查询和下载功能是程序员程序员负责开发的。
程序员设定的是每周三次自动查询,后面怎么实施的我也不清楚,主要是程序员负责。
他还说自己也知道“从技术上来讲,如果超过服务器承载能力的查询肯定会引起系统卡顿或瘫痪”,但因不清楚网站和系统的承载能力,加上心存侥幸,就只是口头提醒同事在服务器晚间相对空闲的时候去查询,控制一下频率。
不清楚抓取数据的原程序是谁研发的,没有因查询居住证网站而获利,这是工作任务。
3月份后就去做公司安排的其他任务了,这个程序在服务器上启动后,也没有对程序做修改和更新,也没有进入服务器的权限,权限在运维部门。
没有爬取个人信息,没有在市场上买卖或者和其他公司搞资源置换,只是用于公司业务上的参考。
4月27日在公司,5月2日在日本,当时没对程序作出修改,猜测是因为居住证平台更新了验证码登陆功能,而我们的查询软件未做相应的更新,导致程序出错,发出攻击行为。
判决
都提出自己只是过失、疏忽大意,没有预见可能会造成的后果,主观上完全没有破坏系统的故意;
都提出爬取的是公开信息,只是为了让公司业务更高效,并没有以此牟利;
cto认为自己授权程序员开发爬虫程序,只是一次性爬取,并未要求每天自动爬取,不是主犯;
程序员认为自己只是按领导指示、完成工作任务……
cto,负责并授权程序员开发涉案爬虫软件,系主犯,判处有期徒刑三年
程序员受指派开发爬虫软件,在共同犯罪中起次要作用,系从犯,判处有期徒刑一年六个月。
至于这个案子里的其他人,从公司的法定代表人、提出建议的产品经理、传达任务和给源代码的项目经理,到使用数据的业务部门的同事,都没责任,法务/合规/风控看起来更是从未出现。
总体来说,正常经营的公司,网络爬取数据引发民事纠纷的常见,涉刑的不常见。立项时多问一句“我们这么做有没有风险”“会不会出事”没坏处,毕竟看起来是“集体决策”的决策最后往往并不是集体买单。
评论