我国目前并未出台专门针对网络爬虫技术的法律规范,但在司法实践中,相关判决已屡见不鲜,K 哥特设了“K哥爬虫普法”专栏,本栏目通过对真实案例的分析,旨在提高广大爬虫工程师的法律意识,知晓如何合法合规利用爬虫技术,警钟长鸣,做一个守法、护法、有原则的技术人员。

案情介绍

2018年1月至7月期间,呙某兴通过SQL注入漏洞以及编写爬虫脚本的方式,侵入计算机信息系统,获取计算机系统内存储的大量数据,其中涉及到个人信息的数量约为1500万余条,该将其获取的个人信息通过QQ销售给“Versace”、“同花顺”、“FF”、“糖果”等人,从中获利约54万余元。

公诉机关认为,呙某兴违反国家规定,侵入计算机信息系统,获取该计算机系统中存储的数据,情节特别严重,其行为触犯了《中华人民共和国刑法》第二百八十五条第二款,应当以非法获取计算机信息系统数据罪追究其刑事责任。

呙某兴对被指控的罪名无异议,但辩称起诉书指控的数量有异议,其只用了20多万条信息;对指控的入侵方式有异议,SQL技术不是入侵技术,爬虫技术只能获取网站页面的信息不能入侵系统或获取数据。

供述情况

被告人呙某兴的辩护人的主要辩护意见:

1.被告人获取计算机信息系统数据使用的SQL注入漏洞是常见的黑客技术,被告人所获取的信息多为网站上公开的信息,只是将SQL方式作为一种收集手段、采用爬虫脚本具备合法性;

2.对起诉书指控涉及个人信息数量1500万余条有异议。获取的计算机信息系统数据有部分无效数据、涉案信息数据存在重复性、非法获利与涉案信息数量不对应;

3.对指控被告人获利54万元有异议,被告人通过爬虫脚本获得信息销售所得利益应属合法收益,应予以扣除;

4.被告人主动交代犯罪事实,认罪悔罪态度好,犯罪情节较轻,愿意缴纳罚金,建议对其适用缓刑。

法院认为,被告人呙某兴违反国家规定,侵入计算机信息系统,获取该计算机系统中存储的数据,情节特别严重,其行为已构成非法获取计算机信息系统数据罪,公诉机关指控成立。

关于被告人及其辩护人所提对起诉书指控涉及个人信息数量1500万余条有异议,部分计算机信息系统系数据系无效数据且存在重复计算问题的辩解和辩护意见,本院认为,公诉机关对被告人获取的信息进行重新梳理,合理推断出1500万余条个人信息,能够识别特定自然人身份或者反映特定自然人活动情况,故对该项辩解及辩护意见,本院不予采纳。

关于被告人及其辩护人所提获取计算机信息系统数据使用的SQL注入漏洞只是一种收集手段、采用爬虫脚本具备合法性,获取的信息多为网站上公开的信息的辩解和辩护意见,本院认为,被告人使用SQL注入漏洞以及编写爬虫脚本的方式侵入计算机信息系统,获取计算机系统内存储的大量数据,其中涉及到个人信息的数量达到约1500万余条,并非网站页面信息,故对该项辩解及辩护意见,本院不予采纳。

关于辩护人所提对指控被告人获利54万元有异议,应扣除被告人通过爬虫脚本获得的合法信息收入的辩护意见,本院认为,被告人通过编写爬虫脚本的方式非法入侵计算机信息系统,获取计算机系统内储存的信息并出售所得系违法收入,应计入违法所得,故对该项辩护意见,本院不予采纳。

关于辩护人所提被告人主动交代自己的犯罪事实,认罪悔罪态度好的辩护意见,本院认为,被告人辩称其使用SQL注入漏洞以及编写爬虫脚本的方式均未入侵到计算机系统,获取的只是网站页面信息,不属于如实供述自己的罪行,故对该项辩护意见,本院不予采纳。

判决情况

被告人呙某兴犯非法获取计算机信息系统数据罪,判处有期徒刑五年,并处罚金人民币二万元。对被告人呙某兴违法所得人民币54万元依法予以追缴或责令退赔。

判决文书全文:

https://wenshu.court.gov.cn/website/wenshu/181107ANFZ0BXSK4/index.html?docId=JfzQF7Z4/9e1lWn1usoF7Iqj7B9Z57edExldSpEjnzIAIFtb8Dxqsp/dgBYosE2gc2cTGVpSTHaQan7hFsr1Z3QhUB9pTwx7alMunkuJwH71nc0rzmfld8ZkrIqaAiag

反思总结

法院以呙某兴未经网站授权,利用特定网站的漏洞,使用 SQL 注入漏洞以及编写爬虫脚本的方式侵入计算机信息系统,获取计算机系统内存储的大量数据,其中涉及到个人信息的数量达到约1500万余条,且并非网站页面信息为由认定了该行为的非法性,我们先来了解下 SQL 注入和网络爬虫的基本原理:

  • SQL 注入:当我们访问动态网页时, Web 服务器会向数据访问层发起 SQL 查询请求,如果权限验证通过就会执行 SQL 语句。这种网站内部直接发送的 SQL 请求一般不会有危险,但实际情况是很多时候需要结合用户的输入数据动态构造 SQL 语句,如果用户输入的数据被构造成恶意 SQL 代码,Web 应用又未对动态构造的 SQL 语句使用的参数进行审查,导致其传入的“数据”拼接到 SQL 语句中后,被当作 SQL 语句的一部分执行,可能会导致数据库受损(被脱库、被删除、甚至整个服务器权限陷)。
  • 网络爬虫:网络爬虫又称网络蜘蛛、网络机器人,它是一种按照一定的规则自动浏览、检索网页信息的程序或者脚本,网络爬虫能够自动请求网页,并将所需要的数据抓取下来,通过对抓取的数据进行处理,从而提取出有价值的信息,高水准者可 ”所见即所得“,意为只要是能看的内容就能爬取到,重点在于采集的都是正常用户能浏览到的内容。

所以侵入计算机信息系统并不是爬虫所能做到的事,数据库层面的渗透亦或是攻击应当是通过 SQL 注入实施的,而法院将编写爬虫脚本列为呙某兴侵入计算机信息系统的方式之一,是因为非法获取计算机信息系统数据罪与侵犯公民个人信息罪是法条竞合的关系,指一个犯罪行为同时触犯数个具有包容关系的具体犯罪条文,依法只适用其中一个法条定罪量刑的情况。不论是如呙某兴辩护中所述其利用爬虫技术采集的是某些网站上公开的个人信息,亦或是利于 SQL 注入技术渗透进数据库,再利用爬虫批量采集个人信息,这都是触犯了法律的 “红线” 的,理论上看,爬虫作为一项网络信息搜索技术,具有技术中立性,并未被我国现行法律所明令禁止,但是在司法实务中,“技术中立原则” 的适用是有边界的,如果使用技术的人用以危害社会,利用技术手段实施犯罪行为,则不因 “技术中立原则” 而免除刑事责任,如果涉及的是公民个人信息,基于特别法条优先于普通法条的原则,呙某兴的行为,适用于侵犯公民个人信息罪,对于公民个人信息数据一定要慎之又慎!

需要注意的是,一些网站会采取反爬措施,包括封 IP、封账号、JS 参数加密、代码混淆、浏览器指纹、TLS 指纹、验证等,以增加爬虫程序资源的成本,更有企业积极开发反爬虫技术以限制网络爬虫的访问权限,绕过网站反爬虫措施获取数据属于违背权利人意愿读取、收集数据,将有较大可能被认定为对计算机信息系统的 “侵入”,进而以非法获取计算机系统数据罪定罪处罚。对于 “侵入” 的理解:在以往判例中,司法机关主要基于以下两种路径判定对计算机信息系统的 “侵入”:一是无用户身份的侵入,即通过盗取、破解密码等方式进入系统;二是超权限访问的侵入,即具有合法用户身份,但超越自身授权范围访问信息资源。

信息公开不等同于数据公开,对于爬虫工程师来说,并不需要去厘清概念背后的区别与联系,只是在业务开展中需要树立风险防范意识,贸然爬取公开可见的信息仍会存有一定刑事风险,仔细甄别所要爬取的数据类型,谨慎处理包含公民个人信息、商业秘密等内容的信息,希望大家凡事三思而后行,老话长谈,谨记一点,公司是老板的,自由是自己的,法律是不容触犯的!

【k哥爬虫普法】非法入侵计算机信息系统,获取1500万余条个人信息!的更多相关文章

  1. 【转】计算机信息系统安全保护等级划分准则(GB 17859-1999)

    计算机信息系统安全保护等级划分准则(GB 17859-1999) 概述 计算机信息系统安全保护等级划分准则(GB 17859-1999) 1 范围 本标准规定了计算机系统安全保护能力的五个等级,即: ...

  2. 计算机信息系统安全保护等级划分准则(GB 17859-1999)

    概述 计算机信息系统安全保护等级划分准则(GB 17859-1999) 1 范围 本标准规定了计算机系统安全保护能力的五个等级,即: 第一级:用户自主保护级: 第二级:系统审计保护级: 第三级:安全标 ...

  3. 爬虫(十六):scrapy爬取知乎用户信息

    一:爬取思路 首先我们应该找到一个账号,这个账号被关注的人和关注的人都相对比较多的,就是下图中金字塔顶端的人,然后通过爬取这个账号的信息后,再爬取他关注的人和被关注的人的账号信息,然后爬取被关注人的账 ...

  4. [Python爬虫] 使用 Beautiful Soup 4 快速爬取所需的网页信息

    [Python爬虫] 使用 Beautiful Soup 4 快速爬取所需的网页信息 2018-07-21 23:53:02 larger5 阅读数 4123更多 分类专栏: 网络爬虫   版权声明: ...

  5. Python之爬虫(二十一) Scrapy爬取所有知乎用户信息(下)

    在上一篇文章中主要写了关于爬虫过程的分析,下面是代码的实现,完整代码在:https://github.com/pythonsite/spider items中的代码主要是我们要爬取的字段的定义 cla ...

  6. Python之爬虫(二十) Scrapy爬取所有知乎用户信息(上)

    爬取的思路 首先我们应该找到一个账号,这个账号被关注的人和关注的人都相对比较多的,就是下图中金字塔顶端的人,然后通过爬取这个账号的信息后,再爬取他关注的人和被关注的人的账号信息,然后爬取被关注人的账号 ...

  7. 利用爬虫、SMTP和树莓派3B发送邮件&续集&(爬取墨迹天气预报信息)

    -----------------------------------------------学无止境----------------------------------------------- 前 ...

  8. python爬虫实战(一)——实时获取代理ip

    在爬虫学习的过程中,维护一个自己的代理池是非常重要的. 详情看代码: 1.运行环境 python3.x,需求库:bs4,requests 2.实时抓取西刺-国内高匿代理中前3页的代理ip(可根据需求自 ...

  9. JAVA获取计算机的IP、名称、操作系统等信息

    [java] view plaincopyprint? import java.io.BufferedReader; import java.io.InputStream; import java.i ...

  10. python:爬虫获取淘宝/天猫的商品信息

    [需求]输入关键字,如书包,可以搜索出对应商品的信息,包括:商品标题.商品链接.价格范围:且最终的商品信息需要符合:包邮.价格差不会超过某数值 #coding=utf-8 ""&q ...

随机推荐

  1. 创元集团的数智化实践 这次选择了和火山引擎 VeDI 搭档

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 近日,上海创元化妆品有限公司(以下简称"创元集团")与火山引擎数智平台 VeDI 达成合作,旨 ...

  2. 火山引擎DataLeap联合DataFun发布《数据治理知识地图》

    近期,火山引擎DataLeap和技术社区DataFun联合发布<数据治理知识地图专业版V1>(以下简称"地图"),地图将数据治理的领域.流程.技术.工具等内容进行系统化 ...

  3. 火山引擎 DataLeap:在数据研发中,如何提升效率?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 在数仓及中台研发过程中,研发人员经常需要在不同任务中维护相同或类似代码,不仅费时费力,并且代码迭代后也面临不同业务 ...

  4. 火山引擎 DataTester:A/B 实验如何应用在抖音的产品优化流程中?

    更多技术交流.求职机会,欢迎关注字节跳动数据平台微信公众号,回复[1]进入官方交流群 日前,在 WOT 全球创新技术大会上,火山引擎 DataTester 技术负责人韩云飞做了关于字节跳动 A/B 测 ...

  5. Solon 框架,maven 单月下载量突破 200 万了!

    Solon 是什么开源项目? 一个,Java 新的生态型应用开发框架.它从零开始构建,有自己的标准规范与开放生态(历时五年,已有全球第二级别的生态规模).与其他框架相比,它解决了两个重要的痛点:启动慢 ...

  6. Solon 1.6.34 发布,更现代感的应用开发框架

    相对于 Spring Boot 和 Spring Cloud 的项目 启动快 5 - 10 倍 qps 高 2- 3 倍 运行时内存节省 1/3 ~ 1/2 打包可以缩小到 1/2 ~ 1/10(比如 ...

  7. Axure Axhub Charts 数据编辑、显示

    Axhub Charts图表元件库: https://www.axureshop.com/a/100749.html

  8. MySQL Select 语句执行顺序

    一条 SQL 查询语句结构如下: SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOIN ...

  9. 聊聊大语言模型(LLM)的 10 个实际应用

    近期,苹果公司正在悄悄研究可以挑战的 OpenAI.谷歌和其他公司的 AI 工具,建立了自己的框架来创建大语言模型,并创建了一个聊天机器人服务,一些工程师称之为"Apple GPT" ...

  10. .NET 6 整合 Autofac 依赖注入容器

    前言 一行业务代码还没写,框架代码一大堆,不利于学习. 常看到java的学习资料或博客,标题一般为<SpringBoot 整合 XXX>,所以仿照着写了<.NET 6 整合 Auto ...