【K哥爬虫普法】字节前高管,离职后入侵今日头条数据库,是阴谋、还是利诱?

案情介绍
2016年至2017年间,张洪禹、宋某、侯明强作为被告单位上海晟品网络科技有限公司主管人员,在上海市共谋采用技术手段抓取北京字节跳动网络技术有限公司(办公地点位于本市海淀区北三环西路43号中航广场)服务器中存储的视频数据,并由侯明强指使被告人郭辉破解北京字节跳动网络技术有限公司的防抓取措施、实施视频数据抓取行为,造成被害单位北京字节跳动网络技术有限公司损失技术服务费人民币2万元。
上海晟品网络科技有限公司系有限责任公司,经营计算机网络科技领域内的技术开发、技术服务、电子商务、电子产品等业务。张洪禹系上海晟品网络科技有限公司法定代表人兼 CEO,负责公司整体运行;宋某于担任联席 CEO,系产品负责人;侯明强担任 CTO,系技术负责人;郭辉系爬虫工程师。张洪禹、宋某、侯明强经共谋,于2016年至2017年间采用技术手段抓取北京字节跳动网络技术有限公司服务器中存储的视频数据,并由侯明强指使郭辉破解北京字节跳动网络技术有限公司的防抓取措施,使用“tt_spider”文件实施视频数据抓取行为,造成北京字节跳动网络技术有限公司损失技术服务费人民币2万元。经鉴定,“tt_spider”文件中包含通过头条号视频列表、分类视频列表、相关视频及评论3个接口对今日头条服务器进行数据抓取,并将结果存入到数据库中的逻辑。在数据抓取的过程中使用伪造 device_id 绕过服务器的身份校验,使用伪造 UA 及 IP 绕过服务器的访问频率限制。
法院观点
上海晟品网络科技有限公司违反国家规定,采用技术手段获取计算机信息系统中存储的数据,情节严重,其行为已构成非法获取计算机信息系统数据罪,应予惩处。
判决情况
一、被告单位上海晟品网络科技有限公司犯非法获取计算机信息系统数据罪,判处罚金人民币二十万元;
二、被告人张洪禹,公司法人,判处有期徒刑一年,缓刑一年,罚金人民币五万元;
三、被告人宋某,公司联席 CEO,判处有期徒刑十个月,罚金人民币四万元;
四、被告人侯明强,公司 CTO,判处有期徒刑十个月,罚金人民币四万元;
五、被告人郭辉,公司爬虫工程师,判处有期徒刑九个月,罚金人民币三万元。
判决文书
案例分析
本案中上海晟品网络科技有限公司,采用技术手段获取今日头条服务器中存储的数据并存储到自己的数据库中,内容包括头条号视频列表、分类视频列表、相关视频及评论三个接口,符合我国《刑法》第二百八十五条关于非法获取计算机信息系统数据罪的认定:“违反国家规定,侵入国家事务、国防建设、尖端科学技术领域以外的计算机信息系统或者采用其他技术手段,获取该计算机信息系统中存储、处理或者传输的数据,情节严重”。
当然,有人会问了,视频及评论都是正常用户可以看到的公开数据,爬取为什么会触犯法律?这里需要注意的一点是”信息公开不等于数据公开“,就像政府信息公开主要在保障公众的知情权,知情并不等于获得,获得也不等于可利用,真正意义上的数据开放主要是指原始数据的开放。头条号之所以将视频信息内容允许用户观看,无非是网站或平台吸引用户的一种商业操作,并不意味着用户可以永久地享有该视频信息内容,具体到本案,今日头条采用的是流媒体技术播放,用户在观看视频时需要同时缓存该视频,但是观看完毕后,该视频的数据文件也随即消失。缓存与复制下载的区别在于,缓存意味着断电即无,而复制下载则意味着可以永久保存。因此,网站采用流媒体播放这一技术本身即意味着视频数据的非公开性,也同时意味着行为人爬取其视频文件的非法性。反之,如果网站允许用户复制、下载视频,或者说并未采取技术措施对视频数据予以保护,则意味着视频数据的公开,即使是行为人采用爬虫技术一次性大量抓取数据,也由于数据的公开性而丧失了刑法规制的必要性。
值得探讨的是,晟品网络公司在数据抓取的过程中,虽然使用伪造 device_id 绕过服务器的身份校验,使用伪造 UA 及 IP 绕过服务器的访问频率限制,但并不属于破解系统登陆密码或利用系统安全漏洞的爬虫行为,只是让反爬虫措施无法识别,本身并不具有刑法上的违法性,被告是否通过冒用用户 ID 并破解密码等方式进行未经授权的访问,无法得知,如果仅仅是设备 ID、UA、IP 的变换,本文认为并不具有特定的刑法意义,判决文书中也并未对此进行详细的描述。
反爬机制主要是针对网络爬虫的技术特征而对其实施的反制。网络爬虫的技术本质在于模拟人工手动点击从而可以一次性大量地获取数据信息,因此一般反爬机制的主要目的并非禁止对方对于网站或平台的访问,而是禁止或拒绝采用不合适的方式进行访问与浏览,例如并发过高引起的类 DDOS 行为。而身份认证机制的设置,其根本目的则在于划定网站或平台自身的隐私范围与控制领域,换言之,是为了确定计算机信息系统安全的领域与范围。据此反爬机制与身份认证机制在范围上可以产生交叉,但绝非一致,混为一谈的行为可能会降低刑事入罪的门槛从而增加了互联网用户的刑事风险,绕过反爬不一定属于刑事犯罪。
从最终的判决情况可以看出,和K哥之前写过的深圳快鸽案一样,CTO、CEO 负责并授权程序员开发涉案的爬虫程序,系主犯,程序员受指派开发爬虫软件,在共同犯罪中起次要作用,系从犯,但是!程序员同样承担了相应的法律责任!刑事犯罪留下的档案记录可能会影响三代人,也就意味着子女和孙儿都会受影响! 爬虫工程师们要多对需求进行理性分析,隐患大的需求该拒绝就拒绝,以目前已经判决了的各类爬虫案例来看,越过了法律的红线,无论最后是不是“集体买单”,爬虫工程师都不可能置身事外!愿各位爬虫工程师们:知敬畏、存戒惧、守底线,警钟长鸣!
本案很有意思的一点是,宋某和侯明强都为前字节视频项目组的高管,一个是项目经理、一个是技术负责人,从字节离职后反手爬头条视频及评论做利益转化,大家对此有什么看法呢~
【K哥爬虫普法】字节前高管,离职后入侵今日头条数据库,是阴谋、还是利诱?的更多相关文章
- python爬虫之分析Ajax请求抓取抓取今日头条街拍美图(七)
python爬虫之分析Ajax请求抓取抓取今日头条街拍美图 一.分析网站 1.进入浏览器,搜索今日头条,在搜索栏搜索街拍,然后选择图集这一栏. 2.按F12打开开发者工具,刷新网页,这时网页回弹到综合 ...
- PYTHON 爬虫笔记九:利用Ajax+正则表达式+BeautifulSoup爬取今日头条街拍图集(实战项目二)
利用Ajax+正则表达式+BeautifulSoup爬取今日头条街拍图集 目标站点分析 今日头条这类的网站制作,从数据形式,CSS样式都是通过数据接口的样式来决定的,所以它的抓取方法和其他网页的抓取方 ...
- 爬虫七之分析Ajax请求并爬取今日头条
爬取今日头条图片 这里只讨论出现的一些问题,代码在最下面github链接里. 首先,今日头条取消了"图集"这一选项,因此对于爬虫来说效率降低了很多: 在所有代码都完成后,也许是爬取 ...
- Uva 11029 Leading and Trailing (求n^k前3位和后3位)
题意:给你 n 和 k ,让你求 n^k 的前三位和后三位 思路:后三位很简单,直接快速幂就好,重点在于如何求前三位,注意前导0 资料:求n^k的前m位 博客连接地址 代码: #include < ...
- Python3网络爬虫开发实战PDF高清完整版免费下载|百度云盘
百度云盘:Python3网络爬虫开发实战高清完整版免费下载 提取码:d03u 内容简介 本书介绍了如何利用Python 3开发网络爬虫,书中首先介绍了环境配置和基础知识,然后讨论了urllib.req ...
- [leetcode]692. Top K Frequent Words频率最高的前K个单词
这个题的排序是用的PriorityQueue实现自动排列,优先队列用的是堆排序,堆排序请看:http://www.cnblogs.com/stAr-1/p/7569706.html 自定义了优先队列的 ...
- Android 高仿 频道管理----网易、今日头条、腾讯视频 (可以拖动的GridView)附源码DEMO
距离上次发布(android高仿系列)今日头条 --新闻阅读器 (二) 相关的内容已经半个月了,最近利用空闲时间,把今日头条客户端完善了下.完善的功能一个一个全部实现后,就放整个源码.开发的进度就是按 ...
- SQL Server 字段类型 decimal(18,6)小数点前是几位?记一次数据库SP的BUG处理
原文:SQL Server 字段类型 decimal(18,6)小数点前是几位?记一次数据库SP的BUG处理 SQL Server 字段类型 decimal(18,6)小数点前是几位? 不可否认,这是 ...
- Leading and Trailing LightOJ - 1282 (取数的前三位和后三位)
题意: 求n的k次方的前三位 和 后三位 ...刚开始用 Java的大数写的...果然超时... 好吧 这题用快速幂取模求后三位 然后用一个技巧求前三位 ...orz... 任何一个数n均可以表示 ...
- JavaScript如何根据当天算出前三天和后三天
经杨秀徐批准 中央军委颁发意见建设新型司令机关news 杨秀徐会见到北京述职的香港特首梁振英news 海军372潜艇官兵先进事迹报告会举行 杨秀徐作指示news 中央农村工作会议在京召开 李克强作重要 ...
随机推荐
- 提升源代码安全性的C#和Java深度混淆工具——IpaGuard
提升源代码安全性的C#和Java深度混淆工具--IpaGuard 摘要 Ipa Guard是一款功能强大的IPA混淆工具,通过对iOS IPA文件进行混淆加密,保护其代码.资源和配置文件,降低破解反编 ...
- 火山引擎 DataLeap 助你拥有 Notebook 交互式的开发体验
更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 Notebook 是一种支持 REPL 模式的开发环境.所谓「REPL」,即「读取-求值-输出」循环:输入一段 ...
- 火山引擎DataTester:企业如何使用A/B实验优化商业化能力
商业化是企业将研发成果,如新产品.新技术.新服务等,转变成可盈利的商业化产品:整个流程中包含了研发.推广.服务,全程通过精细化管理运营.商业化的本质是流量的变现,而对企业而言,商业化链路的打磨至关 ...
- #5702:Solving Order(结构体排序,水题)
原题目链接 题目大意:把颜色由多到少进行排序,从大到小的输出. 解题思路:将变量存在结构体中,然后结构体排序即可.还需要注意格式的问题. 详见代码. #include <iostream> ...
- Codeforces Round #681 (Div. 2, based on VK Cup 2019-2020 - Final) 个人题解(A - D)
1443A. Kids Seating 题意: 给你一个整数n,现在你需要从编号 \(1\) ~ $4 ⋅ n \(中选出\)n\(个编号使得这些编号之间\)g c d ≠ 1$ ,不能整除. 看了半 ...
- AtCoder Beginner Contest 197(Sponsored by Panasonic) Person Editorial
A - Rotate 先输出第二和第三个字符,然后再输出第一个字符即可 B - Visibility 以 \((x,y)\) 作为起点向4个方向探索不是 # 的点,注意一下会在\((x,y)\)重复计 ...
- java中除法结果不对。
今天遇一个非常简单地计算,计算结果居然是不对0,查了一些前辈们的资料动手实验了一下,实验结果和代码分享给大家.需要计算的公式:(7/10)*0.8 结果居然不是0.56 而是 0,最后找到原因(7/1 ...
- 【调试】crash使用方法
crash简介 crash是redhat的工程师开发的,主要用来离线分析linux内核转存文件,它整合了gdb工具,功能非常强大.可以查看堆栈,dmesg日志,内核数据结构,反汇编等等. crash支 ...
- 分享 ASCII 字符集的字模
是做 VGA 显示屏时用到的,这是字模资源:gitee 链接 以下为字模代码: // 133 * 16 * 8 字模的 parameter reg [127:0] C_ascii_character ...
- nohup 与 >/dev/null 与 2>&1 作用与区别
转载请注明出处: 在 Linux 中,>/dev/null 和 2>&1 是两个常用的重定向操作,它们用于控制命令的输出和错误信息.而且这两个参数经常 与 nohup 命令一起使用 ...