關(guān)于網(wǎng)線局域網(wǎng)應(yīng)用中的安全

字號:

即使無線局域網(wǎng)絡(luò)的系統(tǒng)管理者使用了內(nèi)置的安全通訊協(xié)議:WEP(Wired Equivalent Privacy),無線局域網(wǎng)的安全防護(hù)仍然不夠。在倫敦一項(xiàng)長達(dá)7個月的調(diào)查顯示,94%的無線局域網(wǎng)都沒有正確設(shè)定,無法遏止黑客的入侵。隸屬于國際商會(International Chamber of Commerce)的網(wǎng)絡(luò)犯罪部門(Cybercrime Unit)就發(fā)現(xiàn),即使無線網(wǎng)絡(luò)很安全,也會因?yàn)榉N種原因而大打折扣。現(xiàn)在非常盛行「路過式的入侵(drive-by hacking)」,黑客開車進(jìn)入商業(yè)辦公區(qū),在信號所及的地方,直接在車?yán)餄B透企業(yè)的無線局域網(wǎng)。
    University of California at Berkeley(美國加州柏克萊大學(xué))的三名研究人員,Nikita Borisov、Ian Goldberg、以及Dabid Wagner,在去年發(fā)現(xiàn)WEP編碼的重大漏洞;除此之外,在2001年8月,密碼學(xué)家Scott Fluhrer、Itsik Mantin、以及Adi Shamir在一篇論文中,指出了RC4編碼的缺點(diǎn),而RC4正是WEP的基礎(chǔ)。就在幾天后,2001年8月底,Rice University(美國萊斯大學(xué))的學(xué)生與兩名AT&T(美國電報(bào)電話公司)實(shí)驗(yàn)室的員工(Adam Stubblefield與John Joannidis、Aviel D. Rubin),將這兩篇論文的內(nèi)容化為實(shí)際的程序代碼。令人驚訝的是,其中完全沒有牽扯到任何特殊裝置,你只要有一臺可以連上無線網(wǎng)絡(luò)的個人計(jì)算機(jī),從網(wǎng)絡(luò)上下載更新過的驅(qū)動程序,接下來就可以開始記錄網(wǎng)絡(luò)上來往的所有封包,再加以譯碼即可。
    WEP的運(yùn)作方式
    在許多無線局域網(wǎng)中,WEP鍵值(key)被描述成一個字或位串,用來給整個網(wǎng)絡(luò)做認(rèn)證。
    目前WEP使用2種編碼大小,分別是64與128位,其中包含了24位的初始向量(IV,Initialization Vector)與實(shí)際的秘密鍵值(40與104位)。大家耳熟能詳?shù)?0位編碼模式,其實(shí)相當(dāng)于64位編碼。這標(biāo)準(zhǔn)中完全沒有考慮到鍵值的管理問題;的要求是,無線網(wǎng)卡與基地臺必須使用同樣的算法則。通常局域網(wǎng)的每一個用戶都會使用同樣的加密鍵值;然而,局域網(wǎng)用戶會使用不同的IV,以避免封包總是使用同樣WEP鍵值所「隨機(jī)」產(chǎn)生的RC4內(nèi)容。
    在封包送出之前,會經(jīng)過一個「忠誠檢查(IC,Integrity Check)」,并產(chǎn)生一個驗(yàn)證碼,其作用是避免數(shù)據(jù)在傳輸過程中,遭到黑客竄改。RC4接下來會從秘密鍵值與IV處,產(chǎn)生一個keystream,再用這個keystream對數(shù)據(jù)與IC做互斥運(yùn)算(XOR,Exclusive-Or)。首先IV會以一般文字方式傳送出去,然后才是加密后的數(shù)據(jù)。只要將IV、已知的鍵值、以及RC4的keystream再做一次互斥運(yùn)算,我們就可以將數(shù)據(jù)還原。
    弱點(diǎn):初始向量(IV,Initialization Vector)
    40或64位編碼可以填入4組鍵值;然而我們只使用了第一組。
    WEP編碼的弱點(diǎn)在于IV實(shí)作的基礎(chǔ)過于薄弱。例如說,如果黑客將兩個使用同樣IV的封包記錄起來,再施以互斥運(yùn)算,就可以得到IV的值,然后算出RC4的值,最后得到整組數(shù)據(jù)。
    如果我們使用的初始向量為24位,那我們就可以在繁忙的網(wǎng)絡(luò)點(diǎn)上(例如以11Mbps的頻寬,不斷傳送1500字節(jié)的封包),以不到5小時(shí)的時(shí)間算出結(jié)果。以這樣的例子來說,總數(shù)據(jù)量為24GB。因此,要在幾小時(shí)的時(shí)間內(nèi),記錄所有傳輸?shù)姆獍⒁怨P記本計(jì)算機(jī)算出其結(jié)果,是絕對可行的事情。