劉昕,賈春福,劉國友,胡志超,王冬
(1.中國石油大學(xué)(華東) 計算機(jī)與通信工程學(xué)院,山東 青島 266580;2.南開大學(xué) 信息技術(shù)科學(xué)學(xué)院,天津 300071;3.南京大學(xué) 計算機(jī)軟件新技術(shù)國家重點實驗室,江蘇 南京 210093)
隨著Web的廣泛應(yīng)用,包含惡意代碼和網(wǎng)上誘騙的網(wǎng)站也日益泛濫,對Web的安全應(yīng)用構(gòu)成了極大的威脅。網(wǎng)頁中的惡意代碼是指在用戶不知情的情況下自動安裝到用戶計算機(jī)中的代碼,其目的是危害用戶系統(tǒng)和數(shù)據(jù),或從其中竊取信息。網(wǎng)上誘騙是指冒充他人騙取用戶個人信息或其他敏感信息的行為,通常采用虛假網(wǎng)站的方式。釣魚攻擊(phishing attack)是一種常用的網(wǎng)絡(luò)欺騙手段,主要通過電子郵件、網(wǎng)頁等途徑散布虛假信息,誘騙不知情的網(wǎng)絡(luò)用戶登錄仿冒的網(wǎng)站,如假冒的網(wǎng)上銀行、在線購物等,從而騙取用戶的網(wǎng)銀賬號、信用卡號和密碼等敏感信息。據(jù)國際反釣魚工作組(APWG)統(tǒng)計,2010年上半年全球釣魚攻擊為48244次,下半年則達(dá)67677次,增長的主要原因是中國釣魚攻擊的增多[1]。
為了保護(hù)用戶的計算機(jī)不受惡意網(wǎng)站攻擊,當(dāng)前各種瀏覽器普遍采用的解決方案是附加安全功能,在用戶瀏覽惡意網(wǎng)站之前,向用戶發(fā)出警告信息,比如谷歌瀏覽器的安全瀏覽[2]和 IE瀏覽器的SmartScreen篩選器[3]等,用以幫助用戶防御網(wǎng)上誘騙和惡意代碼的攻擊。這些瀏覽器安全功能通常通過一種類似黑名單的惡意網(wǎng)址列表機(jī)制來實現(xiàn),將給定的URL與惡意網(wǎng)址列表進(jìn)行匹配,判斷該URL是否為惡意網(wǎng)站。
惡意網(wǎng)址列表通過自動檢測和人工舉報結(jié)合的方式獲得,其原理簡單且易于被瀏覽器和其他應(yīng)用程序?qū)崿F(xiàn)。其不足是第三方專業(yè)服務(wù)機(jī)構(gòu)為用戶提供的惡意網(wǎng)址列表的更新速度遠(yuǎn)遠(yuǎn)跟不上惡意網(wǎng)頁的更新速度。同時,隨著網(wǎng)絡(luò)犯罪技術(shù)的不斷提高,發(fā)現(xiàn)惡意網(wǎng)頁的難度也在加大。若要及時發(fā)現(xiàn)新出現(xiàn)的惡意網(wǎng)站,必須盡可能應(yīng)用多方面的力量,而不能僅僅依賴第三方專業(yè)機(jī)構(gòu)。實際上,能夠最早發(fā)現(xiàn)新出現(xiàn)惡意網(wǎng)頁的正是廣大網(wǎng)絡(luò)用戶自己。
通常,用戶訪問惡意欺詐網(wǎng)頁或者被惡意代碼攻擊之后,會獲得關(guān)于防御這些惡意網(wǎng)頁和惡意代碼的經(jīng)驗。一用戶訪問某個網(wǎng)站之前,若其好友恰好瀏覽過該網(wǎng)站,就可以根據(jù)好友提供的安全瀏覽經(jīng)驗,來決定是否訪問該網(wǎng)站,從而避免登錄惡意網(wǎng)站,減少損失。這種方式實際上是借助多個用戶的經(jīng)驗來處理同一問題。如果能夠?qū)⒕W(wǎng)絡(luò)用戶的經(jīng)驗充分利用起來,將非常有利于對惡意網(wǎng)頁的防御。
用戶只愿意向其信任的好友提供其瀏覽網(wǎng)頁的經(jīng)驗,也只愿意接收來自其信任的好友推薦的信息。許多用戶都已加入到各種不同的社會交互應(yīng)用,如 Facebook、QQ、MSN、校內(nèi)網(wǎng)、人人網(wǎng)和新浪微博等。截至2011年6月,F(xiàn)acebook的用戶數(shù)量已經(jīng)突破 7.5億[4]。這些在線社會網(wǎng)絡(luò)將人們之間的信任關(guān)系從現(xiàn)實生活中轉(zhuǎn)移到網(wǎng)絡(luò)中。
信任是所有社會交互的基礎(chǔ)。隨著 Web的演化,社會信任關(guān)系的使用是實用的而且是必須的[5]。社會網(wǎng)絡(luò)應(yīng)用越來越廣泛,成為一個良好的通信平臺,在信任的基礎(chǔ)上用戶可以與好友共享資源、分享經(jīng)驗。
本文提出了一種基于社會信任的分布式網(wǎng)頁安全評價方案。除應(yīng)用第三方提供的惡意網(wǎng)址列表之外,還利用用戶的經(jīng)驗和好友間的信任,獲得更為可信的網(wǎng)頁評價結(jié)果,及時避免用戶訪問惡意網(wǎng)頁。從一個用戶角度看,以用戶個體為中心,與好友之間形成協(xié)作防御;從整個社會網(wǎng)絡(luò)角度看,基于社會網(wǎng)絡(luò)平臺,每個用戶都可以與其好友協(xié)作,充分利用整個網(wǎng)絡(luò)上的資源、能力和經(jīng)驗,從而在宏觀上形成一個網(wǎng)狀的防御體系。
社會信任在很多方面都有應(yīng)用。比如,文獻(xiàn)[6]將信任應(yīng)用到推薦系統(tǒng)以提高推薦的正確性;文獻(xiàn)[7,8]將社會信任用于垃圾郵件過濾;文獻(xiàn)[9]將社會網(wǎng)絡(luò)中用戶之間的信任用于檢測 Sybil攻擊等。我們希望將社會信任引入用戶主機(jī)安全防御系統(tǒng),以減緩惡意代碼傳播。
Sirivianos[7]提出了一個基于信任的協(xié)作式垃圾郵件過濾系統(tǒng)SocialFilter。每一個SocialFilter的節(jié)點都發(fā)送報告到一個中央數(shù)據(jù)庫,中央數(shù)據(jù)庫形成信任圖進(jìn)行信任推導(dǎo),并計算一個節(jié)點到其他所有節(jié)點的最大信任路徑。SocialFilter利用社會網(wǎng)絡(luò)中的信任關(guān)系來評價對發(fā)送報告者的信任程度,其目的是聚集多種垃圾郵件檢測器的經(jīng)驗,使每一個不具備郵件分類功能的用戶主機(jī)通過查詢,就可以確定一個主機(jī)是否為垃圾郵件制造者。
評級、信譽(yù)和推薦系統(tǒng)已經(jīng)成為很多Web在線系統(tǒng)的核心組成部分,這些系統(tǒng)通過綜合用戶對產(chǎn)品和服務(wù)的評論,從而形成有價值的參考信息。比較成功的商業(yè)案例包括Amazon和eBay的推薦系統(tǒng)[10]和Google網(wǎng)頁評級系統(tǒng)[11]等。
有些學(xué)者研究識別惡意網(wǎng)頁的安全機(jī)制。如,Jean Camp提出了一個NetTrust系統(tǒng)[12],它結(jié)合用戶的瀏覽習(xí)慣和朋友的意見來識別惡意網(wǎng)頁,將好友的瀏覽行為信息放到工具欄上,供用戶參考。但該系統(tǒng)缺乏社會化網(wǎng)絡(luò)中信任傳遞的應(yīng)用,只利用直接好友的意見,沒有對評價信息進(jìn)行綜合,所得到的網(wǎng)頁評價信息有限。
WOT是一個基于社區(qū)的、免費(fèi)的瀏覽器插件[13]。當(dāng)用戶在網(wǎng)上瀏覽和購物時,WOT可以保護(hù)用戶的安全。WOT用顏色標(biāo)記網(wǎng)頁上的鏈接來提醒用戶:紅色代表可疑網(wǎng)站,綠色代表健康網(wǎng)站。每個網(wǎng)絡(luò)用戶都可以注冊成為WOT用戶,并對網(wǎng)站進(jìn)行評價。WOT將用戶的所有評價綜合起來形成對網(wǎng)站的評價值,但是該插件沒有應(yīng)用社會信任,用戶不能根據(jù)好友的建議訪問網(wǎng)站。
很多研究者提出了社會網(wǎng)絡(luò)中信任傳遞的計算方法[14,15]。其中文獻(xiàn)[15]提出的方法非常簡單,是一個輕量級算法。本文將該方法應(yīng)用于分布式防御系統(tǒng)中計算信任的傳遞,因而不會明顯增加用戶主機(jī)運(yùn)行開銷。
在網(wǎng)頁協(xié)作防御系統(tǒng)中,網(wǎng)頁評價分布式地內(nèi)嵌于每個用戶的瀏覽器中,用戶可以對訪問的網(wǎng)頁進(jìn)行評價。依據(jù)“本地存儲、定期交換、及時通知”的原則存儲用戶網(wǎng)頁評價,獲取好友評價信息,警告好友防范惡意網(wǎng)頁。每個用戶主機(jī)設(shè)置一個評價表,用于存儲用戶及其好友對所瀏覽網(wǎng)頁的安全程度的評價;用戶通過社會網(wǎng)絡(luò)平臺與好友定期交換網(wǎng)頁評價信息;發(fā)現(xiàn)惡意程度高的網(wǎng)頁,用戶應(yīng)及時通知其好友。
社會網(wǎng)絡(luò)采用MSN用戶構(gòu)成的即時通信網(wǎng)絡(luò),通過信任傳遞的計算獲得對間接好友的間接信任程度,即間接信任值。根據(jù)用戶直接好友和間接好友的信任值及其對網(wǎng)頁的評價值,計算用戶評價表中每個網(wǎng)頁的綜合評價值。由于每個用戶信任的好友以及信任的程度都是不同的,因此針對同一個網(wǎng)頁,在不同用戶主機(jī)上,計算所得的網(wǎng)頁綜合評價值通常也不相同。
用戶訪問一個先前沒有瀏覽過的網(wǎng)頁時,瀏覽器插件會過濾網(wǎng)頁:首先檢查第三方提供的惡意網(wǎng)址列表,然后檢查用戶評價表,根據(jù)計算得到的綜合評價值所處的區(qū)間,給用戶不同的提示。若繼續(xù)訪問該頁面,用戶可以評價該頁面的安全級別,給網(wǎng)頁打分。如果用戶評價表中沒有該網(wǎng)址,直接顯示該網(wǎng)頁,用戶即可打分。
若用戶訪問一個惡意程度很高的網(wǎng)頁,對其評分很低,則需要立即發(fā)送其評價給好友,及時提醒好友避免打開該網(wǎng)頁。好友可以繼續(xù)向其好友傳遞該評價,從而降低惡意網(wǎng)頁的訪問量,減少惡意網(wǎng)頁帶來的危害。
通過對信任及其傳遞進(jìn)行計算,獲得達(dá)到一定信任程度的好友,根據(jù)這些好友的信任值計算網(wǎng)頁綜合評價值。
3.2.1 信任的概念
根據(jù)文獻(xiàn)[16]對信任的定義以及本文的應(yīng)用環(huán)境,對社會信任定義如下。
定義 1 社會信任是一種建立在已有知識上的主觀判斷,是用戶A根據(jù)所處環(huán)境,對用戶B能夠按照用戶A的意愿提供特定服務(wù)的度量,以下簡稱信任。
定義2 直接信任(direct trust)是用戶A根據(jù)與用戶B的直接聯(lián)系歷史記錄而得出的對用戶B的信任。
定義 3 間接信任(indirect trust)是用戶間根據(jù)第三個用戶的推薦形成的信任,也稱推薦信任。
如圖1所示,將3個用戶的信任關(guān)系進(jìn)行了抽象,其中,TAB表示用戶A對用戶B的信任值。用戶A與C之間不存在直接關(guān)系,用戶A為獲得對用戶C的間接信任值,需要求助于用戶B。根據(jù)用戶B的推薦,利用信任傳遞公式計算,可以得到A對C的間接信任值。
圖1 用戶信任關(guān)系傳遞
3.2.2 信任傳遞機(jī)制
間接信任通過信任傳遞機(jī)制來計算。
本文使用Golbeck[15]提出的信任計算模型,其中,2個用戶之間的間接信任值計算公式如式(1)所示。
其中,Tij表示用戶i對用戶j的信任值,N(i)表示i的所有好友集合,包括直接好友和間接好友。
當(dāng)用戶計算對間接好友的信任值時,需要獲得好友對間接好友的信任。通過與好友互換信息的方式可以獲得這些信任值,然后進(jìn)行信任傳遞計算。對于信任值很低的好友,用戶不愿意與其交換信息。為了忽略這些好友的評價,設(shè)置一個可信度閾值Tmin。當(dāng)計算得到的間接信任值大于Tmin時,則記錄該好友信息,同時與該好友交換網(wǎng)頁評價信息;否則不記錄該用戶及其評價信息。
用戶訪問一個網(wǎng)頁時,可以對該網(wǎng)頁進(jìn)行評價,稱為直接評價。但要求用戶評價所訪問的每一個網(wǎng)頁比較困難,為了補(bǔ)充評價信息,根據(jù)用戶的瀏覽行為增加一種評價方式:行為評價。
3.3.1 直接評價
WOT將網(wǎng)頁分為5個級別:極差、較差、令人不滿意、較好、極佳,這種分級方式比較粗略。NetTrust 允許用戶在區(qū)間[1, 5]和[?1, ?5]指定一個值為網(wǎng)頁評級。為了精確地對網(wǎng)頁分級且便于計算網(wǎng)頁綜合評價值,?1、?2、?3、?4、?5 分別表示網(wǎng)頁的危險程度:有點低、較低、低、很低、嚴(yán)重。相應(yīng)地,正值代表網(wǎng)站的健康程度。用戶可以指定一個[?5, 5]之間的數(shù)值來評價一個網(wǎng)頁的安全程度。負(fù)值代表用戶認(rèn)為該網(wǎng)頁存在危險性,正值代表用戶認(rèn)為該網(wǎng)頁為健康網(wǎng)頁。用戶根據(jù)自己的瀏覽經(jīng)驗為網(wǎng)頁打分,將其評價結(jié)果存放到本地網(wǎng)頁評價表。最終網(wǎng)頁上顯示給用戶的綜合評價值是[?5, 5]區(qū)間內(nèi)的一個值,可以使用戶獲得更精確的網(wǎng)頁安全信息。
3.3.2 行為評價
用戶只瀏覽網(wǎng)頁而不對網(wǎng)頁的安全性進(jìn)行主動評價時,可以利用用戶的瀏覽行為對網(wǎng)頁形成評價。當(dāng)一個用戶多次重復(fù)訪問一個網(wǎng)站時,說明該用戶已經(jīng)足夠信任該網(wǎng)站,默認(rèn)該網(wǎng)站為健康網(wǎng)站。NetTrust系統(tǒng)記錄用戶對每個網(wǎng)站的訪問頻率,以此作為參數(shù)獲得對該網(wǎng)站的評價[12]。
行為評價使用用戶訪問一個網(wǎng)站的次數(shù)來評價網(wǎng)站的健康程度。對于一個給定的網(wǎng)頁,行為評價用一個[0, 5]區(qū)間內(nèi)的整數(shù)值來評價網(wǎng)頁的健康程度,與直接評價的正數(shù)區(qū)間保持一致。根據(jù)用戶的瀏覽行為和綜合評價值的計算需要,為行為評價選取 4個影響因素:最大約束值、開始計數(shù)延遲、最小訪問間隔和計數(shù)衰減期限,用以限制計數(shù)的最大值和有效性,可以較精確地間接評價網(wǎng)頁的健康程度。
1) 最大約束值
用來設(shè)置行為評價值的上限。最大約束值將行為評價值限定在5以內(nèi),計數(shù)達(dá)到5之后就不再增加,使得行為評價值和直接評價值在數(shù)值上統(tǒng)一,便于綜合評價值的計算。
2) 開始計數(shù)延遲
當(dāng)用戶第一次訪問一個網(wǎng)站時,不能立即將這個網(wǎng)站的行為評價值記為 1,要經(jīng)歷一段時間即開始計數(shù)延遲之后才會將該網(wǎng)站的評價值設(shè)為 1。開始計數(shù)延遲設(shè)置為5天。根據(jù)APWG的統(tǒng)計[17],釣魚網(wǎng)站的平均存活時間通常不超過5天,設(shè)置開始計數(shù)延遲能夠避免對釣魚網(wǎng)站的錯誤計數(shù)。
3) 最小訪問間隔
行為評價隨著用戶的訪問次數(shù)不斷變化。對網(wǎng)頁的重復(fù)訪問必須達(dá)到一定的時間間隔,訪問次數(shù)才具有一定的意義。如果不設(shè)置該參數(shù),用戶可以通過不斷刷新某一個頁面來達(dá)到提升該頁面行為評價值的目的。若用戶長期重復(fù)訪問某個網(wǎng)站,每天訪問一次該網(wǎng)站是多數(shù)用戶的習(xí)慣,因此將最小訪問間隔設(shè)置為一天。
4) 計數(shù)衰減期限
如果用戶在一段很長時間內(nèi)(即衰減期限)都沒再訪問某個網(wǎng)頁,該網(wǎng)頁的行為評價值縮減到原來的一半。計數(shù)衰減期限設(shè)置為 15天。若用戶很久沒有訪問一個網(wǎng)頁,之后重新開始訪問該網(wǎng)頁,則根據(jù)前面的計數(shù)規(guī)則繼續(xù)對其進(jìn)行行為評價。
對于同一個網(wǎng)頁,如果用戶給出了直接評價,則不再記錄行為評價。除了對一個網(wǎng)頁進(jìn)行數(shù)值評價外,用戶還可以進(jìn)行文字描述。這些文字描述對網(wǎng)頁的數(shù)值評價沒有影響,但當(dāng)用戶訪問該網(wǎng)頁時,相關(guān)描述會被顯示,用戶可以選擇查看。
每個用戶主機(jī)上設(shè)置一個網(wǎng)頁評價表,如表 1所示。用于存儲用戶及其好友(包括直接好友與間接好友)對訪問過網(wǎng)頁的安全程度評價,以及用戶對其好友的信任值。用戶ID使用用戶的MSN賬號,是全局唯一的。該表同時也保存本地用戶做出的評價,并以100%作為其信任值。表1中最后一行是綜合評價值,在綜合其他用戶對網(wǎng)頁評價和其信任值的基礎(chǔ)上進(jìn)行計算得到。這些評價具有個體性,每個用戶根據(jù)自己的網(wǎng)頁評價表計算網(wǎng)頁綜合評價值。任何2個用戶的網(wǎng)頁評價表是不同的。
好友之間交換網(wǎng)頁評價信息可以幫助用戶利用好友的經(jīng)驗豐富自己的網(wǎng)頁評價表。經(jīng)驗豐富和值得信賴的好友信任值會比較高,會提供更有價值的信息。
式(2)給出了計算一個網(wǎng)頁的綜合評價值的方法,其中 Ru表示對網(wǎng)址u的綜合評價值,rju表示好友j對網(wǎng)址u的評價值。
它綜合所有訪問過該網(wǎng)頁且達(dá)到可信度閾值的好友給出的評價值,以對好友的信任值作為權(quán)重,進(jìn)行加權(quán)評價,計算出的綜合評價值如表1所示。一個信任程度高的好友對網(wǎng)頁的評價值在綜合評價值中的貢獻(xiàn)會多一些。
表1 網(wǎng)頁評價
當(dāng)用戶訪問一個網(wǎng)頁時,根據(jù)綜合評價值給用戶不同的提示。若綜合評價值不大于?4,直接終止網(wǎng)頁的顯示,給出嚴(yán)重警告并顯示給出評價值的好友及其信任值,向用戶提示該網(wǎng)站可能會損害用戶計算機(jī);若綜合評價值在(?4,0)范圍內(nèi),顯示網(wǎng)頁之前給用戶一個提示,顯示出綜合評價值,提示用戶是否繼續(xù)顯示;如果綜合評價值是正值,直接顯示網(wǎng)頁,不給用戶提示,同時仍然顯示綜合評價值;若用戶評價表中沒有該網(wǎng)頁,則直接顯示。若只有一個好友訪問過某個惡意網(wǎng)頁,對該網(wǎng)頁評價值不大于?4時,他會通知其所有好友包括該用戶。若該用戶所有其他好友都沒有瀏覽過該網(wǎng)頁,即其他好友對該網(wǎng)頁的評價值都為 0。最后計算得到的綜合評價值與好友的評價值相同。若該好友是一個惡意用戶,用虛假的網(wǎng)頁評價阻止其好友訪問該網(wǎng)頁,多個用戶會受其影響不能訪問健康網(wǎng)頁。為了避免這種情況,將評價該網(wǎng)頁的好友顯示給用戶,由用戶決定是否繼續(xù)訪問該網(wǎng)頁。
對于用戶以前瀏覽過的網(wǎng)頁,根據(jù)網(wǎng)頁評價表中用戶自己的評價進(jìn)行過濾。
本系統(tǒng)通過使用MSN提供的開放接口來應(yīng)用社會網(wǎng)絡(luò)。MSN是微軟公司推出的一款即時通信軟件,可以與親人、朋友和同事等進(jìn)行即時交流?,F(xiàn)實生活中的朋友關(guān)系在MSN中得到很好的體現(xiàn),出現(xiàn)在MSN好友列表中的用戶大多數(shù)是用戶生活中真實的同學(xué)、朋友和親人。
用戶可以通過MSN賬號登錄我們的系統(tǒng),系統(tǒng)自動記錄用戶賬號信息,并將MSN的好友信息集成到系統(tǒng)中,實現(xiàn)好友之間的協(xié)作。
系統(tǒng)提供接口允許用戶對自己的好友設(shè)定一個信任值,用百分?jǐn)?shù)來描述。如用戶非常信任某個好友,可以用90%以上的數(shù)值表示。這些信任值用于信任傳遞和網(wǎng)頁綜合評價值的計算。
每個用戶對網(wǎng)頁的評價和對好友的信任值都保存在本地。為了獲得好友對網(wǎng)頁的評價值,用戶與其直接好友會定期交換彼此的網(wǎng)頁評價和對好友的信任值信息。交換網(wǎng)頁評價信息相當(dāng)于用戶向好友咨詢的過程。因為任何瀏覽行為都無法容忍過長的等待時間,用戶不能在訪問網(wǎng)頁的時候才去向好友咨詢,所以,只有獲取盡可能多可信任用戶的網(wǎng)頁評價值存儲到本地,才能在訪問網(wǎng)頁前及時獲得準(zhǔn)確的網(wǎng)頁綜合評價信息,對用戶訪問網(wǎng)頁提供建議。
圖2是一個信息交換的例子。用戶A與B1、B2互相交換信息后,A就獲得了B1和B2對C的信任值,通過式(1)計算得到A對C的間接信任值。B1、B2和C以及C和D也會互相交換信息,所以B1和B2也可以計算對D的信任值。從而在下一次交換信息時A能夠計算對D的間接信任值。用戶通過與好友之間信息的不斷交換,會獲得盡可能多的可信任用戶的網(wǎng)頁評價信息。
圖2 信息交換舉例
為了及時向好友發(fā)送惡意網(wǎng)頁的警告信息,除了定期交換信息外,系統(tǒng)還將被用戶評價為高危網(wǎng)頁的網(wǎng)頁評價信息(如用戶把某個網(wǎng)站評價為?4以下的值)迅速分發(fā)給自己的好友。收到這個評價信息的好友按同樣方法處理。這使得惡意網(wǎng)頁的評價信息能及時發(fā)送出去,避免更多的用戶訪問惡意網(wǎng)頁。
圖3給出了本文設(shè)計的系統(tǒng)結(jié)構(gòu)。虛線框表示防御系統(tǒng)在用戶主機(jī)上實現(xiàn)的功能。瀏覽器工具欄模塊用于顯示網(wǎng)頁評價信息和用戶進(jìn)行網(wǎng)頁評價的接口,評價信息主要包括好友對該網(wǎng)頁的綜合評價值以及第三方資源評價。評價引擎主要功能是計算用戶對其好友的間接信任值和網(wǎng)頁綜合評價值。社會網(wǎng)絡(luò)模塊主要用于存儲用戶的好友信息,以及通過MSN接口與其他好友進(jìn)行信息交換功能。同步模塊主要功能是獲取和存儲網(wǎng)頁評價信息。
用戶啟動裝有該插件的瀏覽器后,用其 MSN賬號登錄系統(tǒng)。系統(tǒng)啟動以后,用戶可以通過瀏覽器工具欄查看網(wǎng)頁綜合評價值以及用戶對網(wǎng)頁的相關(guān)文字描述,或者評價正在訪問的網(wǎng)頁。用戶評價信息通過同步模塊完成存儲。在用戶瀏覽網(wǎng)頁的同時,系統(tǒng)會定期通過同步模塊和社會網(wǎng)絡(luò)模塊與其他用戶交換評價信息。
圖3 系統(tǒng)結(jié)構(gòu)
第三方專業(yè)機(jī)構(gòu)提供的惡意網(wǎng)址列表比較全面,好友之間的經(jīng)驗共享比較及時,兩者相互補(bǔ)充能夠更加有效地降低惡意網(wǎng)頁的訪問量。本系統(tǒng)使用Google安全瀏覽API[18],可以根據(jù)Google不斷更新的可疑仿冒網(wǎng)頁和惡意軟件網(wǎng)頁列表來檢查網(wǎng)址。惡意網(wǎng)址列表中出現(xiàn)的網(wǎng)頁或者好友評價的惡意網(wǎng)頁都要被過濾,減少對用戶的威脅。
Sybil攻擊是指一個惡意節(jié)點可以使用多個ID偽裝成網(wǎng)絡(luò)系統(tǒng)中多個不同節(jié)點,從而對評價結(jié)果產(chǎn)生影響?;谏鐣湃蔚木W(wǎng)頁防御機(jī)制一個重要的安全特性就是可以有效抵御 Sybil攻擊。系統(tǒng)通過MSN開放接口來接入社會網(wǎng)絡(luò)。若一個惡意用戶偽造多個MSN賬號進(jìn)行Sybil攻擊,由于缺乏信任,偽造的賬號難以與網(wǎng)絡(luò)中其他用戶建立好友關(guān)系,因此無法獲得其他用戶比較高的信任。系統(tǒng)不接收沒有達(dá)到可信度閾值的用戶信息,評價表中不存放這些用戶對網(wǎng)頁的評價值,使得偽造賬號對網(wǎng)頁的評價無法影響網(wǎng)頁綜合評價值的計算。因此本文設(shè)計的系統(tǒng)能夠有效抵御Sybil攻擊。
設(shè)計的仿真實驗中,100個用戶隨機(jī)訪問1000個虛擬網(wǎng)頁,其中包括900個健康網(wǎng)頁和100個惡意網(wǎng)頁。實驗分為3種情況:第一種不應(yīng)用協(xié)作防御系統(tǒng);第二種社會信任不傳遞,只利用直接好友的瀏覽行為信息,即NetTrust系統(tǒng)采用的方法;第三種在信任傳遞的基礎(chǔ)上,用戶相互協(xié)作,共同防御惡意網(wǎng)頁。
實驗記錄所有用戶訪問的惡意網(wǎng)頁的總次數(shù)。對信任不傳遞和信任傳遞2種情況的實驗結(jié)果進(jìn)行比較。這2種情況下每步惡意網(wǎng)頁的總訪問次數(shù)與第一種情況相比,計算得到總訪問次數(shù)的降低率,如圖4所示。其中橫坐標(biāo)是實驗步數(shù),每訪問一次網(wǎng)頁作為一步;縱坐標(biāo)表示惡意網(wǎng)頁總訪問次數(shù)的減少率,即應(yīng)用防御系統(tǒng)和未應(yīng)用防御系統(tǒng)惡意網(wǎng)頁訪問次數(shù)之差與未應(yīng)用防御系統(tǒng)時訪問次數(shù)的比值。應(yīng)用防御系統(tǒng),30步后,惡意網(wǎng)頁訪問減少率逐漸達(dá)到 100%,說明用戶最終都不再訪問惡意網(wǎng)頁。應(yīng)用信任傳遞比沒有信任傳遞惡意網(wǎng)頁訪問減少率明顯增大,說明防御系統(tǒng)的防御能力比NetTrust系統(tǒng)有明顯增強(qiáng)。
圖4 2種情況下訪問惡意網(wǎng)頁減少率
用戶對網(wǎng)頁的主觀評價有可能是不正確的。改變評價的正確率,在60%、75%、90%、100%的用戶評價是正確的情況下,與第一種情況進(jìn)行比較,惡意網(wǎng)頁的總訪問量下降比例如圖5所示。實驗表明用戶評價的正確率越高,系統(tǒng)防御能力越強(qiáng),但是差別并不明顯,說明防御系統(tǒng)對用戶評價正確率具有彈性,系統(tǒng)可以容忍一定程度的用戶錯誤評價。
圖5 評價準(zhǔn)確率不同時訪問惡意網(wǎng)頁減少率
惡意網(wǎng)頁的數(shù)目會不斷變化,設(shè)置實驗中惡意網(wǎng)頁的數(shù)目分別為:100、200和300,惡意網(wǎng)頁總訪問次數(shù)的減少率如圖6所示,表明網(wǎng)絡(luò)中惡意網(wǎng)頁的數(shù)目對系統(tǒng)的性能幾乎沒有影響。
圖6 惡意網(wǎng)頁數(shù)目不同時訪問惡意網(wǎng)頁減少率
有些用戶不對網(wǎng)頁進(jìn)行評價,做出評價的用戶分別為50%、70%、90%和100%時,惡意網(wǎng)頁總訪問次數(shù)減少率如圖7所示。評價的用戶越少,系統(tǒng)的性能會越差。只要有50%的用戶參與評價,即可避免相當(dāng)一部分用戶訪問惡意網(wǎng)頁。如果所有用戶都不評價,相當(dāng)于沒有應(yīng)用協(xié)作防御系統(tǒng)。但是在用戶不直接對訪問的網(wǎng)頁做出評價時,系統(tǒng)可以應(yīng)用行為評價獲得網(wǎng)頁的評價值,彌補(bǔ)這個不足。
圖7 參與評價的用戶的比例不同時訪問惡意網(wǎng)頁減少率
由于每個用戶訪問的網(wǎng)頁數(shù)目有限,而且用戶好友大多是其同學(xué)、同事或者親朋好友,用戶與其可信任好友通常會有共同的愛好興趣或者成長經(jīng)歷,網(wǎng)頁評價表中存儲的信息是有限的。采用的信任傳遞算法是輕量級的,因此防御系統(tǒng)不會明顯影響用戶主機(jī)系統(tǒng)的開銷。
本文提出了一種輕量級的基于社會信任的惡意網(wǎng)頁分布式協(xié)作防御系統(tǒng)。通過即時通信網(wǎng)絡(luò)利用好友間的信任,進(jìn)行信任傳遞,存儲和獲取用戶對網(wǎng)頁的評價值,并且綜合多個用戶對于訪問過的網(wǎng)頁的安全經(jīng)驗,協(xié)作防御惡意網(wǎng)頁,整個社會網(wǎng)絡(luò)在宏觀上形成一個網(wǎng)狀的防御體系。由于即時通信的實時性,好友之間的經(jīng)驗共享比較及時,另外結(jié)合第三方專業(yè)機(jī)構(gòu)提供的惡意網(wǎng)址列表,利用該列表的全面性對系統(tǒng)加以補(bǔ)充,更加有效地降低惡意網(wǎng)頁的訪問量。實驗結(jié)果表明該系統(tǒng)顯著提高了社會網(wǎng)絡(luò)防御惡意網(wǎng)頁的能力。
由于系統(tǒng)基于社會信任實現(xiàn),可以保證獲得的評價信息是可信的。但是在進(jìn)一步分辨高水平評價信息的問題上還存在缺陷。在以后的工作中,可以采用有效反饋機(jī)制,用戶對每個好友做出的評價給出一個反饋。將第三方資源的評價結(jié)果作為參考評判好友對網(wǎng)頁評價的正確性,如果好友的評價正確,則提高其信任值;如果評價錯誤,則降低其信任值。隨著網(wǎng)絡(luò)的演化動態(tài)改變綜合網(wǎng)頁評價值,提高網(wǎng)絡(luò)對惡意網(wǎng)頁的實時防御能力。
防御系統(tǒng)未區(qū)分社會網(wǎng)絡(luò)中不同連接度節(jié)點的能力。在未來工作中,可以應(yīng)用復(fù)雜網(wǎng)絡(luò)理論分析社會網(wǎng)絡(luò)特征,充分利用優(yōu)勢節(jié)點(好友特別多的節(jié)點)的作用,更加合理地部署防護(hù)機(jī)制。
[1]APWG.Anti phishing work group[EB/OL].http://www.antiphishing.org, 2011.
[2]Google chrome and google safe browsing[EB/OL].http://www.google.com/chrome/intl/zh-cn/more/security.html, 2011.
[3]SmartScreen filter[EB/OL].http://windows.microsoft.com/en-US/ internet- explorer/products/ie-9/features/smartscreen-filter, 2011.
[4] Mark zuckerberg officially confirmed that facebook reached 750 million active users milestone[EB/OL].http://www.techsnapr.com/2011/07/07/mark-zuckerberg-officially-confirmed-that-facebook-reach ed-750-million-active-users-milestone/, 2011.
[5]GOLBECK J.Weaving a Web of trust[J].Science Magazine, AAAS,2008, 321 (5896):1640-1641.
[6]DONOVAN J O’, SMYTH B.Trust in recommender systems[A].IUI’05:Proceedings of the 10th International Conference on Intelligent User Interfaces[C].New York, NY, USA, 2005.167-174.
[7]SIRIVIANOS M, KIM K, YANG X.SocialFilter:introducing social trust to collaborative spam mitigation[A].INFOCOM[C].2011.2300-2308.
[8]BOYKIN P O, ROYCHOWDHURY V.Personal email networks:an effective anti-spam tool[J].IEEE Computer, 2005, 38(4):61-68.
[9]YU H, KAMINSKY M, GIBBONS P B, et al.Sybilguard:defending against sybil attacks via social networks[A].Proc ACM SIGCOMM[C].2006.576-589.
[10]RESNICK P, ZECKHAUSER R.Trust among strangers in Internet transactions:empirical analysis of ebay’s reputation system[J].The Economics of the Internet and E-Commerce, Advances in Applied Microeconomics, Elsevier Science, 2002,11:127-157.
[11]PAGE L, BRIN S, MOTWANI R, et al.The Pagerank Citation Ranking:Bringing order to the Web[R].Stanford University, 1998.
[12]JEAN CAMP L.Net trust:signaling malicious Web sites[J].I/S A Journal of Law and Policy in the Information Society, 2007, 3(2):211-235.
[13]Safe browsing tool:WOT (Web of trust) [EB/OL].http://www.mywot.com/,2011.
[14]HANG C, WANG Y, SINGH M P.Operators for propagating trust and their evaluation in social networks[A].Proceedings of the 8th International Joint Conference on Autonomous Agents and Multiagent Systems[C].2009.1025-1032.
[15] GOLBECK J.Computing and Applying Trust in Web-based Social Networks[D].University of Maryland, College Park, 2005.
[16]李勇軍,代亞非.對等網(wǎng)絡(luò)信任機(jī)制研究[J].計算機(jī)學(xué)報 2010, (3):390-405.LI Y J, DAI Y F.Research on trust mechanism for peer-to-peer network[J].Chinese Journal of Computers, 2010, (3):390-405.
[17]AARON G, RASMUSSEN R.Global phishing survey 2h2010:trends and domain name use[EB/OL].http://www.antiphishing.org/reports/APWG_GlobalPhishingSurvey_2H2010.pdf, 2011.
[18]Google safe browsing API[EB/OL].http://code.google.com/intl/en/apis/safebrowsing/, 2010.