JavaEye主機遭ARP攻擊 官方切換網(wǎng)段應(yīng)對
【51CTO.com綜合報道】國內(nèi)著名Java站點JavaEye托管的主機近日遭遇ARP攻擊,導(dǎo)致網(wǎng)站訪問出現(xiàn)多次中斷,還有用戶報告被掛馬。近日JavaEye在網(wǎng)站上發(fā)布聲明,解釋了本次事件的來龍去脈及應(yīng)對措施,并對國內(nèi)IDC及技術(shù)人員的素質(zhì)進行抨擊。
以下是JavaEye的聲明原文。標注為51CTO.com編者所加。
從7曰5日開始,很多JavaEye用戶可能都發(fā)現(xiàn)了JavaEye網(wǎng)站出現(xiàn)了間歇性無法訪問,或者頁面出現(xiàn)亂碼的問題,還有用戶報告所謂的JavaEye網(wǎng)站被掛木馬的報告,我們感覺非常有必要向用戶及時解釋事情的真相和來龍去脈。
要搞清楚這究竟是怎么回事,我們先要了解什么叫做“ARP欺騙”。【51CTO.com注:關(guān)于ARP欺騙和ARP攻擊的詳細原理和防范方法,有興趣的朋友可以參考51CTO關(guān)于ARP的技術(shù)專題。】
ARP是路由器維護的一個服務(wù)器網(wǎng)卡IP地址和網(wǎng)卡Mac地址的對照表,根據(jù)這個ARP對照表,路由器才能決定將外網(wǎng)請求過來的數(shù)據(jù)發(fā)給網(wǎng)段內(nèi)的哪臺服務(wù)器。但是ARP往往并不是路由器靜態(tài)寫死的(如果靜態(tài)寫死,那路由器管理員會累死),而是由服務(wù)器自己不停的把自己的ARP數(shù)據(jù)發(fā)送給路由器,通知路由器更新ARP對照表。因此ARP對照表的正確與否往往取決于服務(wù)器的自覺性。
說到這里大家就可以明白了,ARP機制有非常大的漏洞!如果有臺叫做Fake的服務(wù)器心懷不軌,他想攻擊JavaEye服務(wù)器,他就可以瘋狂的向路由器發(fā)送更新ARP的通知,不停的告訴路由器,我才是JavaEye,我才是JavaEye,由于他發(fā)送欺騙性ARP數(shù)據(jù)包頻率非常高,在路由器刷新 ARP對照表的瞬間,他搶在JavaEye服務(wù)器之前通知了路由器,那么他就得逞了。
從這個時候開始,凡是用戶訪問JavaEye的請求,路由器都會錯誤的發(fā)給fake服務(wù)器,而fake服務(wù)器會把請求路由給真正的JavaEye服務(wù)器,然后再添加上早已準備好的木馬js,于是用戶的瀏覽器接收到的網(wǎng)頁就被掛馬了!
這僅僅是一個最簡單的ARP欺騙,實際的ARP攻擊手段多種多樣,但是最基本的解決ARP攻擊的手段需要路由器具有足夠好的安全性,正確的識別和拒絕異常的ARP數(shù)據(jù)欺騙包。但遺憾的是中國的IDC機房的網(wǎng)絡(luò)安全性,中國IDC網(wǎng)管的技術(shù)水平都是慘不忍睹的!截止目前,中國IDC機房的網(wǎng)管們對付 ARP欺騙的唯一手段還僅僅只是在出現(xiàn)問題的時候,一個IP一個IP的拔網(wǎng)線的方式去排查fake服務(wù)器。
然而這還不是最糟糕的情況,最糟糕的情況是這個網(wǎng)段并不是屬于某個服務(wù)器托管商的,而是分配給好幾個不同的托管商。這些托管商都沒有權(quán)限去登錄整個網(wǎng)段的路由器。于是在v01托管商機柜里面的JavaEye服務(wù)器被fake服務(wù)器冒名頂替之后,v01托管商根本找不出來fake究竟在哪里,因為他沒有權(quán)限去拔別人機柜的網(wǎng)線尋找fake服務(wù)器,他只能判斷出來fake不在自己的機柜之內(nèi),要求別的托管商去自查。
這里就引出了第二個問題?為什么cracker對JavaEye的服務(wù)器這么敢興趣?因為JavaEye服務(wù)器流量大用戶多,可以最大化達到它控制木馬的目的。
試想你是一個卑鄙齷齪的人,你想控制盡可能多的桌面電腦,盜竊他們的帳號、密碼和其他有價值的數(shù)據(jù),那么你必須想辦法給他們的桌面安裝木馬。要做到這一點,你就必須挑選一個訪問量龐大用戶多的網(wǎng)站掛馬,這樣用戶訪問這個網(wǎng)站的時候就會被下木馬,否則你等于白費功夫。所以當JavaEye服務(wù)器所在的網(wǎng)段地址之內(nèi)出現(xiàn)了某臺存在安全缺陷的Windows服務(wù)器,這臺Windows服務(wù)器就成了cracker的肉雞了。
當然cracker并不是和JavaEye有宿怨,但是當它一旦控制了一臺肉雞,它想最大化的發(fā)揮肉雞的作用,就肯定要逐個調(diào)查該網(wǎng)段的每臺服務(wù)器,看看究竟哪臺服務(wù)器流量大,那臺流量最大的服務(wù)器就是它理想的冒名頂替的對象了。
這就是JavaEye服務(wù)器目前面臨的問題!
首先這個問題并不是JavaEye服務(wù)器本身的問題,而是服務(wù)器所在的網(wǎng)段的網(wǎng)關(guān)被ARP攻擊欺騙了,因此JavaEye服務(wù)器本身無論做什么工作都不解決問題。(當然JavaEye如果自己發(fā)起ARP攻擊是可以自衛(wèi)的,但是也有很大的風(fēng)險被弱智的管理員發(fā)現(xiàn)以后拔掉網(wǎng)線,所以這種以 cracker對cracker的手段不解決根本的問題)
其次這個問題的解決依賴于路由器的安全性和網(wǎng)管們的技術(shù)素養(yǎng),不過可嘆的是,中國網(wǎng)絡(luò)技術(shù)水平之低劣是令人發(fā)指的!以我這種對網(wǎng)絡(luò)技術(shù)外行的人都可以去指點他們怎么做,你就不要對他們能夠解決問題報任何希望。
更令人可恥的是他們的職業(yè)道德水平問題,當晚上再次出現(xiàn)ARP攻擊的時候,該托管商技術(shù)人員說下班了已經(jīng)回家,明天上班以后再給你解決!
經(jīng)過和服務(wù)器托管商的多次協(xié)商,我們將采取如下解決方案:JavaEye網(wǎng)站的服務(wù)器將于7月7日)點左右,切換到另外一個比較安全的網(wǎng)段之內(nèi),避開這個已經(jīng)被ARP攻擊控制的網(wǎng)關(guān)。
由于切換服務(wù)器IP導(dǎo)致的DNS域名失效,特別是由于NS記錄需要修改和刷新,JavaEye網(wǎng)站將從今天下午(7月7日)5點左右開始無法訪問,NS記錄的刷新需要至少24小時時間,因此DNS的完全刷新大概需要24-48小時時間。預(yù)計從周四上午開始完全恢復(fù)JavaEye網(wǎng)站的訪問。
在此無法訪問JavaEye網(wǎng)站的期間,你可以通過手工修改本地的hosts文件解析來訪問JavaEye,具體的IP地址列表和修改方法,請隨時查看JavaEye網(wǎng)站臨時IP地址解析列表,并將這個地址告知其他無法訪問的用戶。
如果您使用Windows操作系統(tǒng),請修改C:\WINDOWS\system32\drivers\etc\hosts文件,添加如下內(nèi)容,然后重新啟動瀏覽器。如果您使用Linux或者MacOSX操作系統(tǒng),請使用root權(quán)限修改/etc/hosts文件,添加如下內(nèi)容,然后重新啟動瀏覽器。
……
51CTO編者按:實際訪問過程中發(fā)現(xiàn)javaeye至今還被北京一處DNS服務(wù)器所劫持,所有訪問都被轉(zhuǎn)發(fā)到一個垃圾站上。讓人頗為不爽。如圖所示。
![]() |
圖1 |
【編輯推薦】