基于爬蟲的網(wǎng)絡安全問題探討

時間:2022-12-25 02:45:57

導語:基于爬蟲的網(wǎng)絡安全問題探討一文來源于網(wǎng)友上傳,不代表本站觀點,若需要原創(chuàng)文章可咨詢客服老師,歡迎參考。

基于爬蟲的網(wǎng)絡安全問題探討

摘要:隨著新一代網(wǎng)絡信息技術的應用和服務越來越多,網(wǎng)絡信息安全事件頻繁爆發(fā),網(wǎng)絡攻擊、病毒入侵、信息泄密等事件層出不窮。目前,大部分小型網(wǎng)站對于網(wǎng)絡安全重視不足,網(wǎng)絡安全風險意識比較薄弱,易引發(fā)一系列問題。通過一個簡單的網(wǎng)絡爬蟲案例測試某小型網(wǎng)站的安全性,通過網(wǎng)絡爬蟲技術分析、查找網(wǎng)絡安全問題的原因,并就防范網(wǎng)絡爬蟲提出了一系列安全策略,提高網(wǎng)絡風險意識。

關鍵詞:網(wǎng)絡爬蟲;網(wǎng)絡安全;安全策略

1關于網(wǎng)絡爬蟲概念與“爬取”過程

網(wǎng)絡爬蟲(WebSpider)又稱“網(wǎng)絡蜘蛛”,它能模擬正常用戶的一些行為,按照一定的規(guī)則自動抓取網(wǎng)絡中的各種信息。搜索引擎也是網(wǎng)絡爬蟲的一種,但是不影響網(wǎng)站的正常運行,也沒有任何惡意行為。而一些惡意的網(wǎng)絡爬蟲常常通過短時間內大量訪問等手段來消耗網(wǎng)絡資源,使網(wǎng)站的正常運轉出現(xiàn)問題,導致服務器崩潰等。大部分爬蟲程序通過預先設定一個隊列存放URL,在進行網(wǎng)頁爬取時,先從某一個或若干個URL開始,記錄該URL,再從該網(wǎng)頁上查找鏈接的其他URL放入隊列,不斷地從當前頁面查找新的URL,如此循環(huán)往復,直到滿足設定的停止條件。

2網(wǎng)絡爬蟲爬取某網(wǎng)站的案例與簡單分析

2.1預判某網(wǎng)站安全技術措施。現(xiàn)在很多網(wǎng)站在一定程度上做了一些安全防護,但是由于成本以及技術原因等,大部分小型網(wǎng)站的網(wǎng)絡安全策略比較薄弱,以一個爬蟲案例來測試一下某網(wǎng)站網(wǎng)絡安全問題。首先找到一個某詩詞網(wǎng)站上的內容,查看PC網(wǎng)站請求地址,=發(fā)現(xiàn)不同的頁面只是p=xx不同,xx=當前頁面值,當p<=30時,頁面顯示正常,但是當翻頁超過30頁時,系統(tǒng)返回了錯誤頁面,提示“因服務器開支對本站造成巨大壓力,請下載客戶端進行訪問”。說明系統(tǒng)還是針對大量數(shù)據(jù)做了一些安全策略性的限制,當請求超過30頁時提示使用手機APP來訪問。于是嘗試從APP上找破解方法,通過抓包工具PacketCapture成功找到了數(shù)據(jù)請求接口。2.2進行爬蟲源碼編寫。publicstaticvoidmain(String[]args){for(intp=1;p<=76;p++){Documentdocument=Jsoup.connect("https:/xxx/xx.aspx?p="+p+"&c=%e5%8f%a4%e7%b1%8d").get();Elementsels=document.getElementsByClass("cont");for(intj=1;j<els.size()-2;j++){Stringtemp=els.get(j).getElementsByTag("a").get(0).ownText()+"<--->"+els.get(j).getElementsBy-Tag("a").get(1).ownText();contentListo.add(temp);}for(intp=1;p<=6;p++){Stringnotice=rest-Template.getForObject("=食物&t=&token=gswapi&page="+p,String.class);JSONObjectot=JSONObject.fromObject(notice);JSONArrayjsonArray=ot.getJSONArray("mingjus");for(intj=0;j<jsonArray.size();j++){ringnameStr=((JSONObject)jsonArray.get(j)).getString("nameStr");Stringauthor=((JSONObject)jsonArray.get(j)).getString("author");StringshiName=((JSONObject)jsonArray.get(j)).getString("shiName");contentList.add(nameStr+"<--->"+author+"《"+shiName+"》");}for(inti=0;i<contentListo.size();i++){cells.get(i,1).setValue(contentListo.get(i));}awb.save("/Users/shiwu.xlsx");}catch(Exceptionex){ex.printStackTrace();}}2.3爬蟲源碼運行結果與安全分析。運行程序,包括朝代、作者、詩詞名稱、內容等都成功抓取,將結果保存成Excel文件。文件內容示例:桃李春風一杯酒,江湖夜雨十年燈。<--->黃庭堅《寄黃幾復》一生大笑能幾回,斗酒相逢須醉倒。<--->岑參《涼州館中與諸判官夜集》在本案例中,網(wǎng)站只做了客戶端的攔截,翻頁超過30頁就提示錯誤頁面,但是對于服務端接口沒有做流量訪問控制、身份(如Ip、瀏覽器特征)驗證,所以當通過抓包拿到請求接口后可以隨意請求獲得想要的數(shù)據(jù)。對于隱私性不強的網(wǎng)站可能并沒有特別重要的信息泄露,但對于涉及個人隱私等安全信息的網(wǎng)站,如果能隨意抓取數(shù)據(jù),將會有很大的安全隱患。用不同的方式又測試了其他幾個網(wǎng)站,發(fā)現(xiàn)大部分網(wǎng)站雖然都做了一些網(wǎng)絡安全防護,但都做的比較簡單,對于信息安全的保護遠遠不夠。

3基于爬蟲網(wǎng)絡安全風險及防范

3.1網(wǎng)絡安全風險。網(wǎng)絡安全做的不到位會有很多風險,例如,某個網(wǎng)站上有一個10MB的文件,使用爬蟲抓取該文件1000次,就會使網(wǎng)站產生大量出站流量,可能會使服務器癱瘓無法正常訪問。惡意爬蟲入侵的幾種方式:(1)通過測試網(wǎng)站或后門調試程序入侵。目前,大多數(shù)基于網(wǎng)頁服務的系統(tǒng)都附帶了測試頁面及調試用后門程序等,有些可以通過這些頁面或程序不經(jīng)過正常的認證直接訪問服務器端的敏感數(shù)據(jù),一旦這些敏感數(shù)據(jù)被有心人利用,可能會成為進行網(wǎng)絡分析與攻擊的源頭,出現(xiàn)各種安全問題。(2)通過管理接口入侵。為了方便管理,很多網(wǎng)絡平臺及系統(tǒng)都提供了基于網(wǎng)頁的管理接口,允許管理員對其進行遠程管理與控制。網(wǎng)絡惡意爬蟲程序通過搜索管理員登錄頁面獲得URL,而進行一系列的網(wǎng)絡爬取或攻擊,網(wǎng)絡安全得不到保護。(3)通過網(wǎng)頁直接搜索入侵。惡意網(wǎng)絡爬蟲程序直接通過互聯(lián)網(wǎng)搜索用戶的個人資料,例如用戶的姓名、電話、微信號、身份證號等個人隱私,惡意用戶獲取后有可能實施攻擊或詐騙。惡意網(wǎng)絡爬蟲極易對網(wǎng)絡造成攻擊,所以必須采取一定的手段來限制網(wǎng)絡爬蟲的訪問權限,一方面開放需要搜索引擎收錄的頁面,同時又對一些敏感頁面進行保護。3.2限制網(wǎng)絡爬蟲的基本技巧。3.2.1對于程序本身的反爬策略。大部分的爬蟲程序是對網(wǎng)站頁面的源文件進行爬取,如爬取靜態(tài)頁面的html代碼,對于動態(tài)的很難爬取。了解了爬蟲的原理,可以通過仿寫html,讓網(wǎng)站程序本身穿上“防爬外衣”進行偽裝。比如可以用其他技術去模仿寫html,這樣爬蟲就很難抓取到信息。類似這樣的技術還很多,就不一一舉例。3.2.2對于數(shù)據(jù)包字段的反爬策略。HTTP請求中的UserAgent字段能夠識別客戶使用的瀏覽器、引擎、操作系統(tǒng)、設備信息等。而爬蟲的UserAgent字段有它自己的特征,如百度搜索引擎爬蟲會有類似Baiduspider的字符串,Mozilla/5.0(compati-ble;Baiduspider/2.0;+www.baidu.com/search/spider.html))。通過對UserAgent特定字符的限制可以阻止此類爬蟲對網(wǎng)站的過度抓取。3.2.3對于用戶行為的反爬策略。爬蟲畢竟是機器人,和人的行為再像也會有區(qū)別。普通用戶很少會短時間內多次訪問同一頁面或者同一賬戶短時間內多次進行相同操作,這種行為基本可以判定為爬蟲。一般通過網(wǎng)站分析軟件可以過濾出爬蟲的IP和訪問頻率等,針對這種情況,可以采取適當?shù)拇胧┫拗凭W(wǎng)絡爬蟲的訪問權限,例如可采用限制IP或訪問頻率的方式來阻止此類爬蟲,從而進行用戶行為的隱私保護,以保持網(wǎng)站的安全運行。

4結語

隨著全球信息化步伐的加快,安全問題刻不容緩,不僅涉及個人利益、企業(yè)生存、金融風險等問題,還直接關系到社會穩(wěn)定和等諸多方面,了解網(wǎng)絡面臨的各種威脅,防范和消除這些威脅,已經(jīng)成為網(wǎng)絡發(fā)展中最重要的事情之一。

參考文獻

[1]吳翰清.白帽子講Web安全.北京:電子工業(yè)出版社,2012.

[2]孫衛(wèi)琴.Tomcat與JavaWeb開發(fā)技術詳解.北京:電子工業(yè)出版社,2009.

[3]劉馳,胡柏青,謝一.大數(shù)據(jù)治理與安全:從理論到開源實踐.北京:機械工業(yè)出版社,2009.

作者:畢艷華 高曉艷 張揚 單位:1.衡水市信息產業(yè)中心 2.衡水迅騰商務服務有限公司