修平科技大學 -...

50
修平科技大學 資訊網路技術系 應用入侵偵測 軟體之實務運用 指導老師:高國峯 組長:BN99509 蔡汯錡 組員:BN99503 吳俊澤 BN99036 游本福 103 6 1

Transcript of 修平科技大學 -...

Page 1: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

修平科技大學 資訊網路技術系

應用入侵偵測

軟體之實務運用

指導老師:高國峯

組長:BN99509蔡汯錡

組員:BN99503吳俊澤

BN99036游本福

中 華 民 國 103 年 6 月

1

Page 2: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

應用入侵偵測

軟體之實務運用

指導老師:高國峯

組員分工項目:

蔡汯錡(實測部分、編輯文本)

吳俊澤(實測部分、整合資料、最後總編輯)

游本福(實測部分、整合資料、最後總編輯)

2

Page 3: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

目錄

第一章 緒論

1-1 研究動機與目----------------------------6

1-2 專題成果--------------------------------7

1-3 未來改善方向----------------------------7

第二章 應用軟體介紹

2-1 軟體介紹

2-1-1 Microsoft SQL Server2008 的介紹------10

2-1-2 Wireshark 的介紹--------------------10

2-1-3 NMAP 的介紹-------------------------11

2-2 名詞解釋

2-2-1 三向交握---------------------------12

2-2-2 三向交握實例-----------------------14

第三章 系統安裝建置

3-1 NMAP 安裝步驟---------------------------18

3-2 Wireshark 安裝步驟-----------------------20

第四章 實驗環境與測試結果

4-1 測試環境--------------------------------25

3

Page 4: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-2 實驗說明及操作方法

4-2-1系統架構圖--------------------------26

4-2-2 使用 wireshark 探測封包-------------27

4-3 使用 SQL Server 分析 Wireshark 紀錄的封包資訊

4-3-1 測試 1------------------------------30

4-3-2 測試 2------------------------------33

4-4 NMAP

4-4-1 測試 1----------------------------37

4-4-2 測試 2----------------------------40

第五章 結論---------------------------------43

參考文獻------------------------------------45

附錄(一)---- -------------------------------45

附錄(二)- ----------------------------------46

附錄(三) -----------------------------------48

4

Page 5: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

第一章 緒論

5

Page 6: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

1-1 研究動機與目的

何謂入侵?入侵指的就是試圖破解資訊資源的可用性、保密性和

完整性的行動。一般來說,入侵偵測指的就是用以偵測入侵行動的方

法。這包括偵測擅自闖入系統的入侵者或誤用系統資源的用戶。入侵

偵測是在一個電腦台系統或者網路中監控入侵的發生,其定義為試圖

損害祕密性,完整性,有效性的入侵特徵,並分析他們的入侵事件的

過程,或者繞過網路的安全機制的行為。

近年來網際網路蓬勃發展,成長速度飛快,所以讓訊息可以快速

傳遞,資訊能迅速流通,也帶來了全球化網路和電子商務的發展熱

潮。和大多數人的方便,同時也不能忽視網路安全,不然將招致駭客

利用惡意程式進而入侵、破壞、竊取你的電腦和資料。導致最後隱私

被侵犯或損失財物等問題發生。

所以我們這組要研究的就是怎麼做才能預防被入侵,並把傷害降

到最低,雖然現今網路一天比一天進步,也越來越方便,不過也代表

著,我們要更重視自己的權益。然而傳統的網路安全技術,已經無法

抵擋日趨成熟與多樣化的網路攻擊手法。其中入侵偵測系統可全程監

控網路安全狀況,於網路發危險狀況時,採取警告通知,管理人員可

即時採取阻止等防護動作,降低駭客連續攻擊的效果。 如何需求統

計?提供解決方案,在不同的硬體與環境,更需要一致的解決方案。

6

Page 7: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

如何提升網路安全,減少不必要的網路訊息,停止不必要的網路服

務,降低網路系統的被入侵點,異常流量分析,病毒與異常流量(ICMP,

Broadcast Storm)分析,立即得知來源主機,這些方便網路資訊的管

理,清楚的流量使用情形分析都是我們所要探討的。

1-2 專題成果

網路上的不安全使用方式有很多,例如:下載非法軟體、遊覽不

安全網頁又或者是遭到有心人士的盜用等等……。在這個專題研究中

我們利用 Wireshark軟體,測試網路問題、檢查網路安全的問題,以

此來評估網路安全問題。利用 SQL Server 整理出 Wireshark的封包

資訊以便觀察與分析。

1-3 未來改善方向

高速網路的普及造成日常網路流量的增加,再加上攻擊手法的不

斷的翻新,隱匿性攻擊將可潛伏一段時間而不被發現,因此封包數量

如果很多的同時也意味著較長的分析時間,無法有效率的檢視出攻擊

來源,資料越複雜代表著干擾越多,所以要找出問題來源所在就更加

麻煩。

入侵偵測系統雖然成本較低可以偵測到主機型式入侵偵測系統所

偵測不到的還可以偵測到未成功或惡意的入侵攻擊,但網路上的型態

如果過大時往往會 LOST掉許多封包,無法完全監控網路上所有流通

7

Page 8: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

的封包數這樣就代表其它被 LOST的封包潛在的危險就大大增加,若

要擷取大型網路上的流量並分析,往往需要更有效率的 CPU處理速

度,以及更大的記憶體空間。使用 Wireshark學習的網路問題,可以

知道問題的癥結點並加以改進。

所以我們希望未來可以研究出當如果網路型態過大時 LOST掉的

封包可以減少,並試著監控網路上所有流通的封包數同時將需要的記

憶體空間減少,以達到簡單操作,然後能夠有效的對網路封包進行初

步篩檢,僅保留與攻擊相關的資料,減少儲存空間的需求以及降低分

析上不必要的干擾作為目標。

8

Page 9: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

第二章 應用軟體介紹

9

Page 10: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

2-1 網路技術軟體介紹

2-1-1 Microsoft SQL Server2008 的介紹

Microsoft SQL Server 是由美國微軟公司所推出的關聯式資料

庫解決方案,SQL Server 2008 在 2008 年 8 月 6 日正式發表,並且

同時發布 SQL Server 2008 Express 版本,研發代號為「Katmai」,

作為 SQL Server 2005的功能強化版本

Microsoft SQL Server的使用目的

利用 Server資料庫系統的功能來整理出 Wireshark的封包資訊

2-1-2 Wireshark 的介紹

Wireshark是一個網路封包分析軟體。網路封包分析軟體的功能

是截取網路封包,並盡可能顯示出最為詳細的網路封包資料。

在過去,網路封包分析軟體是非常昂貴,或是專門屬於營利用的軟

體,Wireshark的出現改變了這一切。在 GNU GPL通用許可證的保障

範圍底下,使用者可以以免費的代價取得軟體與其程式碼,並擁有針

對其原始碼修改及客製化的權利。Wireshark是目前全世界最廣泛的

網路封包分析軟體之一。

10

Page 11: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

Wireshark使用目的

1. 檢測網路問題

2. 檢查資訊安全相關問題

3. 使用 Wireshark來為新的通訊協定除錯

4. 使用 Wireshark來學習網路協定的相關知識

2-1-3 NMAP 的介紹

Nmap可以檢測標的機是否線上、埠開放情況、偵測執行的服務型

別及版本訊息、偵測作業系統與裝置型別等訊息。 它是網路管理員

必用的軟體之一,用以評估網路系統安全。

Nmap 提供簡單易用的視窗操作介面與指令執行模式,可幫我們掃描

網路上的電腦與主機、支援多個網段或大型網路的快速掃描,並執

行資訊彙整、安全監控、服務運作狀態與漏洞偵測等任務。

NMAP(Network Mapper) 使用目的

1. 列舉網路主機清單

2. 管理服務升級排程

3. 監控主機

4. 服務執行狀況

11

Page 12: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

2-2 網路封包技術

2-2-1 三向交握

三向交握是 TCP重要的協定,網路上有許多文章,本章節是參考

「維基知識」做修改。TCP 被稱為可靠的連線封包,主要是透過許多

機制來達成的,其中最重要的就是三向交握的功能。TCP傳送資料的

機制非常複雜,TCP的表頭來確認這個封包有實際被對方接收,並進

一步與對方主機達成連線? 以下圖示來作為說明。

圖 2-1 三向交握之封包連接模式

在上面的封包連接模式當中,在建立連線之前都必須要通過三個

確認的動作, 所以這種連線方式也就被稱為三向交握(Three-way

handshake)。 那麼我們將整個流程依據上面的 A, B, C, D 四個階

段來說明一下:

12

Page 13: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

A:封包發起

當用戶端想要對伺服器端連線時,就必須要送出一個要求連線的

封包,此時用戶端必須隨機取用一個大於 1024 以上的埠口來做

為程式溝通的介面。然後在 TCP 的表頭當中,必須要帶有 SYN 的

主動連線(SYN=1),並且記下發送出連線封包給伺服器端的序號

(Sequence number = 10001) 。

B:封包接收與確認封包傳送

當伺服器接到這個封包,並且確定要接收這個封包後,就會開始

製作一個同時帶有 SYN=1, ACK=1 的封包, 其中那個

acknowledge 的號碼是要給 client 端確認用的,所以該數字會

比(A 步驟)裡面的 Sequence 號碼多一號 (ack = 10001+1 =

10002), 那我們伺服器也必須要確認用戶端確實可以接收我們的

封包才行,所以也會發送出一個 Sequence (seq=20001) 給用戶

端,並且開始等待用戶端給我們伺服器端的回應喔!

C:回送確認封包

當用戶端收到來自伺服器端的 ACK 數字後 (10002) 就能夠確認

之前那個要求封包被正確的收受了, 接下來如果用戶端也同意與

13

Page 14: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

伺服器端建立連線時,就會再次的發送一個確認封包 (ACK=1) 給

伺服器,亦即是 acknowledge = 20001+1 = 20002 囉。

D:取得最後確認

若一切都順利,在伺服器端收到帶有 ACK=1 且 ack=20002 序號

的封包後,就能夠建立起這次的連線了。

2-2-2 三向交握實例

此由序號 6791將封包送出到序號 6794接收封包

步驟一:建立連線

圖 2-2 由 A送出同步封包(SYN1)

14

Page 15: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

步驟二:資料連線

此由序號 6855發送出封包,利用序號 6846的 ACL1來回應

圖 2-3 由 B送出同步封包(SYN2),並利用 ACK1回應步驟一的同步

封包(SYN1)

步驟三:關閉連線

此利用序號 6858的 ACK2 回應步驟二的同步封包

圖 2-4 A利用 ACK2回應步驟 2的同步封包(SYN2)

15

Page 16: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

1. 連接埠(Port):包括來源主機與目的主機的『連接埠號』(port

number) 。

2. 序號(Sequence Number):此處的序號是圖 2-2的 A隨機所選擇的

一個初始序號 SEQ1,目的是要和圖 2-2 的 B 達到同步作用。在實作

上,有些作業系統對此序號的初始值,也會選擇由 0開始。

3. 確認號碼(Acknowledge Number):因為此 TCP封包是第一個發送,

所以沒有確認號碼,因此會暫時填入 0來表示。

4. 同步訊息(Synchronize)的旗標位元:在 TCP 封包中的 flags( 6

bits),會有一個 Synchronize 的同步位元,將會被設定成為 1,用

以代表此 TCP封包是送出 SYN的資訊。

5. 可接受的視窗大小(Window Size):可接受的視窗是設定 A自己的

『接收視窗』大小,也就是告訴對方 B,主機 A同時能接受封包的多

寡,藉由此『接收視窗』大小來控制流量。

16

Page 17: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

第三章 系統安裝建置

17

Page 18: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

3-1 NMAP 安裝程序

Nmap 支援多種進階網路掃描與偵測技術,可在各種防火牆、路

由器等網路環境中運作,協助我們找出可能的網路安全漏洞並提供主

機或伺服器的系統版本、應用程式名稱版本與所使用的服務與連接

埠…等等各種資訊。我們到 NMAP官方下載並安裝 Nmap V6.46網路掃

描探測工具,以下是安裝過程與步驟。

步驟 1 .先開啟 NMAP安裝檔,再按下我同意

圖 3-1 : 閱讀相關條例,並圈選同意

步驟 2. 選擇要安裝的物件,然後按下一步

圖 3-2 : 勾選 NMAP內相關程式

18

Page 19: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

步驟 3.開始安裝。

圖 3-3 : 等待安裝 NMAP

步驟 4 .NMAP安裝完成

圖 3-4 : 安裝完成

19

Page 20: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

3-2 Wireshark 安裝步驟

Wireshark是一個網路封包分析軟體。網路封包分析軟體的功能是截

取網路封包,並盡可能顯示出最為詳細的網路封包資料。我們到官

方下載 Wireshark1.10.6(64-bit)版本,以下是安裝過程與步

驟。

步驟 1. 開啟安裝檔後按下一步

圖 3-5 : 安裝 Wireshark(64-bit)

20

Page 21: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

步驟 2. 閱讀相關條例,選擇我同意

圖 3-6 : 閱讀相關條例,並圈選同意

步驟 3.選擇要安裝的物件,選好後按下一步

圖 3-7:選擇 Wireshark內相關程式

21

Page 22: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

步驟 4.可選擇是否要建立捷徑,選好再按下一步

圖 3-8 : 勾選 Wireshark新增的捷徑

步驟 5.安裝中

圖 3-9 : 等待安裝 Wireshark

22

Page 23: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

步驟 6.Wireshark安裝完成

圖 3-10 : 安裝完成

23

Page 24: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

第四章 實驗環境與測試結果

24

Page 25: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-1 測試環境

這次實驗中我們使用了以下圖表 1 的硬體設備構成整體測試環

境。所使用的軟體為 SQL Server、Wireshark、NMAP來做為應用的測

試,這些主要是針對資料分析、擷取封包以及掃描資料的來源。

在資料分析,我們使用 Wireshark來記錄封包,將這些封包轉換

成 EXCEL 資料,再由這些資料匯入到 SQL Server 裡,最後再查看這

些資料是否有偵測到可疑的封包資料。

中央處理器 Inte(R) Core(TM)2 Quad CPU Q9400 @ 2.66Hz 2.67GHz

記 憶 體 8G

顯 示 卡 NVIDIA GeForce 8400 GS

作 業 系 統 Windows 7 旗艦版

圖表 1 電腦規格

25

Page 26: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-2 實驗說明及操作方法

4-2-1 系統架構圖

以下圖表 2是說明使用 wireshark探測上網的封包,紀錄修平 SIS

登入首頁、yahoo登入首頁,網站登錄的封包,在匯出轉成 CSV檔,

再匯入 SQL資料庫,查看封包是否加密。

圖表 2 探測封包流程圖

26

Page 27: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-2-2 使用 wireshark 探測封包

1. 搜尋封包是用搜尋 login的封包

圖 4-1 利用收尋功能來找封包

2. 使用 Wireshark了解網路傳輸過程,並學著看封包

圖 4-2 以搜尋的方式找到的封包

27

Page 28: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

3. 利用 wireshark 來查詢學校的 SIS 系統有無加密動作,我們的方

法是過濾封包那裡是用 HTTP 然後搜尋封包是用搜尋 login 的封包

Login封包都是由使用者端這裡送給遠端所以在檢查遠端傳回使用者

端封包這樣就能清楚了解使用者端傳出有無加密 也能知道遠端傳回

有無加密最後測出學校的 SIS系統有加密的動作

圖 4-3 上圖是學校的 SIS系統有加密

圖 4-4 上圖是 YAHOO 也有加密 28

Page 29: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4. 之後我們從 Wireshark上抓到的網路封包轉成資料,然後匯出成

CSV檔後再匯入到 SQL-SERVER內中顯示

圖 4-5 上圖是將封包匯出並轉成 CSV檔

圖 4-6 上圖是將 CSV檔匯入到 SQL內的結果

29

Page 30: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-3 使用 SQL Server 分析 Wireshark 紀錄的封包資訊

4-3-1 測試 1

針對 Yahoo首頁網站,使用 Wireshark 記錄使用者所有

瀏覽的網站封包,在記錄的封包資訊裡我們並沒有在 Yahoo

網站裡找到可疑的封包。

1. 紀錄包含各種測試封包的 pcap檔並,轉出 csv檔

圖 4-7 含 ack等欄位的 wireshark畫面

30

Page 31: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

2. 匯入 EXCEL,使用 EXCEL的置換字串功能整理一下資料

圖 4-8 EXCEL 資料整理好的畫面

3. 匯入到 SQL

圖 4-9 利用 EXCEL整理的資料轉為 CSV檔 將檔案匯入

31

Page 32: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4. 整理過的資料,匯入 SQL Server,並設好主鍵及資料型態

圖 4-10 SQL 開啟資料表畫面

5. 開始分析資料庫,先執行附錄(一)做簡單對應的 address port把

每個 session資料列出來

圖 4-11 執行成功畫面

32

Page 33: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-3-2 測試 2

針對學校 SIS、Yahoo以及 Google搜尋網站,我們使用 Wireshark

記錄使用者所瀏覽的網站封包,有發現 SIS以及 Yahoo所需要登入帳

密,在記錄的封包資訊裡,並找不到相關的帳密資訊,表示這些的資

訊都有做好防盜的措施,在 GOOGLE搜尋這裡,並沒有發現到有可疑

封包資訊。

1. 紀錄包含各種測試封包的 pcap檔並,轉出 csv檔

圖 4-12 含 ack等欄位的 wireshark畫面

33

Page 34: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

圖 4-13 增加欄位

2. 在 Wireshark上所抓到的封包匯入 EXCEL,使用 EXCEL的置換字

串功能整理一下資料

圖 4-14 EXCEL 資料整理好的畫面

34

Page 35: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

3. 在 SQL Server上檢視資料類型

圖 4-15 將 CSV檔匯入到 SQL Server (資料類型)

4. 整理過的資料,匯入 SQL Server,並設好主鍵及資料型態,先執

行附錄(二) 的 Cursor 程式,是依照 address,port 的對應,把每個

session列出來,假設 session間不會交錯,每一個 session開始時,

印出其開始的訊息。若其封包順序有依照設定在 patternlst 的順

序,則印出其封包內容 。

35

Page 36: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

圖 4-16 執行成功畫面

此畫面是利用 Wireshark 所記錄的封包,將資料整理好再將

他們匯入到 SQL Server裡,皆由 Cursor來做半開式掃描處理整

個資料的分析,將這些分析出來的資料一一列出來,然而分析出

來的資料,並沒有找到可疑的封包混進來攻擊使用者。

36

Page 37: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-4 NMAP

4-4-1 測試 1

針對學校首頁和 Yahoo去做掃描,在掃描方面我們下了簡單的偵

測遠端主機、掃描一組 IP範圍以及快速掃描 Port,看看該掃描網段

的主機是否有開機、打開了哪些 Port。

1. 使用 NMAP成功掃描本校首頁後的畫面

www.hust.edu.tw

圖 4-17 成功掃描

37

Page 38: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

2. 使用 NMAP來掃描 學校首頁、Yahoo首頁

圖 4-18 NMAP掃描學校首頁

圖 4-19 NMAP掃描 Yahoo首頁所經過路逕

38

Page 39: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

圖 4-20 Wireshark紀錄封包時,同時利用 NMAP來做封包的掃描

3. 資料匯出為文字檔,並匯入到資料庫

圖 4-21 在 NMAP上所監控的資料

39

Page 40: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

4-4-2 測試 2

使用 NMAP針對 YAHOO封包的掃瞄,指令做了檢查 UDP Port(SIP)

是否開啟,使用 TCP SYN掃描,來做半開式的掃描,可以列出有回應

的遠端主機已開啟的網路服務埠。

1. 先開啟 wireshark

圖 4-22 利用 Wireshark紀錄封包

2. 同時將 NMAP 啟動

圖 4-23 針對 Yahoo來進行掃描40

Page 41: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

3. 在 wireshark上所抓到的資料匯入到 SQL server,執行附錄(三)

的 Cursor程式,是依照 address port的對應,把每個 session列出

來,假設 session間不會交錯,每一個 session開始時,印出其開始

的訊息。若其封包順序有依照設定在 patternlst的順序,則印出其

封包內容 ,並且將資料做分析,記錄到我們連接到 Yahoo網頁時,

對於 Http與 Https的連接埠顯示為 OPEN的狀態,由我們電腦連接出

去所經過五個路由才到達 Yahoo的首頁,也只需要花一點時間而已。

圖 4-24 由 SQL Server分析的 session來做比對

4. 這是在 NMAP上所掃描的資訊

41

Page 42: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

圖 4-25 NMAP上分析使用者所瀏覽的資訊

42

Page 43: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

第五章 結論

43

Page 44: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

我們利用 Wireshark 跟 NMAP 捕捉 Yahoo 奇摩跟學校 SIS 的登入

的封包資料來分析。Wireshark是一個網路封包分析軟體。網路封包

分析軟體的功能是截取網路封包,並盡可能顯示出最為詳細的網路封

包資料。NMAP 可以掃描指定的 IP Address 或某個 IP 網段,看看

該掃描網段的主機是否有開機、打開哪些 Port、開啟的服務、OS 版

本及類型,因此我們利用此套件來對內部網路進行掃描來查看內網主

機是否有開啟不正常的 Port 及相關問題,最後測出學校 SIS 有加

密,Yahoo也有加密。

隨著網路的發達,IDS系統對網路環境也越顯得重要。入侵偵測

與預防系統,需要經常關心及調校,遇到新的攻擊手法,必須進行完

整的更新。安全是持續進行的行為,例如:像防毒軟體的要定期的掃

描、更新,我們要不斷地進行內部教育訓練,防護人員的充實新知、

密碼須經常更換,使用外來的檔案,應先掃毒…等。網路安全不是只

有靠防毒軟體來於防資料外洩,使用者也必須自己去做好預防的動

作,才能有效降低被入侵的風險。

44

Page 45: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

參考文獻

參考 SQL Server 2008資料庫設計與應用:

作者:陳祥輝

出版社:博碩

應用入侵偵測軟體 Snort之案例分析/江立凱著;李政勳著

資料庫效能測量與調校/林郡洋作;陳献軍,陳願至,黃大華,謝宗穎

Wireshark網路協定分析與管理

作者:九米原榮、上田浩

出版社:博碩

附錄(一)

--select * from hustscantest

declare c1 cursor

for select Source,SourcePort, Destination, DestPort from hustscantest

open c1

declare @sadd char(100), @sport int, @dadd char(100), @dport int

fetch next from c1 into @sadd, @sport, @dadd, @dport

while(@@FETCH_STATUS=0)

begin

print @sadd

print @sport

print @dadd

print @dport

45

Page 46: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

print '=========='

fetch next from c1 into @sadd, @sport, @dadd, @dport

end

close c1

deallocate c1

附錄(二)

--select * from hustscantest

---- 依照 address,port的對應,把每個 session列出來 version1: 假設 session 間不會交錯

----

---- 每一個 session開始時,印出其開始的訊息。若其封包順序有依照設定在 patternlst 的順

序,則印出其封包內容 ----

-- 尚待解決問題: 只有前面一樣也會印出

declare @patternlst Table(pid int primary key, syn int, ack int, fin int, rst int)

-- half-open pattern

insert @patternlst values(1,1,0,0,0)

insert @patternlst values(2,1,1,0,0)

insert @patternlst values(3,0,0,0,1)

--- fin,ack then reset ---

/*

insert @patternlst values(1,0,1,1,0)

insert @patternlst values(2,0,0,0,1)

*/

declare @ptnseq int

set @ptnseq=-1

declare @psyn int, @pack int, @pfin int, @prst int

declare c1 cursor

for select Time, Source,SrcPort, Destination, DestPort, syn, ack, fin, rst from

hustscantest where Protocol='TCP'

open c1

declare @ptime float, @sadd char(20), @sport int, @dadd char(20), @dport int , @syn int,

@ack int, @fin int, @rst int

-- @pstatus: S for second , N for None

declare @pstatus char(1)

set @pstatus='N'

46

Page 47: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

-- @snum for count session number

declare @snum int

set @snum=0

declare @add1 char(16), @port1 int, @add2 char(16), @port2 int

fetch next from c1 into @ptime, @sadd, @sport, @dadd, @dport, @syn, @ack, @fin, @rst

while(@@FETCH_STATUS=0)

begin

if @pstatus='N' or not((@add1=@sadd and @port1=@sport and @add2=@dadd and

@port2=@dport) or (@add2=@sadd and @port2=@sport and @add1=@dadd and @port1=@dport))

begin

set @snum=@snum+1

set @pstatus='S'

set @add1=@sadd

set @port1=@sport

set @add2=@dadd

set @port2=@dport

print '==== session ' + convert(char(6),@snum) + 'begin: ' + @add1 + ':'+

convert(char(6),@port1) + ' <==> '+ @add2 + ':'+ convert(char(6),@port2) +' ===='

select @psyn= syn, @pack=ack, @pfin=fin, @prst=rst from @patternlst where pid=1

set @ptnseq=-1

if (@psyn=@syn and @pack=@ack and @pfin=@fin and @prst=@rst)

begin

set @ptnseq=1

print 'Time:' + convert(char(10),@ptime)+ 'Source: ' + @sadd +

convert(char(6),@sport)+ ' ,Destination: '+ @dadd + convert(char(6),@dport)

end

end

else if (@ptnseq>0)

begin

select @psyn= syn, @pack=ack, @pfin=fin, @prst=rst from @patternlst

where pid=@ptnseq+1

if (@psyn=@syn and @pack=@ack and @pfin=@fin and @prst=@rst)

begin

set @ptnseq=@ptnseq+1

print 'Time:' + convert(char(10),@ptime)+ 'Source: ' + @sadd +

47

Page 48: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

convert(char(6),@sport)+ ' ,Destination: '+ @dadd + convert(char(6),@dport)

end

else set @ptnseq=-1

end

--print 'Source: ' + @sadd + convert(char(6),@sport)+ ' ,Destination: '+ @dadd +

convert(char(6),@dport)

fetch next from c1 into @ptime, @sadd, @sport, @dadd, @dport, @syn, @ack, @fin, @rst

end

close c1

deallocate c1

附錄(三)

--select * from hustscantest

SET NOCOUNT ON

---- 依照 address,port的對應,把每個 session列出來 version1: 假設 session 間不會交錯

----

---- 每一個 session開始時,印出其開始的訊息。若其封包順序有依照設定在 patternlst 的順

序,則印出其封包內容 ----

-- 尚待解決問題:

declare @patternlst Table(pid int primary key, syn int, ack int, fin int, rst int)

-- half-open pattern

insert @patternlst values(1,1,0,0,0)

insert @patternlst values(2,1,1,0,0)

insert @patternlst values(3,0,0,0,1)

--- fin,ack then reset ---

/*

insert @patternlst values(1,0,1,1,0)

insert @patternlst values(2,0,0,0,1)

*/

-- 比對符合的封包暫時存放的地方

declare @possiblepkt Table( ptime float, sadd char(20), sport int, dadd char(20), dport

int , syn int, ack int, fin int, rst int)

declare @ptnseq int

48

Page 49: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

set @ptnseq=-1

declare @psyn int, @pack int, @pfin int, @prst int

declare c1 cursor

for select Time, Source,SrcPort, Destination, DestPort, syn, ack, fin, rst from

hustscantest where Protocol='TCP'

open c1

declare @ptime float, @sadd char(20), @sport int, @dadd char(20), @dport int , @syn int,

@ack int, @fin int, @rst int

-- @pstatus: S for second , N for None

declare @pstatus char(1)

set @pstatus='N'

-- @snum for count session number

declare @snum int

set @snum=0

declare @add1 char(16), @port1 int, @add2 char(16), @port2 int

fetch next from c1 into @ptime, @sadd, @sport, @dadd, @dport, @syn, @ack, @fin, @rst

while(@@FETCH_STATUS=0)

begin

if @pstatus='N' or not((@add1=@sadd and @port1=@sport and @add2=@dadd and

@port2=@dport) or (@add2=@sadd and @port2=@sport and @add1=@dadd and @port1=@dport))

begin

set @snum=@snum+1

set @pstatus='S'

set @add1=@sadd

set @port1=@sport

set @add2=@dadd

set @port2=@dport

print '==== session ' + convert(char(6),@snum) + 'begin: ' + @add1 + ':'+

convert(char(6),@port1) + ' <==> '+ @add2 + ':'+ convert(char(6),@port2) +' ===='

if (select COUNT(*) from @patternlst)=(select COUNT(*) from @possiblepkt)

begin

select * from @possiblepkt

delete @possiblepkt

49

Page 50: 修平科技大學 - ir.hust.edu.twir.hust.edu.tw/bitstream/310993100/4335/1/應用入侵偵測軟體之實務運用.pdf · 我們利用Wireshark軟體,測試網路問題、檢查網路安全的問題,以

end

select @psyn= syn, @pack=ack, @pfin=fin, @prst=rst from @patternlst where pid=1

set @ptnseq=-1

if (@psyn=@syn and @pack=@ack and @pfin=@fin and @prst=@rst)

begin

delete @possiblepkt

set @ptnseq=1

print 'Time:' + convert(char(10),@ptime)+ 'Source: ' + @sadd +

convert(char(6),@sport)+ ' ,Destination: '+ @dadd + convert(char(6),@dport)

insert @possiblepkt values( @ptime, @sadd, @sport, @dadd, @dport, @syn, @ack, @fin,

@rst)

end

end

else if (@ptnseq>0)

begin

select @psyn= syn, @pack=ack, @pfin=fin, @prst=rst from @patternlst

where pid=@ptnseq+1

if (@psyn=@syn and @pack=@ack and @pfin=@fin and @prst=@rst)

begin

set @ptnseq=@ptnseq+1

print 'Time:' + convert(char(10),@ptime)+ 'Source: ' + @sadd +

convert(char(6),@sport)+ ' ,Destination: '+ @dadd + convert(char(6),@dport)

insert @possiblepkt values( @ptime, @sadd, @sport, @dadd, @dport, @syn, @ack, @fin,

@rst)

end

else set @ptnseq=-1

end

--print 'Source: ' + @sadd + convert(char(6),@sport)+ ' ,Destination: '+ @dadd +

convert(char(6),@dport)

fetch next from c1 into @ptime, @sadd, @sport, @dadd, @dport, @syn, @ack, @fin, @rst

end

close c1

deallocate c1

50