近幾年來隨著網路寬頻時代的來臨,以及電子商務交易的興起,網路安全也逐漸慢慢受到人們的重視,人們透過各種方式以更快更方便的技術連上網路,人與人之間的種種行為模式幾乎都轉變到網路上,帶來的方便與快捷讓你我的生活離不開網路。然而在此同時網路安全乃至於個人隱私的保密這個以往不受重視的一環也逐漸因為越來越多的兩岸駭客攻防,或是情書病毒,乃至於木馬程式的危害等受到人們的重視。

本文會介紹駭客的攻擊手法,以及下一代木馬程式的會採取的技術,以及系統安全防護者防衛之道。此外也會描述木馬程式是如何突穿防火牆的防禦。

駭客攻擊步驟

1.目標鎖定,資源搜尋
  首先駭客想要攻擊一個目標,往往會先蒐集目標公司或網域的相關資訊,其手法不外乎是上目標機構或組織的網站,或是透過搜尋引擎搜查相關的資訊,駭客比較在意的資訊包括組織坐落的地址,相關的公司或機構,網域名稱,管理聯絡人,登記者,DNS Server的名稱等等。

2.主機掃描
  聰明的駭客也知道你有裝設防火牆,在沒有十全把握之前不會貿然的對目標主機進行掃描的動作,駭客會用Ping的手法來看看你對Ping的回應,也會用Traceroute這個工具來觀察在目標主機與自己之間有多少主機存在,哪些可能是防火牆,哪些是router,在依狀況不同來擬定攻擊手法。

3.windows資源列舉
  Windows系列的作業系統提供的列舉方式將會把你電腦裡面的秘密開放出來讓駭客參考。駭客可以對目標NT主機建立一個空連線,透過這個方式來得到目標的主機名稱,網路卡編號,群組,帳號等資訊,如果進一步的猜出你的NT系統管理員密碼,它更可以遠端連上你的主機,擁有一切的權限,這對系統的危害相當的大。

4.入侵系統
  在這裡我只提幾個大項出來,而不涉及關鍵實作技術部分。


密碼破解
傳統的駭客是以破主機帳號密碼為達成自我成就感的方式之一,現今風行的linux採用的DES演算法如果拿到加密後的密文早已可以使用字典檔的方式用暴力方式加以破解,成功與否只是時間問題。至於WIN NT上的密碼檔也可以用DumpACL以及pwdump等工具來破解SAM密碼檔。

特洛伊木馬
  攻擊手法主要是騙取被害人執行特定的程式(不外乎是偷拐哄騙)來植入木馬程式,再透過clinet端的程式來竊取對方主機的資源。

應用程式漏洞或系統服務漏洞
駭客可以利用你系統的應用程式的漏洞或是主機上提供服務的程式的漏洞來入侵你的系統,例如NT上的IIS Server或是IE瀏覽器,linux上的snmp, bind等,只要你沒有更新最新的patch程式,就可能成為別人的目標。

Sniffer(監聽器)監聽
  監聽器的出現來自於網管人員對於網路流量的管理監控需求,因此需要一套軟體來記錄LAN裡面傳遞的封包資訊,流量等紀錄。但被有心人士拿來當作竊取資訊的手法。

DoS/DDoS攻擊
  這個攻擊手法不外乎是利用TCP/IP協定當初設計的缺失,以及作業系統針對TCP/IP協定實際implement方式的不同來設計攻擊方式,駭客會使用大量的封包或是特異畸形的封包來癱瘓目標主機上的服務,結果輕則使目標主機服務停止,重則讓主機當機。

Buffer Overflow(緩衝區溢位)攻擊
  對真正的高手而言,什麼木馬程式或是sniffer乃至於DDoS手法都不能展現他對作業系統的了解與程式語言的天份,他會選擇所謂的Buffer Overflow來實施攻擊,因為這種攻擊存在於任何一套軟體甚至是作業系統中,也可能是你我寫的程式或是你我天天在用的程式,最厲害的駭客可以精心設計出造成Buffer Overflow之後跳到他設計好的程式程序裡面。

人為因素造成安全政策漏洞
  再好的系統安全政策都離不開人的因素,高明的駭客很可能會因為系統管理者的一時疏忽而入侵系統,你我都有可能因為沒有遵照安全政策對你的規範而成為駭客入侵的跳板。所有的系統安全都離不開人的因素,人為疏失所造成系統安全的漏洞是佔駭客入侵成功最大的百分比。
以上步驟就是一個駭客入侵他人主機大致會經歷的幾個階段,這些階段每一步驟的操作都需要相當多的系統知識,以及對相關安全漏洞的深入了解,這也代表了水能載舟亦能覆舟,一個高明的駭客反過來說也能成為一流的系統安全管理者,所用的技術完全相同,但目標卻相異。

下一代的木馬程式技術探討

  木馬背後還包含了許多技術,例如木馬是如何做到讓你察覺不出來呢?第一代的木馬程式大都是惡作劇多,也就是所謂的後門程式,讓駭客可以規避正常的系統稽核程序直接進入到系統,此時的木馬不以竊取資料為主而以開個後門方便入侵者進入系統為主。

  後來的木馬例如Netspy,NetBus,BO2K,Sub7等木馬越作功能越強,體積也越來越小,佔用的記憶體也很像一般的process,同時也會取個類似像是kernel32.exe的正經八百的名字讓你就算想刪除這個process也會猶豫三分,此外木馬程式會複製本體執行檔到系統目錄或是特定目錄下,以增加下次開機存活機會。你如果沒有把木馬移除乾淨,下次開機照樣執行。此外木馬程式開啟的port往往開後面的port(接近65536),因為系統要掃完全部的port要花很久的時間,好方便木馬程式隱藏規避偵測。

  新一代的木馬client與server的連線彼此採取加密的措施,確保連線過程的資料不被竊取,此外有的木馬不會開port讓你察覺出來,本身透過其他方式跟其他主機溝通交換訊息。

  至於木馬的隱藏技術方面,在Win98/Me下木馬可以輕易的隱藏在工作列中,但是在win2000下木馬大都會出現在Process列裡面,因為木馬也是一般的Windows程式,任何在windows下的程式都必須向windows註冊視窗類別,取得handle才能呼叫CreateWindow建立視窗,因此很難在程序列中消失。不過我們可以使用將程序設定成系統服務,喬裝是一般的windows service 來讓系統以為這個程序是系統的服務程序而不是一般的應用程式來看待。

  未來的木馬會隱藏在DLL檔裡面,他擺脫了傳統木馬開啟port監聽的技術,而採用改寫DLL(動態連結函式庫)或驅動程序的方式,這樣一來系統既沒有產生新的文件,一切的服務也照常運作,更沒有多的port開啟,一旦木馬的控制端像目標主機發出約定的訊息之後,木馬自動啟動,隱藏在DLL內的程序自動驅動,事實上類似的木馬會越來越多,將會對微軟的DLL技術帶來新的衝擊。

結論

  資訊安全的範圍相當寬廣,牽涉到的作業系統,版本,應用程式等相關技術不是三言兩語說的完的,唯有靠大家時時保持警覺,以嚴謹的心態來遵守網管人員制定的安全政策,以積極的心來防禦駭客的攻擊,我想才是長遠處理網路安全這方面問題的方法。

駭客的攻擊是永遠不會停止的,換個角度想,其實有了駭客這個系統才會變得更加安全,人們才會真正重視網路安全的危機感,將來才能架構出一個比較合理安全的防衛體系,這對負責維護網路安全的我們而言,不也是一件好事?

作者:資策會 網路及通訊實驗室 李宜揚

arrow
arrow
    全站熱搜

    lzwceo589 發表在 痞客邦 留言(0) 人氣()