網絡爬蟲的合法性討論

摘要:隨着大數據時代的到來,數據已經滲透導生活和工作的各個領域,“網絡爬蟲”在大數據時代是一種不可或缺的高效獲取海量數據的重要工具。 爬蟲作爲一種計算機技術就決定了它的中立性,因此爬蟲本身在法律上是不被禁止的,但是利用爬蟲技術獲取數據這一行爲是具有違法甚至犯罪的風險的。

1.網絡爬蟲和相關基本概念

1.1網絡爬蟲的概念

網絡爬蟲(又稱爲網頁蜘蛛,網絡機器人)是一種按照一定的規則,自動的抓取萬維網信息的程序或腳本。

1.2爬蟲的產生背景

隨着網絡的迅速發展,萬維網成爲大量信息的載體,如何有效地提取並利用這些信息成爲一個巨大的挑戰。搜索引擎(Search Engine),例如傳統的搜索引擎Googel,百度和Yahoo!等,作爲一個輔助人們檢索信息的工具成爲用戶訪問萬維網的入口和指南,網絡爬蟲是一個自動提取網頁的程序,它爲搜索引擎從萬維網上下載網頁,是搜索引擎的重要組成。傳統爬蟲從一個或若干初始網頁的URL開始,獲得初始網頁上的URL,在抓取網頁的過程中,不斷從當前頁面上抽取新的URL放入隊列,直到滿足系統的一定停止條件。

1.3網絡爬蟲的應用領域

搜索引擎、新聞聚合、社交應用、輿情監控、行業數據等。

1.4Robots協議

robots協議也叫robots.txt(統一小寫)是一種存放於網站根目錄下的ASCII編碼的文本文件,它通常告訴網絡搜索引擎的漫遊器(又稱網絡蜘蛛),此網站中的哪些內容是不應被搜索引擎的漫遊器獲取的,哪些是可以被漫遊器獲取的。robots.txt應放置於網站的根目錄下。如果想單獨定義搜索引擎的漫遊器訪問子目錄時的行爲,那麼可以將自定的設置合併到根目錄下的robots.txt,或者使用robots元數據(Metadata,又稱元數據)。
robots協議並不是一個規範,而只是約定俗成的,所以並不能保證網站的隱私。

1.5反爬蟲技術與反反爬蟲技術

爬蟲技術與反爬蟲技術就像貓鼠遊戲,同時這個遊戲中暗藏要承擔法律責任的風險。常見的反爬蟲機制與反反爬蟲應對機制應如下:
登陸驗證->應對方案1:抓包模擬登陸,僞造請求頭後通過構造一系列Get和Post請求模擬瀏覽器的行爲騙過服務器後獲取到網站的Cookie(微博爲例)。
->應對方案2:使用自動化測試工具操縱瀏覽器模擬人的行爲,真實的操縱瀏覽器打開一個網站並登陸後存儲Cookies。由於爬蟲採集的頁面較多,一般使用無頭(沒有界面)的瀏覽器Phantojs。
設置驗證碼->應對方案1:對接雲打碼平臺,平臺會直接提供對接所需要的腳本很方便。
->應對方案2:訓練專用的驗證碼識別模型,由於一般沒有相應的數據集需要手動標註工作量巨大,在爬蟲需要長期大量的爬取一個網站時這個方案才合適(示例)
賬號限制訪問頁面數->應對方案:收集網站賬號,構建賬號池並批量進行模擬登陸存儲Cookies,構建Cookies池。
限制IP訪問頻次->應對方案:構建免費IP池(從提供免費IP的網站定時抓取)或使用付費IP代理
限制會話訪問時間持續長度->應對方案1:定時睡眠
->應對方案2:加大賬號池,分批次使用賬號從而做到持續採集。
投喂髒數據或虛假數據->目前沒有有效的解決方案。

2.網絡爬蟲的合法性

2.1爬蟲合法性初步探討

網絡爬蟲領域目前還屬於拓荒階段,雖然互聯網世界已經通過自己的遊戲規則建立起一定的道德規範(Robots協議,全稱是“網絡爬蟲排除標準”),但法律部分還在建立和完善中,也就是說,現在這個領域暫時還是灰色地帶。
“法不禁止即爲許可”,如果爬蟲就像瀏覽器一樣獲取的是前端顯示的數據(網頁上的公開信息)而不是網站後臺的私密敏感信息,就不太擔心法律法規的約束,因爲目前大數據產業鏈的發展速度遠遠超過了法律的完善程度。
在爬取網站的時候,需要限制自己的爬蟲遵守Robots協議,同時控制網絡爬蟲程序的抓取數據的速度;在使用數據的時候,必須要尊重網站的知識產權(從Web 2.0時代開始,雖然Web上的數據很多都是由用戶提供的,但是網站平臺是投入了運營成本的,當用戶在註冊和發佈內容時,平臺通常就已經獲得了對數據的所有權、使用權和分發權)。如果違反了這些規定,在打官司的時候敗訴機率相當高。

2.2網絡爬蟲對網站的危害

網絡爬蟲在提升工作效率的同時,也會帶來一些負面影響,比如侵佔帶寬資源,增加網站負荷量甚至會造成網站癱瘓,破壞計算信息系統,侵犯公民個人信息,侵犯商業祕密等。
從網站業務安全的角度,縱容這些僞裝者的危害有以下幾點:
1)核心數據被爬取
核心內容被爬取會極大影響網站和網頁本身在搜索引擎上的排名,低排名會導致訪問量降低和銷量、廣告收益降低的惡性循環。
在內容爲王、用戶粘性不高的今天,核心內容很大程度上會影響網站在用戶心目中的價值。若網站以文本爲商品作爲盈利點,那惡意爬蟲更是影響 KPI 的罪魁禍首。

2)註冊用戶被掃描
如果在網站的註冊頁面輸入一個已註冊過的號碼,通常會看到“該用戶已註冊”的提示,這一信息也會在請求的 response 中顯示,一些網站的短信接口也有類似邏輯,註冊用戶和非註冊用戶返回的字段和枚舉值會有不同。利用這一業務邏輯,惡意爬蟲通過各類社工庫拿到一批手機號後可以在短時內驗證這批號碼是否爲某一網站的註冊用戶。
這個數據有什麼利用價值?除了很明顯的違法欺詐外,攻擊者可以將數據打包出售給競爭對手或感興趣的數據營銷公司,完善他們的精準營銷數據。

3)其他危害
點擊欺詐:點擊欺詐會給網站造成實實在在的利益損失。投放廣告通常是爲了觸達符合網站定位的潛在消費者,爬蟲造成的點擊欺詐使得廣告的點擊率虛高,使得網站承擔了本不應承擔的點擊費用。從運營角度出發,訪問量無原因的忽高忽高也不利於分析廣告投放效果。

網站帶寬負擔:對於帶寬有限的中小型網站,爬蟲可能會降低網頁加載速度,影響真實用戶的訪問體驗。

2.3網絡爬蟲入罪案例

2.3.1非法獲取計算機信息系統數據罪

非法獲取計算機信息系統數據罪是《中華人民共和國刑法修正案(七)》增設的一個罪名,是指違反國家規定,侵入國家事務、國防建設、尖端科學技術領域以外的計算機信息系統或者採用其他技術手段,獲取該計算機信息系統中存儲、處理或者傳輸的數據,情節嚴重的行爲。從以往的生效判例來看,涉案人員主要是通過木馬、病毒等黑客滲透方式非法獲取計算機系統數據。

近期,從司法實踐來看使用爬蟲程序爬取數據的方式亦存在成立此罪的較大風險。

2.3.2繞過網站反爬措施獲取公開信息入罪

(1)基本案情
2018年,北京市海淀區人民法院對一起利用“爬蟲技術”侵入計算機系統抓取數據案做出判決,該案被“互聯網法律大會”列爲全國首例利用“爬蟲技術”侵入計算機系統抓取數據案。
據公開的判決信息顯示,被告單位CEO、技術負責人等公司主管人員共謀,採用技術手段抓取被害單位北京某網絡技術有限公司服務器中存儲的視頻數據,並破解被害單位的防抓取措施,使用“tt_spider”文件實施視頻數據抓取行爲,造成被害單位損失技術服務費人民幣2萬元。
經鑑定,“tt_spider”文件中包含通過分類視頻列表、相關視頻及評論等接口對被害單位服務器進行數據抓取,並將結果存入到數據庫中的邏輯。在數據抓取的過程中使用僞造device_id繞過服務器的身份校驗,使用僞造UA及IP繞過服務器的訪問頻率限制。
法院經審理後認爲,被告單位違反國家規定,採用技術手段獲取計算機信息系統中存儲的數據,情節嚴重,其行爲已構成非法獲取計算機信息系統數據罪;公司CEO、技術負責人等作爲直接負責的主管人員及其他直接責任人員,分別被法院判處有期徒刑九個月至一年不等的刑罰及人民幣三萬元至五萬元不等的罰金。
(2)釋法說理.
被告單位的犯罪行爲主要是“破解北京某網絡技術有限公司的防抓取措施,使用‘tt_spider’文件實施視頻數據抓取行爲,造成被害單位北京某網絡技術有限公司損失技術服務費人民幣2萬元”。
具體表現在“在數據抓取的過程中使用僞造device_id繞過服務器的身份校驗,使用僞造UA及IP繞過服務器的訪問頻率限制”。主審法官在其撰寫的文章中提及,被告單位及被告人在數據抓取過程中,採取了規避或突破被害單位反“爬蟲”安防措施的技術手段,未經許可進入被害單位的計算機系統,屬於非法獲取計算機信息系統數據罪中“侵入”行爲,從而構成非法獲取計算機信息系統數據罪。

2.3.3採用爬蟲獲取內部公開數據出罪

(1)基本案情
犯罪嫌疑人於某系某互聯網公司網絡工程師,該公司內部使用一款企業即時聊天App作爲內部人員溝通交流的辦公軟件,員工通過其個人賬號、密碼使用手機登陸後,如有工作需要,可與公司內任一員工即時聊天,並可點擊查看公司員工備註的姓名、員工號、手機號碼、職位職級以及公司組織架構等信息,App後臺會將訪問記錄予以記錄,公司內部制度規定非因工作需要不得隨意查看其他員工的數據信息。
2018年2月,於某對該聊天軟件的源代碼進行反向編譯,查找到該聊天工具傳送員工信息數據的服務器接口,後編寫了專門的爬蟲程序,在其使用其賬號密碼登陸App後,該程序自動運行,向該接口循環發送訪問請求,成功從該隱藏接口爬取到6萬餘名員工的姓名、員工號、手機號碼、職位職級以及公司組織架構等信息。

海淀區人民檢察院承辦檢察官認爲,於某的行爲不構成非法獲取計算機信息系統數據罪。
(2)釋法說理
本案中,於某對公司聊天即時APP具有訪問權限,可以使用點擊查看的方式獲取APP內數據,而於某通過對聊天軟件的源代碼進行反向編譯,查找到該聊天工具傳送員工信息數據的服務器接口,後採取編寫爬蟲程序方式獲取批量數據。其行爲從外觀上來看,似乎也屬違背了權利人的意願收集數據,但承辦檢察官認爲於某的行爲既不符合“侵入+獲取”,也不符合“利用其他技術手段+獲取”,且其獲取的數據屬於其職權範圍內可以知曉的內容,只是獲取數據的表現形式及訪問效率與在App內訪問有所差別,但無本質不同。於某的行爲不構成非法獲取計算機信息系統數據罪。

2.4分析總結

由於現有法律不完善,雖然各界對於“爬蟲入刑”問題尚存有爭議,但已生效判決對於處理類似問題具有一定的參考價值。在日常經營中要儘量避免因爲爬蟲技術的使用引發類似的爭議問題。
在此總結使用爬蟲技術時的注意事項:
1)儘量避免違背計算機信息系統權利人的意願爬取數據
2)儘量避免給目標服務器帶來過大的負荷量,造成損害
3)仔細甄別獲取數據類型,謹慎處理包含公民個人信息、商業祕密等內容的信息
此類案件中,除了涉及非法獲取計算機信息系統數據罪,還可能涉及到侵犯公民個人信息罪、侵犯商業祕密罪、破壞計算機信息系統罪、侵犯著作權罪等罪名,一般會依照想象競合原則,擇一重處罰。

3.結語

技術本無對錯,但使用技術時侵犯了他人隱私或對他人的財產和人身安全造成了損失要負相關的法律責任。每一個爬蟲工程師都應該熟知爬蟲可能帶來的危害,這樣才能既不損傷他人的利益同時保護自身的安全。

4.參考文獻

https://blog.csdn.net/XIAOYUE3035/article/details/99847829
https://www.cnblogs.com/jiangchunsheng/p/11950600.html
案例:http://kuaibao.qq.com/s/20190918A0KA2B00?refer=spider

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章