當前位置:
首頁 > 最新 > 越來越多的網路攻擊背後,你看清黑客的套路了嗎?

越來越多的網路攻擊背後,你看清黑客的套路了嗎?

在今天的媒體上,你一定已經看過太多像是」某國指控它國對其發動網路攻擊」、「某公司遭遇嚴重信息泄露事件,數百萬用戶數據被盜」等涉及網路攻擊事件的新聞。數據俠Nachiket Patel用數據分析嘗試對這場「陰謀」一探究竟。

什麼是網路攻擊

在今天的媒體上,你一定已經看過太多像是」某國指控它國對其發動網路攻擊」,「某公司遭遇嚴重信息泄露事件,數百萬用戶數據被盜」等涉及網路攻擊事件的新聞。如果倒霉一點,你還可能就是這種惡性事件的受害者,並可能有一天打開電腦,突然發現自己眼前的屏幕被鋪滿了這樣的字句:

「你的信息已被加密,想要恢復的話,交錢吧。」

這些都是網路攻擊事件——旨在盜竊錢財、金融數據、知識產權或干擾某一目標公司的日常經營的惡意網路行動,它們絕大多數時候是由犯罪分子發動的。國家有時也會成為攻擊目標,一些所謂的「政府支持的網路攻擊」會嘗試竊取宿敵國家的機密文件,或者僅僅是為了給對方發出一個警告信號。

據粗略統計,2015年全球因網路攻擊造成的損失達到5000億美元。是谷歌全年900億美元的現金流的5倍還多。

在這篇文章中,我們希望通過數據分析的方式,來探究這些造成巨額損失的網路犯罪的特點,進一步了解它們的行為方式以及帶來的影響。

我使用Scrapy對網路攻擊事件庫網站Hackmageddon進行爬蟲爬取,以收集可供分析的信息。Hackmageddon從2011年開始記載各種網路攻擊事件,每15天會更新一個統計表。我的爬蟲對網站的目錄和次級目錄進行分析,不過在過程中我了解到Scrapy不如Selenium那樣,能與瀏覽器有很好的自動化的互動。

我從2011年網站的第一張表格開始,在過程中遇到不少挑戰。一個問題是,它無法自動從一個表格跳到下一個。這個網站每個頁面底部有翻頁按鈕,我讓我的爬蟲對這個按鈕的鏈接發起fetch請求,以進入下一頁。另一個問題是,Hackmageddon每年都改變它的表格結構。所以我使用了控制流來解決這個問題,最終我幾乎爬取了全部網站,爬取的信息包括日期、發起者、目標、描述、攻擊類型、目標等級以及國別。

(圖片說明:項目獲取的部分數據)

基本數據展示

在分析數據前要先清洗數據。如我所料,爬取的數據有很多缺失。由於許多網路攻擊的動機和黑客身份經常是無法知曉的,這部分的數據缺失在我預料中。我使用Python的Pandas library來進行數據清洗。在清理數據之後我開始進行可視化。最開始的簡單分析揭示了一些有趣的現象。美國是受攻擊最多的國家,排在第二到第四位是「>1」,英國,印度。「>1」是指「同一個黑客攻擊了一個以上國家」的情況。

我爬取數據的目的之一,就是想知道這些攻擊行動背後的動機。下圖展示了攻擊目標中不同類型的組織所佔比例。政府部門和個人佔據前二位置,接下來是教育機構。

接下來的圖表展示了網路攻擊背後的動機。網路犯罪佔比最多,達71%。網路犯罪針的典型場景是為了獲取網路許可權。電腦被用作武器,來發動像DoS攻擊等犯罪活動。

網路間諜(Cyber Espionage)的目的則是非法獲取涉密信息,尤其是政府或其他組織的保密信息。

網路戰爭的目的則是破壞一個國家或組織,尤其是出於軍事或策略性的目的而刻意攻擊信息系統。

Hacktivism就更加寬泛,它指的是未經授權進入電腦系統,並展開各種侵擾行為,從而達到某種政治或社會目的的行為。

接下來的問題是,網路攻擊都包括哪些類型,以及誰是最臭名昭著的黑客。

下圖展示了網路攻擊的類型。劫持賬戶、定向攻擊、DDos和惡意軟體佔據前四。

接下來的圖告訴我們誰是最「有名」的黑客。排在第一位的匿名者組(Anoynymous)比第二名的OurMine多發動了75次網路攻擊。

匿名者組織因其一系列針對政府、宗教團體及公司網站的DDoS攻擊而出名。他們也被認為是網路世界的羅賓漢,2012年時代周刊形容匿名者是當年的「百大影響人物」。

OurMine大多數時候會將目標對準明星。被他們黑掉過推特賬號的明星包括維基百科聯合創始人吉米威爾斯、Pokémon Go的設計者約翰漢克、推特CEO傑克多西、谷歌CEO皮查伊以及Facebook的扎克伯格。

接下來的圖表顯示了各個黑客最常用的攻擊方式。匿名者進行了30次DDoS,OurMine發動了20次賬戶劫持。

下圖顯示,一個名為Guccifer 2.0的黑客對美國的政黨發動了9次攻擊,朝鮮大多數時候在對韓國發動網路攻擊。Eggfather則將在線論壇作為攻擊對象,並將獲取的用戶信息和密碼轉儲(Dump)。

對非結構化語言的文本挖掘

在爬取的數據中,有很多非結構化數據。我決定對它們進行文本挖掘。我使用了Python的Scikit-learn包用於機器學習,NLTK包用於自然語義處理。

首先是詞語切分(Tokenization)。Token是指符號,包括單詞、片語乃至一句話。詞語切分(Tokenization)就是把一段話分解成單個的單詞、片語和符號等要素。在這一過程中,標點符號等標記會被捨棄。

其次是TF-IDF向量化。TF意思是詞頻(Term Frequency),IDF意思是逆向文件頻率(Inverse Document Frequency),它們用來反映一個詞在一個文檔中的重要性。TF-IDF值隨著一個單詞在文檔中出現次數的增加而形成比例增長,但同時與這個單詞在整個語料庫中出現的頻率成反比。因為這樣可以避免那些在整體上,本來就比其他單詞更頻繁出現的單詞帶來的影響。它的輸出值是一個向量。

接下來餘弦相似性。餘弦相似性通過測量兩個向量的夾角的餘弦值來度量它們之間的相似性。

兩個向量有相同的指向時,餘弦相似度的值為1;兩個向量夾角為90°時,餘弦相似度的值為0;兩個向量指向完全相反的方向時,餘弦相似度的值為-1。餘弦相似度通常用於正空間,因此給出的值為0到1之間。

然後我還使用了多維標度(Multidimensional Scaling)。多維標度的目的是對一組項目的接近性(比如相似性、距離)的範式進行可視化的程序。我將各類網路攻擊事件放在圖中,一些彼此相似的攻擊事件會離得更近,反之亦反。這是一種非線性降維的方法。

最後是K-平均演算法(K-means Clustering)。K-平均聚類的目的是:把n個點劃分到k個聚類中,使得每個點都屬於離它最近的均值(此即聚類中心)對應的聚類,以之作為聚類的標準。這需要將數據聚類成k個組,k是預先定義好的,隨機選擇k個點作為聚類中心,然後依據歐氏距離函數來將各個觀察目標放置在距離它們最近的中心附近。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 DT財經 的精彩文章:

有了這些創意美學,城市數據的趣味性超乎你的想像

TAG:DT財經 |