首先,Tunnel發送給入侵者一個確認數據,報告Tunnel存在;然後Tunnel馬上發送一個新的連接去索取入侵者的攻擊數據並處理入侵者從HTTP端口發來的數據;最後,Tunnel執行入侵者想要的操作。由於這是“正常”的數據傳輸,防火牆一樣沒看見。但是目標沒開放80端口怎麼辦呢?擅自開一個端口等於自殺。但是入侵者不會忘記那個可愛的NetBIOS端口——長年累月開放的139端口,和它分享數據,何樂不為? Tunnel技術使後門的隱蔽性又上了一個級別,可是這並不代表無懈可擊了,因為一個有經驗的管理員會通過Sniffer看到異常的景象…… Tunnel攻擊被管理員擊潰了,可是,一種更可怕的入侵正在偷偷進行中……
3、無用的數據傳輸?
眼皮底下的偷竊者——ICMP
ICMP,Internet Control Message Protocol(網際控制信息協議),最常見的網絡報文,近年來被大量用於洪水阻塞攻擊,但是很少有人注意到,ICMP也偷偷參與了這場木馬的戰爭…… 最常見的ICMP報文被用作探路者——PING,它實際上是一個類型8的ICMP數據,協議規定遠程機器收到這個數據後返回一個類型0的應答,報告“我在線”。可是,由於ICMP報文自身可以攜帶數據,就注定了它可以成為入侵者的得力助手。由於ICMP報文是由系統內核處理的,而且它不占用端口,因此它有很高的優先權。ICMP就像系統內核的親戚,可以不受任何門衛阻攔,於是,籃子裡藏著武器的鄉下老人敲響了總統的房門……
使用特殊的ICMP攜帶數據的後門正在悄然流行,這段看似正常的數據在防火牆的監視下堂而皇之的操縱著受害者,即使管理員是個經驗豐富的高手,也不會想到這些“正常”的ICMP報文在吞噬著他的機器。有人也許會說,抓包看看呀。可是,實際應用中,傳遞數據的ICMP報文大部分肯定是加密過的,你怎麼檢查?
不過,ICMP也不是無敵的,有更多經驗的管理員干脆禁止了全部ICMP報文傳輸,使得這位親戚不得再靠近系統,雖然這樣做會影響系統的一些正常功能,可是為了避免被親戚謀殺,也只能忍了。最親密最不被懷疑的人,卻往往是最容易殺害你的人。
不正常的郵遞員——IP首部的計謀
我們都知道,網絡是建立在IP數據報的基礎上的,任何東西都要和IP打交道,可是連IP報文這個最基本的郵遞員也被入侵者收買了,這場戰爭永不停歇……為什麼呢?我們先略了解一下IP數據報的結構,它分為兩個部分,首部和身體,首部裝滿了地址信息和識別數據,正如一個信封;身體則是我們熟悉的數據,正如信紙。任何報文都是包裹在IP報文裡面傳輸的,通常我們只留意信紙上寫了什麼,卻忽略了信封上是否塗抹了氰酸鉀。於是,很多管理員死於檢查不出的疑症……
這是協議規范的缺陷導致的,這個錯誤不是唯一的,正如SYN攻擊也是協議規范的錯誤引起的。相似的是,兩者都用了IP首部。SYN是用了假信封,而“套接字”木馬則是在信封上多余的空白內容塗抹了毒藥——IP協議規范規定,IP首部有一定的長度來放置標志位(快遞?平信?)、附加數據(對信的備注),結果導致IP首部有了幾個字節的空白,別小看這些空白,它能攜帶劇毒物質。這些看似無害的信件不會被門衛攔截,可是總統卻不明不白的死在了辦公室……
入侵者用簡短的攻擊數據填滿了IP首部的空白,如果數據太多,就多發幾封信。混入受害者機器的郵遞員記錄信封的“多余”內容,當這些內容能拼湊成一個攻擊指令的時候,進攻開始了……
結語
後門技術發展到今天,已經不再是死板的機器對機器的戰爭,它們已經學會考驗人類,現在的防御技術如果依然停留在簡單的數據判斷處理上,將被無數新型後門擊潰。真正的防御必須是以人的管理操作為主體,而不是一味依賴機器代碼,否則你的機器將會被腐蝕得面目全非……