第二章 - 雲林科技大學計算機網路研究室
Download
Report
Transcript 第二章 - 雲林科技大學計算機網路研究室
教育部資通訊人才培育先導型計畫
寬頻有線教學推動聯盟中心
第二章 網路攻擊與防禦技術
國立雲林科技大學
自由軟體研發中心
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
2.2 惡意程式
前言
本章我們將介紹目前在網際網路上幾
種常見的網路攻擊,並說明它們的運
作原理。除此之外,我們也說明防止
網路攻擊的方法及措施,提供管理者
減少自己所管理的企業網路遭受攻擊
的機率。
2.3 木馬程式
2.4 分散式阻斷攻擊
2.5 垃圾郵件
國立雲林科技大學 自由軟體研發中心
2
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
何謂網路攻擊?
利用網際網路上的安全漏洞,來非法
取得網路資源,或破壞網路上某些服
務正常運作的行為稱為網路攻擊。
網路的安全漏洞,可分為以下幾類:
網路通訊協定本身的缺陷
網路軟體設計上的缺陷
作業系統本身的缺陷
管理不當所形成的漏洞
除此之外,有些硬體產品,本身也會
存在一些瑕疵,而內部人員對網路資
源的濫用,或是人為的洩密等,都可
能會形成網路安全上的漏洞。一旦網
路上出現安全漏洞,便給了入侵者可
乘之機。
資料來源: www.cisco.com
國立雲林科技大學 自由軟體研發中心
3
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
暴力入侵
網路監聽
主機假冒
主機掃描
阻斷式服務攻擊
本小節將針對利用網路通訊協定本身
缺陷的攻擊做介紹,如主機假冒、主
機掃描、主機監聽等,但上述的攻擊
行為,都會利用TCP、ARP (Address
Resolution Protocol)這兩種協定本身
的漏洞來做攻擊,因此在說明左列之
攻擊行為前,會先對TCP如何建立連
線,以及ARP的運作模式作基本的介
紹。
國立雲林科技大學 自由軟體研發中心
4
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
服務端
用戶端
TCP連線建立流程:
1.
當用戶端要與服務端建立一條新連線時,會先發
出SYN封包要求建立連線,並且加上自己的初始
資料序號(sequence number)“x”。
2.
服務端收到步驟1送出的SYN封包時,便會由等
待連線的監聽狀態(LISTEN)進入已收到連線要求
的狀態(SYN_RECVD),此時對服務端而言稱為
半連線狀態(half-open connection),意思是指服務
端已經收到對方的連線要求並開始處理,此時服
務端的系統便會開始記錄該連線的資訊(如用戶端
的位址、使用的埠編號、連線的狀態等)並分配資
源給該連線(如連線所要使用的緩衝區),之後將
用戶端送來的初始資料序號加1(x+1),並設定自
己的初始資料序號“y”,發出SYN+ACK封包來
回應用戶端,意思是已經認可該用戶端的連線要
求。
3.
當用戶端收到步驟2的回應封包時,便會將服務
端送來的初始資料序號加1(y+1)回應給服務端,
表示已經收到服務端的回應,當服務端收到用戶
端的回應時,便表示此連線已經正常建立成功了
,此時服務端會進入已連線狀態(CONNECTED)
,可以開始與用戶端互傳資料。
SYN
x
SYN_RECVD
SYN y ,
1
ACK x+
ACK
y+1
TCP連線建立流程
CONNECTED
國立雲林科技大學 自由軟體研發中心
5
2.1 網路攻擊模式介紹
第二章 網路攻擊與防禦技術
Who has
140.125.32.30?
主機A
140.125.32.10
00:80:C7:8F:11:22
ARP Request
主機B
140.125.32.20
00:80:C8:9F:33:44
ARP Request
ARP運作模式
什麼是ARP?在網路上當某一部主機要傳送封包
給另一臺主機時,若只知道對方的IP位址而不知
道對方主機的MAC位址,會透過ARP發出廣播封
包詢問,藉此取得對方主機的MAC位址。
左圖為ARP的運作流程:
1.
當主機B要傳送封包給主機C時,它必須先
透過ARP Request廣播封包來詢問誰有IP位
址140.125.32.30的硬體位址。
主機C
140.125.32.30
00:80:C9:0F:55:66
140.125.32.30 is at
00:80:C9:0F:55:66
2.
主機A
140.125.32.10
00:80:C7:8F:11:22
主機B
140.125.32.20
00:80:C8:9F:33:44
ARP Reply
主機C
140.125.32.30
00:80:C9:0F:55:66
3.
主機A
140.125.32.10
00:80:C7:8F:11:22
主機B
140.125.32.20
00:80:C8:9F:33:44
Data
而當主機C收到這廣播詢問時,便會回覆主
機B的詢問,並告知自己的硬體位址為
”00:80:C9:0F:55:66”。
而主機B在收到這個回應時,便可以將要傳
送的封包填上正確的硬體位址,並且傳送
給主機C。
主機C
140.125.32.30
00:80:C9:0F:55:66
國立雲林科技大學 自由軟體研發中心
6
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
暴力入侵(Brute force attack)
攻擊者利用程式產生隨機密碼,並利用該組密碼
嘗試登入目標主機,若無法登入則再產生一個新
的隨機密碼,直到試出正確的密碼為止。
假設現在有一組長度為10的密碼,由英文字母
(a~z, A~Z)與數字(0~9)組成,那麼密碼的可能組
合就有6210 種可能,因此在短時間內要破解的可
能性相當低,即使能夠猜測出正確的密碼,也需
要相當長的時間。
此類軟體如L0phtCrack(現改名為LC5),該軟體
本來是用來做密碼稽核(password audit)及找回遺
失的密碼,如今也常被駭客用來做破解密碼的工
具。
密碼稽核指的是測試密碼強度,檢測是否
為一容易破解的密碼。
找回遺失的密碼則是先經由某些方式收集
並紀錄大量常用的密碼在清單上,之後再
利用這清單上的密碼不斷嘗試,藉以找出
正確的密碼。
資料來源 http://en.wikipedia.org/wiki/L0phtCrack
Ref. http://www.lostpassword.com
國立雲林科技大學 自由軟體研發中心
7
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
攻擊者
140.125.30.1
140.125.30.2
主機假冒(Spoofing):
攻擊者藉由假冒合法的主機來進行非法活動,例
如IP位址假冒(IP address spoofing)、硬體位址假
冒 (ARP spoofing) 、 TCP 連 線 假 冒 (Connection
spoofing)等。
IP位址假冒(IP address spoofing):藉由假冒合法
IP位址來欺騙受攻擊的主機,常見的此類攻擊如
UDP flooding。UDP flooding是藉由發送大量且固
定大小的UDP封包送往受攻擊的主機,目的是將
對方的網路頻寬塞暴,使用IP位址假冒的話,可
以通過防火牆等防禦設備的過濾。
如左圖,攻擊者假冒成 IP位址為140.125.30.1、
140.125.30.2、140.125.30.3的主機,送出封包到
主機A。
主機 A
140.125.30.3
國立雲林科技大學 自由軟體研發中心
8
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
主機假冒(Cont.):
硬體位址假冒(ARP spoofing)
攻擊者假冒合法主機的網路卡位址(MAC address)
,使得被欺騙的主機將所有原本要送往合法主機
的封包,都送至攻擊者主機上。要達到假冒網路
卡位址的目的,通常是利用位址轉換協定ARP
(Address Resolution Protocol)的弱點。
前面提到,ARP若不知道目的主機的MAC位址時
,會發送廣播封包詢問,而為了減少網路因為
ARP廣播詢問造成頻寬浪費,一般的系統都有一
個ARP快取記憶體(ARP Cache)用來記錄一段時間
內已經詢問過的硬體位址與IP位址的對映資訊,
如左圖所示。而假冒硬體位址便是藉由這個特性
來達成假冒的目的。
Who has
140.125.32.30?
主機A
140.125.32.10
00:80:C7:8F:11:22
ARP Request
主機B
140.125.32.20
00:80:C8:9F:33:44
ARP Request
主機C
140.125.32.30
00:80:C9:0F:55:66
ARP cache table
國立雲林科技大學 自由軟體研發中心
9
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
主機假冒(Cont.):
Who has
140.125.32.30?
主機A
140.125.32.10
00:80:C7:8F:11:22
ARP Request
主機B
140.125.32.20
00:80:C8:9F:33:44
IP位址
MAC位址
140.125.32.30
00:80:C7:8F:11:22
140.125.32.30 is at
00:80:C9:0F:11:22
主機A
140.125.32.10
00:80:C7:8F:11:22
ARP Request
ARP Reply
主機B
140.125.32.20
00:80:C8:9F:33:44
主機C (離線)
140.125.32.30
00:80:C9:0F:55:66
硬體位址假冒(Cont.)
當主機B發出詢問主機C的硬體位址時,由於主機
C已離線,因此無法回應主機B的詢問,而主機A
便可以假冒主機C,將自己的硬體位址回應給主
機B 。
而主機B在收到主機A的假冒回應後,便會將主機
A的硬體位址當成主機C的,存到自己的ARP快取
記憶體中,而當主機B要傳送封包給主機C時,便
會填上主機A的硬體位址,直到下次更新ARP快
取記憶體時,才會重新詢問。
主機C (離線)
140.125.32.30
00:80:C9:0F:55:66
國立雲林科技大學 自由軟體研發中心
10
第二章 網路攻擊與防禦技術
第一階段偵測初始資料序號
收到服務主機的回應記錄資
料初始序號
否
差距值 = 初始資料序號 上一次初始資料序號
主機假冒(Cont.):
攻擊者用自已的IP位址向
服務主機提出連線要求
是否為第一次連線?
2.1 網路攻擊模式介紹
是
TCP連線假冒(Connection spoofing)
這類型的假冒攻擊主要是針對用TCP作為傳輸協
定的網路服務為攻擊對象。TCP協定中,連線雙
方傳遞資料時彼此會檢查封包上的資料序號
(Sequence number) 以 及 確 認 碼 (Acknowledge
number),保證資料接收的順序與傳遞的順序相同
。
因此當攻擊者要假冒合法使用者來欺騙提供服務
的網路主機,並且與其建立一條連線時,除了要
假冒該合法使用者的IP位址外,還必須能將服務
端的初始資料序號猜出,並且加1作為確認碼傳
回給該網路主機,才能成功的建立一條假冒的
TCP連線。
TCP連線假冒攻擊分為兩個階段,第一階段為攻
擊者偵測初始資料序號階段,第二階段為假冒
TCP連線的動作。
與服務主機切斷連線
否
是否已經連線10次?
是
輸出結果
國立雲林科技大學 自由軟體研發中心
11
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
主機假冒(Cont.):
Internet
攻擊者
140.125.32.10
服務主機
140.113.22.40
第一階段輸出結果
連線次數
1
2
3
4
5
6
7
初始資料序號
362816000
364160000
365504000
366848000
368192000
370112000
371456000
差距值
1344000
1344000
1344000
1344000
1920000
1344000
8
372800000
1344000
9
374144000
1344000
10
375488000
1344000
TCP連線假冒(第一階段)
在第一階段攻擊者不斷的用自己的IP位址向服務
主機提出連線要求,藉此找出該服務主機在接受
連線時所發出的資料初始序號的規律性。找出規
律性後,攻擊者便可猜測下一次服務主機在接受
連線要求所回應的初始資料序號。
我們由左圖所顯示的結果可以看出,該服務主機
對連線要求所回應的初始資料序號,有規律性的
差距,也就是說,在10次嘗試連線中,連續兩次
連線所得到的初始資料序號幾乎都相差1344000
,只有第六次連線所得到的差距值不同。因此攻
擊者可以藉此來猜測下一次服務主機在接受連線
要求時所回應的初始資料序號。
TCP連線假冒攻擊第一階段
國立雲林科技大學 自由軟體研發中心
12
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
主機假冒(Cont.):
TCP連線假冒(第二階段)
經由第一階段的初始資料序號偵測所得到的結果
,可以猜出服務主機下一次接受連線時,所發出
的初始資料序號很可能是:
最 後 一 次 偵 測 所 得 到 的 初 始 資 料 序 號 + 1344000 =
375488000 + 1344000 = 376832000
因此攻擊者便可以開始進行第二階段的假冒TCP
連線的動作,左圖所示為第二階段假冒TCP連線
的步驟。攻擊者假冒主機A要求與服務主機連線
,當服務主機收到連線要求後,便將對方傳送的
初始資料序號加1作為確認碼ACK(200000002),
並連同自己的初始資料序號376832000送回給主
機A,由於主機A處於離線狀態,因此無法回應
服務主機(攻擊者也可以用我們之後介紹的拒絕服
務攻擊來強迫主機A進入離線狀態) ;而攻擊者雖
然沒有收到服務主機的回應,但可以用在第一階
段所偵測的結果,來猜測服務主機可能發出的初
始資料序號,並加1作為確認碼傳回給服務主機
,也就是:
確認碼 = 最後一次偵測所得到的初始資料序號 +
1344000 + 1 = 375488000 + 1344000 + 1 =
376832001
TCP連線假冒攻擊第二階段
由於服務主機所發出的初始資料序號與攻擊者猜
測的一樣,因此攻擊者便可以成功的與服務主機
建立一條假冒的TCP連線。若攻擊者所猜測的初
始資料序號錯誤,便必須回到第一階段,重新偵
測服務主機初始資料序號的規律性。
國立雲林科技大學 自由軟體研發中心
13
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
網路監聽(Sniffing):
我們目前所使用的網路架構(Ethernet)為一共享式
的,因此導致有心人士可以使用某些軟硬體設備
進行監聽動作,藉此收集他人的機密資料,如帳
號、密碼…等。此種攻擊方式只需要攻擊者將自
已 的 網 路 介 面 卡 設 定 為 混 亂 模 式 (promiscuous
mode),之後只要有封包流經,則網路卡便會將
封包紀錄下來並分析該封包內容。
目前較有名的監聽軟體如Wireshark,該套軟體為
一跨平臺且開放原始碼的程式,能夠分析的通訊
協定包含了大部分目前被使用的協定,如
Ethernet, FDDI, PPP, token ring, IEEE 802.11等封
包。
雖然Wireshark能夠用來擷取封包並分析其內容,
但其原先開發目的並非是用來監聽他人訊息,主
要是讓網路管理者或是通訊協定開發者用來檢測
網路問題、檢查新協定是否有錯誤等正面目的;
而一般使用者也可透過擷取封包,分析其內容而
更瞭解通訊協定實際上是如何運作的。
資料來源 http://en.wikipedia.org/wiki/Wireshark
國立雲林科技大學 自由軟體研發中心
14
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
主機A
192.168.0.5
網路監聽(Cont.):
前面提到,要監聽其他人的封包,需要將自已的
網路介面卡設定為混亂模式,因此要偵測網路中
是否有人安裝監聽程式,藉由查看同一網路中的
電腦網路卡是否運作在混亂模式下,便知道是否
有人在進行監聽的動作。
PromiScan是一套網路監聽節點(sniffing node)偵測
工具,利用對本地端網路送出偵測封包及分析回
傳的訊息,以了解本地端網路是否有主機的網路
卡處於混亂模式中,藉以判定在本地端網路中是
否有網路監聽節點存在。
監聽者
192.168.0.10
國立雲林科技大學 自由軟體研發中心
15
第二章 網路攻擊與防禦技術
2.1 網路攻擊模式介紹
主機掃描(Host scanning):
主機掃描意指對網路上的目標主機利用IP掃描(IP
scanning)或服務埠掃描(port scanning)進行系統漏
洞偵測、服務偵測等行為;之後再利用得到的資
訊來判斷可對目標主機進行何種的攻擊動作。
假設攻擊者經由主機掃描得知主機A有使用21埠
(port)提供ftp的服務,並且提供匿名登入,則攻擊
者則可利用匿名登入的方式搜集主機A提供的檔
案資訊。
左方圖示為主機掃描程式Angry IP Scanner執行
畫面,可用該程式掃描出某臺主機有開啟哪些服
務埠。紅線框代表所要掃描的主機IP位址範圍,
黃線框為設定要掃描的連接埠範圍,藍色框代表
掃描完成後所得到的訊息。
假設攻擊目標的IP是140.125.32.21,那麼就在IP
range的欄位中填入,並填入所要描掃的連接埠範
圍,之後按Start鈕,我們就可以得知目標主機有
開啟哪些連接埠,如左圖(藍色框線處)可以得知
目標主機有開啟21、110、135、139、445等連接
埠。
Angry IP Scanner - Set IP range
Angry IP ScannerSet port range
Angry IP Scanner –
Scanning finished
國立雲林科技大學 自由軟體研發中心
16
第二章 網路攻擊與防禦技術
服務端
用戶端
2.1 網路攻擊模式介紹
SYN
阻斷式服務攻擊(Denial of service):
阻斷式服務攻擊是利用發送大量的攻擊封包或是
特定格式的封包,造成目標主機的網路臃塞或是
目標主機當機,使得目標主機無法對外取得或提
供服務。最為常見的攻擊可分為超載攻擊
(Overload attack)、當機攻擊(Crash attack)兩類。
超載攻擊(Overload attack): 攻擊者大量送出合
法服務的要求,使得被攻擊主機疲於處理這些服
務要求,當主機上允許的連線數目達到最大值或
該主機的處理封包緩衝區已滿,則被攻擊主機就
無法再接受新的連線。利用這種方式可使被攻擊
主機無法對外提供服務,或者因為大量發送封包
,造成被攻擊主機的網路臃塞。常見的超載攻擊
有TCP SYN flooding、ICMP echo flooding、郵件
炸彈等。
當機攻擊(Crash attack):攻擊者針對被攻擊主機
的系統漏洞或通訊協定上的漏洞,發出特定格式
的封包,使得該被攻擊主機因為無法處理這樣的
封包而導致當機。由於此種攻擊法必須針對受攻
擊主機的系統漏洞進行攻擊,因此攻擊者必須熟
知該受攻擊主機的系統資訊,例如使用何種作業
系統、或是使用哪一套伺服器軟體等,才能了解
如何發出攻擊封包。這類型攻擊常見的有針對
Windows作業系統的OOB (Out Of Band)封包攻擊
,以及針對FreeBSD作業系統的TCP RST (Reset
Connection)封包攻擊。
x
SYN_RECVD
SYN y,
A
CK x+1
ACK
y+ 1
CONNECTED
TCP 建立連線流程
國立雲林科技大學 自由軟體研發中心
17
第二章 網路攻擊與防禦技術
2.2 惡意程式
資料來源
http://www.microsoft.com/taiwan/security/malwareremove/default.mspx
惡 意 程 式 (malware) 為 malicious
software的縮寫名稱,用來稱呼經由
電腦語言所寫出來帶有不正當目的之
程式碼,攻擊者經由此類程式可得到
被攻擊主機的存取權限、資源、機密
資料等。一般常聽到的病毒(Virus)、
蠕蟲(Worm)、間諜軟體(Spyware)等
都是惡意程式。
本小節將會根據以下的分類,簡單介
紹目前常見的惡意程式,以及如何預
防被殖入惡意程式的方法。
惡意程式的分類:
電腦病毒(Virus)
蠕蟲(Worm)
後門程式(Backdoor)
間諜程式(Spyware)
Rootkit
國立雲林科技大學 自由軟體研發中心
18
第二章 網路攻擊與防禦技術
2.2 惡意程式
電腦病毒(Virus):
電腦病毒是指一段刻意寫作的可執行程式碼,會
自行複製、感染且破壞電腦運作。通常是在使用
者下載網路軟體或使用已受感染的磁片或文件而
遭受感染。
電腦病毒會在未經使用者同意之下,擅自改變電
腦運作方式(如電腦無法開機、硬碟格式化、檔案
容量變大 …等);電腦病毒具有自動破壞檔案系
統與複製病毒的特性,能透過已感染的檔案複製
相同的病毒並進而感染其他檔案。例如:Melissa、
CIH等。
電腦病毒的種類:
檔案型病毒 (File Infector Virus)
開機型病毒 (Boot Strap Sector Virus)
巨集病毒 (Macro Virus)
複合型病毒 (Multi-Partite Virus)
千面人病毒 (Polymorphic/Mutation Virus)
資料來源 http://zh.wikipedia.org
國立雲林科技大學 自由軟體研發中心
19
第二章 網路攻擊與防禦技術
2.2 惡意程式
電腦病毒
開機型病毒(Boot Strap Sector Virus)
開機型病毒是藏匿在磁碟片或硬碟的第一個磁區
。早期DOS的架構設計,使得病毒可以在每次開
機作業系統還沒被載入前,病毒就先被載入到記
憶體中,如此一來,就可以指定在某狀況下無法
開啟電腦。例如米開朗基羅病毒會在3月6日讓你
的電腦一開機就出現黑色畫面。
檔案型病毒(File Infector Virus)
檔案型病毒通常會寄生在執行檔中,當執行檔被
開啟時,同時也啟動了病毒程式。一般來說,檔
案型病毒還分成非常駐型(Non-Memory Resident
Virus)與常駐型病毒(Memory Resident Virus)。
非常駐型病毒會把自己寄生在*.COM或*.EXE等
執行檔,當執行檔被執行的同時也啟動了病毒的
感染動作。
資料來源 http://www.icst.org.tw
而常駐型病毒除了會依附在執行檔中之外,還會
寄生在記憶體中,只要執行檔被執行後,它便開
始感染動作,
有名的常駐型病毒如早期的黑色星期五病毒,每
逢13號星期五的日子,此病毒就會把被感染的檔
案刪除。
國立雲林科技大學 自由軟體研發中心
20
第二章 網路攻擊與防禦技術
2.2 惡意程式
電腦病毒(Cont):
複合型病毒(Multi-Partite Virus)
複合型病毒兼具開機型病毒以及檔案型病毒的特
性。它們可以傳染*.COM或*.EXE檔,也可以傳
染磁碟的開機系統區,因此它的破壞性非常可觀
。
千面人病毒(Polymorphic/Mutation Virus)
千面人病毒顧名思義,就是因為它具有千變萬化
的不同病毒特性,每當它們繁殖一次,就會以不
同的病毒碼再傳染到別的地方,每個中毒的檔案
所含有的病毒特性都不一樣,對於只掃描固定病
毒碼特性的防毒軟體來說,增加了偵測的困難度
。有名的千面人病毒如Marburg病毒,電腦在被
感染三個月之後才會發作,發作時電腦螢幕上會
顯示一堆X的符號,如左圖所示。
資料來源 http://www.trendmicro.com.cn
國立雲林科技大學 自由軟體研發中心
21
第二章 網路攻擊與防禦技術
2.2 惡意程式
電腦病毒(Cont.):
巨集型病毒:
不同於其它的病毒類型,巨集病毒與作業系統無
關,此類病毒是由應用程式所執行。巨集病毒是
由 Visual Basic Application (VBA) 所 寫 , 針 對
Microsoft Office 的 軟 體 進 行 攻 擊 。 以 Microsoft
Word為例,若開啟一個含有巨集病毒的檔案,該
病毒將會利用Word所提供的自動巨集功能將病毒
本身寫入NORMAL.DOT共用範本內,再感染其
它乾淨的文件檔案。
著名的病毒如Taiwan No.1,該病毒在每月的13日
發作,當使用者當天開啟Word程式時,便會跳出
一對話窗請你玩個心算遊戲,假設使用者答錯,
就會開啟20份Word的視窗,並再請你玩一次,答
錯的話再開啟20份Word的視窗,此過程一直重複
的話,會導致大量的記憶體被佔用而造成系統當
機。若答出正確答案的話,會出現一份調侃文件
。 除此以外,被感染的檔案還會無法使用Word
的”另存新檔”功能。
資料來源 http://www.y2000.com.tw/hot/no1tm.htm
國立雲林科技大學 自由軟體研發中心
22
第二章 網路攻擊與防禦技術
2.2 惡意程式
蠕蟲(Worm):
與一般電腦病毒不同,並非藉由感染其它檔案來
散播,而是藉由網路將自己複製給網路上的其他
電腦。較著名的有CodeRed與Nimda。
CodeRed主要是針對Windows作業系統有安裝IIS
服務的主機作為攻擊對象,有著明顯的特微
(http://211.23.187.133/~netscope/NetFlow_Detect_C
ore_Red_Worm.pdf ) , 如每個flow的destination
port=80,packets=3,size=144bytes , 當被感染
後,CodeRed會自動產生一份攻擊對象的IP位址
清單,並嘗試對清單上的IP位址主機進行感染。
而繼CodeRed之後的Nimda,多了其它的傳播方
式,Nimda的傳播方式有四種,分別是電子郵件
、資源分享(網路芳鄰)、微軟IIS及WEB瀏覽。被
感染後會將C磁碟機設為資源共享,任意複製、
修 改 、 刪 除 重 要 的 檔 案 文 件 , 並 在
C:WindowsTemp中 建 立meXXXXX.temp.exe檔案
,這個檔案是e-mail格式,並且夾帶病毒檔案。
資料來源 http://www.hacker.org.tw/mirrorz/Hackland/9.htm
國立雲林科技大學 自由軟體研發中心
23
第二章 網路攻擊與防禦技術
2.2 惡意程式
後門程式(Backdoor):
後門程式指在設計程式時故意放入一些不該存在
的程式碼或是在機器上安裝一些不應該被執行的
軟體,以用來暗中控制系統的一個秘密管道。後
門程式不會主動散播,必須透過人為或其它惡意
程式植入目標系統。被植入後門程式除了會造成
資料外洩、資源濫用外,還可用來當作攻擊跳板
。後門程式可分為主動式與被動式兩種類型。
主動式後門程式:在被感染的主機中,開啟某個
通訊埠,讓攻擊者可透過該連接埠連入被感染的
主機,此類型的後門程式可架設防火牆阻擋。例
如企業網路的防火牆若設定只接收外部網路21、
80兩個連接埠的連線,即使被感染的主機後門程
式對外開放8080這個連接埠,其它外部主機想使
用8080這個連接埠連入被感染的主機時,也會被
防火牆擋掉。
被動式後門程式:此種類型需由被感染主機的後
門程式先連線至攻擊者指定的主機上,當攻擊者
確認由後門程式發出的連線後就可對被感染主機
進行遠端操控之目的。此類型攻擊者可以設定後
門程式連線的時間與條件,讓防火牆難以阻擋。
資料來源 http://www.icst.org.tw
國立雲林科技大學 自由軟體研發中心
24
第二章 網路攻擊與防禦技術
2.2 惡意程式
間諜程式(Spyware)
資料來源
http://news.netcraft.com/archives/2005/11/13/microsoft_updat
e_will_remove_sony_drm_rootkit.html
http://www.microsoft.com/taiwan/technet/columns/profwin/19
-Rootkits.mspx#ERB
可能是單獨一個程式或是與應用軟體捆在一起安
裝在電腦上,造成資料洩漏的威脅。此類程式若
在感染電腦之後連上網路,會將電腦上諸如使用
者名稱、密碼、IP、瀏覽過的網站與停留的時間、
下載哪些檔案、上網的總時數等蒐集下來傳到指
定的外部網路主機上。
Rootkit
藉由修改作業系統或硬體驅動程式達到非法Root
Access (Linux 系 統 ) 或 Administrator Access
(Window系統)目的,Rootkit沒有自我複製並傳播
之特性,而是攻擊者偷偷的將Rootkit程式裝進目
標主機上之系統並啟動。例如利用開啟的通訊埠、
暴力破解密碼、木馬程式將Rootkit程式挾帶進入
系統。
著名的事件為Microsoft發佈一新聞稿,聲明 Sony
DRM (其原先發展目的是為了防止音樂光碟被任
意拷貝) 為一惡意程式,駭客可利用這項技術當
作Rootkit 工具。
參考資料:
國立雲林科技大學 自由軟體研發中心
Sony DRM Rootkit的威脅與發現
Rootkit,Wikipedia
http://en.wikipedia.org/wiki/Rootkit
25
第二章 網路攻擊與防禦技術
2.2 惡意程式
如何防範惡意程式的感染?
1.
安裝適當的防毒軟體、反間諜軟體等,並保持病毒碼在最新的狀態。
隨時修補作業系統的漏洞,避免惡意程式利用作業系統的漏洞植入。
不要使用來路不明的軟體、檔案、磁片及光碟、隨身碟。
不要輕易從來路不明的網站上下載檔案或程式。
勿點擊來路不明的電子郵件,將Email 軟體的信件預覽功能關閉。
勿隨便開放分享目錄,因為許多惡意程式都會利用網路上的分享目錄(網
路芳鄰)當作感染的管道。
不要隨意瀏覽高風險的網站(如色情、賭博網站)。
不需使用網路資源時,請將網路連線關閉。
使用即時通訊軟體時,確認對方身份再開啟對方所傳送之網址與檔案。
電腦沒有在使用時,應啟動密碼保護措施。
2.
3.
4.
5.
6.
7.
8.
9.
10.
國立雲林科技大學 自由軟體研發中心
26
第二章 網路攻擊與防禦技術
2.2 惡意程式
如何知道我的電腦中執行了哪些程式?
您可以利用工作管理員檢視目前正在執行中的程式名稱,是否有您未曾安裝的軟
體或執行序,確保您的系統未遭後門程式入侵。
國立雲林科技大學 自由軟體研發中心
27
第二章 網路攻擊與防禦技術
2.2 惡意程式
可攜式電腦設備須納入病毒保護範圍
Internet
未來的資訊威脅:
• 多種類
• 多管道
駭客
防駭
病毒
病毒
寬頻
(Always on)
病毒
Bluetooth
IRDA
防毒
竊取個人密碼及資
料、破壞資訊系統
HotSync
PDA
國立雲林科技大學 自由軟體研發中心
28
第二章 網路攻擊與防禦技術
2.3 木馬程式
木馬程式(Trojan horse):
主要特性有偽裝成一般程式、具有遠端遙控目標
主機之能力、具備隱藏特性,不具備自我複製與
散播的特性。目的是用來獲取機密資料、盜用目
標主機資源、當作攻擊跳板。
本身不具備複製與散播的能力,因此攻擊者將木
馬程式放入郵件、文件檔、遊戲程式等,放到檔
案伺服器上讓其他人下載,當下載這些檔案並且
執行時,便會將木馬程式安裝至被害者的電腦裡
。被安裝木馬程式的主機會開啟某個連接埠等待
攻擊者連入。一般而言木馬程式會分為伺服端
(Server)與客戶端(Client)兩部分。
伺服端程式:藏於某些吸引人的檔案中,引誘被
害者下載並執行,當執行後即被安裝木馬程式,
被安裝木馬程式的被害者電腦會開啟一個連接埠
等待攻擊者進行連線。
客戶端程式:攻擊者利用客戶端的操縱程式對伺
服端進行任何的存取動作、更改設定等。
國立雲林科技大學 自由軟體研發中心
29
第二章 網路攻擊與防禦技術
2.3 木馬程式
如何知道誰正在與我的電腦連線中?
若 您 發 覺 有 不 正 常 的 網 路 連 線 現 象, 您 可 以 於 MS-DOS模 式 下 , 或
Command Mode下鍵入netstat -n 檢查您與遠端電腦建立的所有連線情形,
如下圖所示。
您可以看到左邊是您所使用的通訊協定,第二欄為您與遠端主機建立連
結所使用的IP位址及通訊埠,第三攔為遠端的IP位址及遠端主機所使用
的通訊埠,第四欄為目前您與遠端主機建立網路連結的狀態。
國立雲林科技大學 自由軟體研發中心
30
第二章 網路攻擊與防禦技術
2.4 分散式阻斷攻擊
分 散 式 阻 斷 服 務 攻 擊 (Distributed denial of
service):
此種攻擊是許多不同的主機一起發動,目的是使
被攻擊的主機無法正常的使用或提供服務與資源
給其系統合法用戶;分散式阻斷服務攻擊可以輕
易地在大型網路上被發動且效果驚人,採用的是
主從式(master-slave)的階層架構,需要動員多台
僵屍主機 。
左圖所示為分散式阻斷服務攻擊的流程,首先攻
擊者會先入侵大量的網路主機,在被害主機(稱為
僵屍主機)上安裝DDoS程式,再利用此程式遠端
遙控僵屍主機,告之攻擊目標和方向;分散式阻
斷服務攻擊利用單一主機就可以控制上千台僵屍
主機,包括開始時間、結束時間、攻擊的位址和
型態都可以透過網路來控制,用這樣的方式,可
以產生極大量的網路流量送往目標主機,使得目
標主機網路臃塞而無法存取或提供服務與資源;
常 見 的 分 散 式 阻 斷 服 務 攻 擊 有 Smurf attack 、
Reflector attack。
資料來源: www.cisco.com
國立雲林科技大學 自由軟體研發中心
31
第二章 網路攻擊與防禦技術
2.4 分散式阻斷攻擊
分散式阻斷服務攻擊(Cont.):
Smurf attack
攻擊者假裝成受害主機,發送偽造的ICMP echo
封包(封包上的source IP為目標主機; destination
IP為某網段的廣播位址(Broadcast address)),該網
段所有收到封包的主機,都會回ICMP replay給目
標主機,造成目標主機網路臃塞。
如 左 圖 所 示 , 假 設 攻 擊 者 想 要 利 用
140.125.30.0/24這個網段的主機產生大量的ICMP
Reply封包送往140.113.92.22這臺目標主機。
首先攻擊者送出一個ICMP echo 封包,來源IP位
址填入目標主機的IP位址140.113.92.22,目的IP
位 址 填 入 160.154.5.0/24 這 個 網 段 的 廣 播 位 址
140.125.30.255,當140.125.30.0/24網段的主機收
到該廣播封包後,便會各自送出一個ICMP Reply
封包到140.113.92.22的主機。
利用這種方式,攻擊者可以利用少量的攻擊封包
,產生出大量的封包送往到被攻擊者的網路上,
使得對方的網路擁塞或資源耗盡。
國立雲林科技大學 自由軟體研發中心
32
第二章 網路攻擊與防禦技術
2.4 分散式阻斷攻擊
分散式阻斷服務攻擊(Cont.):
Reflector attack
攻擊者大量發送偽造來源IP位址的封包到提供服
務的主機上,例如(如左圖所示),攻擊者持續不
斷 發 送 偽 造 來 源 IP 位 址 的 封 包 到 許 多 個 DNS
(domain name service)主機,偽造的封包來源IP位
址為受害者的 IP位址,當各個DNS伺服器收到
DNS request封包時,便會回傳DNS response封包
給受害者。此攻擊方式是利用DNS協定的特性來
達成,因為DNS request封包size比DNS response
封 包 size 小 上 許 多 , 因 此 攻 擊 者 大 量 發 送 DNS
request封包時並不會佔用太多的網路頻寬,藉此
躲過偵測系統的監測並達到攻擊的目的。
國立雲林科技大學 自由軟體研發中心
33
第二章 網路攻擊與防禦技術
2.5 垃圾郵件
垃圾郵件(Spam):
垃圾郵件就是那些你不需要且不想看的電子郵件
,卻因為被人知道你的電子郵件位址,而被有心
人士寄到你的電子信箱。
垃圾郵件通常是有心人士利用電子郵件特性,一
次將垃圾郵件發給很多人,此類郵件通常是商業
廣告、產品介紹、成人廣告等。
垃圾郵件帶來的災害包括了Mail Server負載加重
、網路頻寬壅塞、郵件儲存空間爆滿,耗費收件
人的精神及時間,病毒帶來的資安風險,詐騙郵
件減低對電子商務的信心(金融方面的詐騙比例
最高),Anti-Spam的工作帶來額外的費用支出等
。
常用來收集電子郵件位址的手法有字典型攻擊,
字典型攻擊收集常見的英文姓名,然後亂數挑選
加 以 組 合 成 電 子 郵 件 位 址 , 例 如 :
[email protected] , [email protected]
等。
根據Radicati group預估調查(Feb.,2006),到2008
年全球垃圾信將超過整體Email流量的70%,且亞
洲的垃圾郵件數量將持續上揚,如左圖所示,
1/3非英文的垃圾郵件為中文。
垃圾郵件分佈圖
國立雲林科技大學 自由軟體研發中心
34
第二章 網路攻擊與防禦技術
2.5 垃圾郵件
Ref. http://spamassassin.apache.org/index.html
垃圾郵件(Cont.):
為了過濾垃圾信件,大部分的Mail Server
都有配置反垃圾郵件系統(Anti-Spam),如
mpasp、SpamAssassin 之類的反垃圾郵件
系統。
SpamAssassin (SA) 是利用程式語言 Perl 來
進行文字分析達到過濾垃圾郵件。判斷方
式是藉由評分方式 - 若這封郵件符合某
種特徵,則加以評分,若總得分高於某項
標準,則判定為垃圾郵件。重要的是,這
是一套自由軟體!
除了Mail Server使用反垃圾郵件系統過濾
垃圾郵件,收信人也可採取下述動作來避
免自已或他人收到垃圾信的侵擾,例如:
國立雲林科技大學 自由軟體研發中心
不要在公開區域公佈電子信箱地址
不要回應垃圾郵件
寄信時請隱藏朋友電子信箱位址 (善用副本
郵件)
使用帶有郵件過濾功能的電子郵件軟體(例
如Thunderbird)
相信你的直覺,看起來像是垃圾信的郵件
就刪了吧
35
第二章 網路攻擊與防禦技術
2.5 垃圾郵件
其它常見的電子郵件危脅
偽裝郵件:使用假的郵件標題或是寄件人名稱,
讓人誤以為非垃圾郵件。
社交工程:利用社交工程的概念,將病毒、蠕蟲
與惡意程式等隱藏在電子郵件中,假冒成像是朋
友寄來的郵件,例如I LOVE YOU蠕蟲,就是一
種利用社交工程散播的電腦病毒。
連鎖信:通常信件內容都告知要將收到的訊息繼
續轉寄給其他人。例如每發一次信就可以有多少
錢的收入或者告訴你,若沒有轉寄超過5個人你
的厄運即將來到,這些都是連鎖信的技倆,絕對
不要相信你轉寄信件後會收到金錢,天下沒有白
吃的午餐。
網路釣魚攻擊:網路釣魚是一種偷取您身分的欺
騙方式。詐騙人士利用電子郵件讓您提供他們所
需的個人資料;例如信用卡號碼、密碼、帳號或
其他資料。左圖所示為一利用電子郵件進行網路
釣魚之範例,在信件內容會複製官方網頁的圖像
與其他重要特徵,騙取您的信任後,要求您按下
超連結,但是超連結所導向的IP位址為詐騙人士
的主機位址。
利用電子郵件進行網路釣魚
國立雲林科技大學 自由軟體研發中心
36
第二章 網路攻擊與防禦技術
2.5 垃圾郵件
對於可疑信件的應變方式
檢舉可疑信件。
點選電子郵件中的超連結時請小心。
使用您個人書籤或直接在網址列上輸入網址。
當您在網站輸入個人或金融資料前確認啟動相
關的安全通訊協定,如SSL安全通訊協定。
不要在跳出視窗中輸入個人或金融資料。
經常檢查您的信用卡與銀行明細。
國立雲林科技大學 自由軟體研發中心
37
第二章 網路攻擊與防禦技術
參考資料
「各式掃描工具探討.pdf」
「DDoS攻擊分析」,曾龍
「電腦病毒認識與防治」,吳韶卿
「垃圾郵件技術攻防戰」,劉孟達
「網路安全與管理」,作者:伍麗樵,陳世仁
「如何防止收到垃圾信件及反垃圾郵件.doc」
「網路攻擊模式分析(I),網路攻擊模式分析(II)」陳培德
「檔案型、開機型、混合型電腦病毒原理概論」,呂偉成
「Detection of Promiscuous Nodes Using ARP Packets」,Daiji Sanai
「利用 NetFlow 建置 Code Red Worm 偵測系統 」,黃文穗、林守仁
「主動防禦:網路安全完全指南 」,作者:Brenton, Chrise/Hunt, Cameron
「http://www.itis.tw/」資安之眼
「http://forum.icst.org.tw/」資安論壇
「http://www.hacker.org.tw/mirrorz/Hackland/9.htm」
「http://www.savetime.com.tw/new_virus/virus_02.asp」
「http://www.y2000.com.tw/hot/no1tm.htm」視窗文件巨集病毒
「http://www.nicst.nat.gov.tw/index.php」行政院國家資通安全會報
「http://www.ied.edu.hk/has/comp/compviru/class.htm」電腦病毒的類別
「http://www.ascc.sinica.edu.tw/nl/90/1718/03.txt」Code Red紅色警戒病毒分析
「http://www.ascc.sinica.edu.tw/nl/86/1316/05.txt」電腦病毒與防治專題,張晉榮
「http://210.60.224.16/blog/more.asp?name=he00483183&id=27905」電腦病毒的類型
「http://www.icsc.ncku.edu.tw/~commedu/tool.htm」將不同型態攻擊方式的工具進行分類介紹
「http://forum.icst.org.tw/phpBB2/viewtopic.php?t=8656&highlight=%AFf%ACr+%A9w%B8q」網路威脅簡介
「http://www.microsoft.com/taiwan/technet/columns/profwin/19-Rootkits.mspx」Sony DRM Rootkit的威脅與發現
「http://news.netcraft.com/archives/2005/11/13/microsoft_update_will_remove_sony_drm_rootkit.html」Microsoft Update Will
Remove Sony DRM Rootkit
以逢甲大學為基礎之網路流量統計暨異常行為偵測
國立雲林科技大學 自由軟體研發中心
38