[摘 要] 目前“網(wǎng)絡(luò)釣魚”攻擊已成為繼電腦病毒之后的最大的網(wǎng)絡(luò)安全隱患之一。本文提出了一種基于雙向認(rèn)證機(jī)制防范“網(wǎng)絡(luò)釣魚”攻擊的解決方案。
[關(guān)鍵詞] 雙向認(rèn)證 網(wǎng)絡(luò)釣魚 口令認(rèn)證
“網(wǎng)絡(luò)釣魚”(Phishing)泛指在網(wǎng)絡(luò)上盜竊他人身份的一種形式,其本質(zhì)就是犯罪分子利用網(wǎng)絡(luò),通過(guò)各種非法途徑獲取用戶信用卡號(hào)、注冊(cè)用戶名、密碼和社會(huì)保障號(hào)碼等個(gè)人財(cái)務(wù)信息,進(jìn)而利用竊取的他人信息進(jìn)行詐騙活動(dòng),獲取經(jīng)濟(jì)利益,受攻擊的目標(biāo)主要集中在如保險(xiǎn)、信用卡、支付系統(tǒng)、ATM網(wǎng)絡(luò)。
一、攻擊方法
1.“釣魚”之一:電子郵件
詐騙分子發(fā)送以中獎(jiǎng)、顧問(wèn)、對(duì)帳為內(nèi)容的郵件引誘用戶在郵件中填入金融賬號(hào)和密碼,或是以各種緊迫的理由要求收件人登錄某網(wǎng)頁(yè)提交用戶名、密碼、身份證號(hào)、信用卡號(hào)等信息,繼而盜取用戶資金。
2.“釣魚”之二:盜號(hào)木馬。犯罪分子通過(guò)發(fā)送郵件或在網(wǎng)站中隱藏木馬等方式大肆傳播木馬程序,當(dāng)感染木馬的用戶進(jìn)行網(wǎng)上交易時(shí),木馬程序即以鍵盤記錄的方式獲取用戶賬號(hào)和密碼,并發(fā)送給指定郵箱。
3.“釣魚”之三:網(wǎng)址欺騙。犯罪分子建立起域名與內(nèi)容都與真正網(wǎng)上銀行系統(tǒng)、網(wǎng)上證券交易平臺(tái)極為相似的網(wǎng)站,通過(guò)電子郵件、短信、QQ、BBS以及搜索引擎等各種形式引誘用戶訪問(wèn)假冒網(wǎng)站,并輸入賬號(hào)、密碼等信息,進(jìn)而竊取用戶的個(gè)人信息。
二、雙向認(rèn)證的解決方案
1.雙向認(rèn)證機(jī)制。認(rèn)證是證實(shí)被認(rèn)證對(duì)象是否屬實(shí)和是否有效的一個(gè)過(guò)程,其基本思想是通過(guò)驗(yàn)證被認(rèn)證對(duì)象的屬性來(lái)達(dá)到確認(rèn)被認(rèn)證對(duì)象是否真實(shí)有效的目的。
雙向認(rèn)證機(jī)制的原理:
設(shè)A和B是一對(duì)平等的實(shí)體,A的口令為PA,B的口令為PB,A、B共享口令PA與PB,f為單向函數(shù),RA、RB是隨機(jī)數(shù)。
(1)A請(qǐng)求與B通信A→B:RA
A首先選擇一個(gè)隨機(jī)數(shù)RA ,發(fā)送給B;
(2)B提交驗(yàn)證信息B→A:f(PB||RA)||RB
B收到RA后,產(chǎn)生隨機(jī)數(shù)RB,利用單向函數(shù)f對(duì)自己的口令PB和隨機(jī)數(shù)RA進(jìn)行加密f(PB||RA),并連同RB一起發(fā)送給A;
(3)A驗(yàn)證B:f(PB||RA)== f*(PB||RA)?
A利用單向函數(shù)f對(duì)自己保存的PB和RA進(jìn)行加密f(PB||RA),并與收到的f*(PB||RA)進(jìn)行比較,若相等,則A確認(rèn)B的身份是真實(shí)的,否則認(rèn)為B的身份是不真實(shí)的。
(4)A提交驗(yàn)證信息A→B:f(PA||RB)
在確認(rèn)B為真實(shí)的之后,A利用單向函數(shù)f對(duì)自己的口令PA和隨機(jī)數(shù)RB進(jìn)行加密f(PA||RB),并發(fā)送給B;
(5)B驗(yàn)證A:f(PA||RB)==f*(PA||RB)?
B利用單向函數(shù)f對(duì)自己保存的PA和RB進(jìn)行加密f(PA||RB),并與收到的f*(PA||RB)進(jìn)行比較,若相等,則B確認(rèn)A的身份是真實(shí)的,否則認(rèn)為A的身份是不真實(shí)的。
2.基于雙向認(rèn)證的防范“網(wǎng)絡(luò)釣魚”攻擊方案。本文根據(jù)雙向認(rèn)證機(jī)制的原理提出防范網(wǎng)絡(luò)釣魚攻擊的方案,方案分為申請(qǐng)注冊(cè)與登錄驗(yàn)證兩個(gè)部分。
(1)申請(qǐng)注冊(cè)??蛻粝蚓W(wǎng)站服務(wù)器提出注冊(cè)申請(qǐng),并提交個(gè)人信息;用戶IDA與用戶口令PA。網(wǎng)站服務(wù)器接受申請(qǐng),利用HMAC函數(shù)和服務(wù)器的種子密鑰K對(duì)用戶信息(IDA、PA)與時(shí)間戳T進(jìn)行加密,生成服務(wù)器驗(yàn)證口令PB=HMAC(IDA||PA||T,K),服務(wù)器保存(IDA、PA、PB),并將PB發(fā)送給該客戶??蛻艚邮懿⒈4娣?wù)器驗(yàn)證口令PB;網(wǎng)站服務(wù)器端保存了用戶IDA、用戶口令PA與服務(wù)器的口令PB;同樣客戶端保存了網(wǎng)站服務(wù)器的口令PB,客戶的個(gè)人信息用戶IDA、用戶口令PA。
(2)登錄驗(yàn)證。登錄驗(yàn)證流程(如圖1所示):客戶向網(wǎng)站服務(wù)器提出登錄請(qǐng)求,提交自己的ID;網(wǎng)站服務(wù)器驗(yàn)證ID合法后,接受客戶登錄請(qǐng)求;客戶發(fā)送一隨機(jī)數(shù)RA,并要求網(wǎng)站服務(wù)器提供驗(yàn)證信息;網(wǎng)站服務(wù)器提供驗(yàn)證信息f(PB||RA)||RB,并要求客戶提供驗(yàn)證信息;客戶經(jīng)驗(yàn)證確認(rèn)為真實(shí)網(wǎng)站后,提供客戶驗(yàn)證信息f(PA||RB);網(wǎng)站驗(yàn)證確認(rèn)為合法用戶后,開始進(jìn)入應(yīng)用操作;
3.雙向認(rèn)證機(jī)制的安全性分析
(1)情況一。假冒網(wǎng)站試圖采用與真實(shí)網(wǎng)站一樣的登錄驗(yàn)證流程騙取客戶信息。假冒網(wǎng)站無(wú)服務(wù)器驗(yàn)證口令PB,客戶利用PB對(duì)網(wǎng)站服務(wù)器的驗(yàn)證(驗(yàn)證1)失敗,提示“非法網(wǎng)站”退出,當(dāng)然也就不可能竊取客戶PA。
(2)情況二。假設(shè)攻擊者已竊取了用戶IDA和PA,試圖登錄真實(shí)網(wǎng)站。攻擊者用PA不能推導(dǎo)出PB,PB安全保存在USB KEY,密文傳輸,無(wú)法竊取PB,網(wǎng)站服務(wù)器利用PA對(duì)客戶的驗(yàn)證(驗(yàn)證2)失敗,提示“非法客戶”退出,登錄失敗。
(3)情況三。假設(shè)攻擊者已竊取了用戶USB KEY和IDA,試圖登錄網(wǎng)站。驗(yàn)證1通過(guò),驗(yàn)證2 失敗,提示“非法客戶”退出,登錄失敗。
“網(wǎng)絡(luò)釣魚”也是“愿者上鉤”,之所以不斷發(fā)生,就是人們防范觀念淡薄,反之,用戶安全意識(shí)的提高,嚴(yán)格執(zhí)行的安全策略、養(yǎng)成良好的安全習(xí)慣能有效地降低“網(wǎng)絡(luò)釣魚”的風(fēng)險(xiǎn)。同時(shí)要從根本上防御“網(wǎng)絡(luò)釣魚”攻擊還必須依靠安全技術(shù)的不斷提高。
參考文獻(xiàn):
張煥國(guó) 劉玉珍:密碼學(xué)引論.武漢:武漢大學(xué)出版社,2004
注:本文中所涉及到的圖表、注解、公式等內(nèi)容請(qǐng)以PDF格式閱讀原文