用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 -...

22
用用用用用用用用 ( 用用用 ) 用用用用用用用用用用用用用用用用用 - 用用用 用用用用2012.01.02 用用用 用用用

Upload: ulla-mckay

Post on 03-Jan-2016

58 views

Category:

Documents


0 download

DESCRIPTION

用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三. 報告日期: 2012.01. 02 報告者 :莊承恩. Agenda. 計畫目的、成果應用性、技術優越性 文件撰寫目前進度 需求規格 功能性需求執行目前進度 非功能性需求 需求測試方案 案例列表 近期 狀況 案例儲存分享 系統介面 本月 案例 Scanning ( Traceroute , Nmap , Nessus ). 計畫目的、成果應用性、技術優越性. 與上次相同. 計畫目的 與子計畫二合作,打造 資訊安全專屬雲端實驗平台 - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

報告日期: 2012.01.02 報告者:莊承恩

Page 2: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

2

Agenda計畫目的、成果應用性、技術優越性文件撰寫目前進度需求規格

功能性需求執行目前進度 非功能性需求

需求測試方案案例列表近期狀況案例儲存分享系統介面本月案例

Scanning (Traceroute, Nmap, Nessus)

Page 3: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

3

計畫目的、成果應用性、技術優越性 計畫目的

與子計畫二合作,打造資訊安全專屬雲端實驗平台 將案例製作成虛擬映像檔保存,提供完整的實驗環境 互動式的教學界面,實際體會資訊安全上的各種效果

成果應用性 加強與落實使用者與管理者資訊安全素質 提供安全且具彈性資安教育訓練的雲端環境

項目 NCTU Wargame

Webgoat NCU CSEP

案例類型

1.Web 安全 ( 如: SQL Injection) V V

2. 網路安全 ( 如: DLL Hijacking) V

3. 程式碼安全 V V

4. 系統安全 V V

實驗進度追蹤 V V V

實驗過程提示及互動 V V

與上次相同

Page 4: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

4

文件撰寫目前進度項目 上次完成度 目前完成度 備註 (deadline)

專案執行規劃書 90% 100% 100.11

系統需求規格書 90% 100% 100.11

測試計畫 0% 0% 101.05.31

國科會期中精簡報告 0% 0% 101.04

測試報告 0% 0% 101.05

系統安裝 / 使用手冊 0% 0% 101.06• 專案執行規劃書

• Version 0.30• 於總計畫 svn 的 Documents\CSEP\ 第二年度 \PEP

• 系統需求規劃書• Version 0.23• 於總計畫 svn 的 Documents\CSEP\ 第二年度 \SRS

Page 5: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

5

功能性需求執行目前進度模組名稱 需求項目 上次完成度 目前完成度 備註

案例儲存分享 新增案例30% 30%

第一年度皆由手動新增案例

編輯案例手冊 30% 30%

編輯案例檢查點 0% 0%

編輯案例網路拓樸 0% 0%

刪除案例 30% 30%

查看案例各成員進度 0% 30%

安全可衡量 查看各實驗 VM 狀況 20% 20%

查看各實驗網路狀況 0% 0%

終止失控實驗 0% 0%

Page 6: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

6

非功能性需求目標 評估指標 具體方案 預期結果 ( 量化 )

攻防實驗服務

提供資安教育訓練教材

攻防案例數量從 100/8-101/7 ,每個月提出一個案例

Web Security 案例三個Network Security 案例三個System Security 案例三個Programming Security 案例三個

結合虛擬化技術 整合案例數量於所提出之案例中,整合至子計畫二平台上,於虛擬機器中建構檢查點,建構互動式教學環境

可操作攻防案例 10 個

建構虛擬實驗網路

建構實驗網路時間使用子計畫二平台 API 建立網路拓樸,並於資料庫系統中建立對應之關係

建構實驗不超過兩分鐘

推廣實驗平台

案例完成個數

於學校資訊安全相關課程中進行推廣並記錄學生使用情況

每個案例至少超過 2 人以上完成

每人完成案例系統中帳號平均完成 1 個案例以上

系統中總共完成實例所有案例完成之人數總和 30

與上次相同

Page 7: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

7

需求測試方案 - (1/2)模組名稱

測試項目

測試環境

測試方法

測試工具

測試結果

案例儲存分享

新增案例 Ubuntu 10.04Python 2.6Django 1.3.0

於 CSSTestClass 中新增 AddCase

Function ,測試是否能藉由CSS.View 中對應之 Function 新增案例

Python unittestLibarry

編輯案例手冊 Ubuntu 10.04Python 2.6Django 1.3.0

於 CSSTestClass 中新增 Edit Manual

等 Function 進行測試,測試是否能藉由 CSS.View 中對應之 Function 編輯案例手冊

Python unittestLibarry

編輯案例檢查點 Jython 1.3.0 編輯 Sikuli Script 模擬使用者在虛擬機器中的新增檢查點行為

Sikuli Script

編輯案例網路拓樸 Ubuntu 10.04Python 2.6Django 1.3.0

於 CSSTestClass 中新增 Edit

Topology Function 進行測試, 測試是否能藉由 CSS.View 中對應之Function 編輯拓譜

Python unittestLibarry

刪除案例 Ubuntu 10.04Python 2.6Django 1.3.0

於 CSSTestClass 中新增 DelCase

Function 進行測試, 測試是否能藉由CSS.View 中對應之 Function 刪除案例

Python unittestLibarry

查看案例各成員進度 Ubuntu 10.04Python 2.6Django 1.3.0

於 CSSTestClass 中新增 ViewCaseStat

Function 進行測試, 測試是否能藉由CSS.View 中對應之 Function 取得案例成員進度

Python unittestLibarry

與上次相同

Page 8: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

8

需求測試方案 - (2/2)

安全可衡量

查看各實驗 VM 狀況 Ubuntu 10.04Python 2.6Django 1.3.0

於 MSETestClass 中新增 ViewVMStat

Function 進行測試, 測試是否能藉由VMController 取得 VM 狀況,並且正確儲存到 Model 中

Python unittestLibarry

查看各實驗網路狀況 Ubuntu 10.04Python 2.6Django 1.3.0

於 MSETestClass 中新增 ViewNetstat

Function 進行測試, 測試是否能藉由VMController 取得網路資料,並且正確儲存到 Model 中

Python unittestLibarry

終止失控實驗 Ubuntu 10.04Python 2.6Django 1.3.0

於 MSETestClass 中新增 Termination

Function 進行測試,並且預先製作好惡意 Image ,透過將其啟動後,測試MSE 中對應模組是否有偵測到,並能將其中止

Python unittestLibarry

模組名稱

測試項目

測試環境

測試方法

測試工具

測試結果

與上次相同

Page 9: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

9

第一年度案例之提出與預計新增日期

年度 編號 案例名稱 提出日期

預計新增日期 使用 API 備註

第一年度

1 SQL Injection 100.1 100.6 VM 管理 已完成

2 Cross-Site Script 100.2 100.7 VM 管理 已完成

3 DDoS 100.3 101.3VM 管理、虛擬機房 需要網路拓樸的

API才能轉移4 DNS Spoofing 100.4 101.3

VM 管理、虛擬機房

5 Metasploit Autopwn 100.5 100.9 VM 管理 10.24 完成

6 DLL Hijacking 100.6 100.8 VM 管理 已完成

Page 10: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

10

年度

編號 案例名稱 提出日

期預計新增日期 使用 API 備註

第二年度

1 Clickjacking 100.07 100.9 VM 管理 已完成

2 Stack-based Overflow 100.08 100.10 VM 管理 已完成

3 SYN Flooding 100.10 100.11 VM 管理 進行中

4 Non Executable Stack 100.11 100.12 VM 管理 進行中

5 CSRF 100.12 101.1 VM 管理

6 Scanning (Traceroute, Nmap, Nessus) 101.1 101.2

VM 管理、虛擬機房

7 DLL Hooking 101.2 101.3 VM 管理

8 Heap-base Overflow 101.3 101.4 VM 管理

9 Session Hijacking 101.4 101.5 VM 管理

10 Type of Scanning 101.5 101.6 VM 管理

11 MBR Rootkit 101.6 101.7VM 管理、虛擬機房、監控 API

12 Format String Vuln 101.7 101.8 VM 管理

第二年度案例之提出與預計新增日期

Page 11: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

11

近期狀況與處理 1. 子計畫二切換網段,無法提供服務

影響 計畫案例無法轉移

處理 先自行製作環境,等待子計畫二服務恢復再行轉移

2. CSEP 平台狀況統計 (2011/12/15 以前 )1. 註冊人數 34 人2. 進行中實驗 85 人次3. 完成實驗 7 人次

Page 12: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

實驗環境設定區

案例儲存分享子系統 - 情境CSEP 案例製作介面

檢查點程式碼1. PHP2. Ruby3. Shell script

顯示對應語言之程式碼

V

VMs

5.放置案例內容

7放置檢查點程式碼(創建教材者自行放入 )2顯示設定

3. 實驗環境設定實驗環境設定 -主機設定

下一步 (設定網路拓墣 )

1. 攻擊者數量

2. 受害者數量

1. VM1

1. VM3

2. VM2

命名VM1

選擇樣板選擇應用程式命名

VM2選擇樣板

選擇應用程式

命名VM3

選擇樣板選擇應用程式

完成

實驗環境設定 - 網路設定

VM1 VM3VM2

上一步

Add Router

Router1

Router2

4. 製做實驗環境 並開啟 VM

1. 撰寫文件內容

6.選擇對應語言之檢查點程式碼

1. 步驟一1. 子步驟一2. 子步驟二

2. 步驟二1. 表一

3. 步驟三1. 圖一

V

案例文件撰寫區

V

12/5/201112

與上次相同

Page 13: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

13

本月案例 - Scanning (Traceroute, Nmap, Nessus)

在入侵測試的前半段,若能對目標的網路架構及服務取得一定了解,甚至能知道哪些服務有安全性漏洞的話,就能使後半段的入侵測試更加順利。

本實驗利用幾種常用的網路工具,配合虛擬網路環境模擬,練習找出上述所描述的資訊。

Page 14: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

10.0.1.110.0.1.2

Scan Topology

IPGateway

10.0.2.110.0.2.210.0.1.2 10.0.3.110.0.2.2

10.0.2.1

10.0.3.210.0.3.1

10.0.3.310.0.3.1

14

Page 15: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

ScenarioAttacker Victim

Router

10.0.2.10 10.0.2.11

Router

10.0.2.12 10.0.2.13

1.Scan the Victim

SMTP

SQL

HTTP

NmapNessus

1.Scan

2.Traceroute

2.Traceroute

3.Find the Weak Poin

3.Find the Weak Point

PHP

SSH

15

Page 16: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

16

API 列表 第一年度

編號 CPCS 提供之 API CSEP 備註1 vm-list V

2 vm-start V

3 vm-shutdown V

4 vm-reboot 預計於本年度配合安全可衡量模組使用5 vm-FShutdown

6 vm-FReboot

7 vm-suspend V

8 vm-resume V

9 vm-delete V

10 vm-create V

11 vm-image-list

12 vm-as-temeplate V 以前透過 API ,之後藉由 SAMEVED 提供之 Web UI 使用

Page 17: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

17

API 列表 第二年度 Virtual Network

4~7 若在產生 virtual router 時給予參數,則可免編號 Return Name Parameter

1 [0 uuid] vrouter-create <number of interfaces>

2 [0] vrouter-delete <router's uuid>

3 [0 list the routers] vrouter-list

4 [0] vrouter-setroute [router A's uuid] [interface number in router A] [router B's uuid] [interface number in router B]

5 [0] vtouter-unsetroute [router A's uuid] [interface number in router A][router B's uuid] [interface number in router B]

6 [0] vlan-attach [-i vm uuid] [-r router's uuid] [-i interface number]

7 [0] vlan-detach [-i vm uuid]

Page 18: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

18

API 列表 第二年度 Monitor

monitor-recordNet and monitor-dump ‘s file must define where to storage and access

編號 Return Name Parameter

1 [0 CPU Load(%)] monitor-getCPU [uuid]

2 [0 Memery Usage(%)] monitor-getMemoryUsage [uuid]

3 [0 OOB-Rx,EXP-Rx] monitor-getNetInput [uuid]

4 [0 OOB-Tx,EXP-Tx] monitor-getNetOutput [uuid]

5 [0 fileName(.pcap)] monitor-recordNet <-s start time> [-t time interval] //default now

6 [0 String] //特殊字元隔開 monitor-checkNet

7 [0 fileName] monitor-dump [uuid]

Page 19: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

19

(補充 ) 本年度預計案例 – Web Security1. Clickjacking

Clickjacking 是典型針對 Web UI 上弱點的攻擊手法,攻擊者利用網頁中使用者看不見的 Layer ,欺騙其點擊。原本使用者以為點擊的是所看見的網頁 Layer ,實際上卻是該隱藏的 Layer ,攻擊者利用此特性綁架使用者點擊,使點擊時所觸發的事件是由該隱藏 Layer決定,執行攻擊者之惡意行為。

2. Cross Site Request Forgery CSRF 是一種針對網站的攻擊,讓網站所相信的使用者,傳送未經授權

的要求。不像 XSS 一樣利用使用者對某特定網站的信任,而是反過來利用某網站對使用者的信任。

3. Session Hijacking Session Hijacking 是針對 Web session control 的攻擊,通常是針對 session

token 的管理機制。因為 HTTP 是 sessionless 的協定,所以網頁伺服器需要在 Browser 端放 token來認得每次要求是來自相同的使用者。如果該token 的保存或產生有安全性的弱點,就會被攻擊者利用進一步綁架使用者對該網站的瀏覽 session。

Page 20: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

20

(補充 ) 本年度預計案例 – Network Security1. SYN Flooding

是一種知名的 DoS 攻擊。利用 TCP Handshake原理,大量對某伺服器送出 SYN封包,然後不送出 ACK 完成交握。使得該伺服器連線資源都被佔用,導致網路服務癱瘓。

2. Scanning - (Traceroute, Nmap, Nessus) 在入侵測試的前半段,若能對目標的網路架構及服務取得一定了解,甚至能知道哪些服務有安全性漏洞的話,就能使後半段的入侵測試更加順利。本實驗利用幾種常用的網路工具,配合虛擬網路環境模擬,練習找出上述所描述的資訊。

3. Type of Scanning (Idle Scan, X’mas Scan, etc, RST Scan)

網路掃描是安全攻防的重要一環。如果直接利用正常交握掃描,可能會導致留下記錄使得攻擊曝光,或是無法取得想要的服務資訊。在此提供各種進階的掃描方式及教學練習,實際了解各種進階的網路掃描技術。

Page 21: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

21

(補充 ) 本年度預計案例 – System Security

1. Bypass Non Executable Stack (ret2lib) 攻擊者利用軟體的漏洞所執行的程式碼,往往位於記憶體的 Stack區段

中。因此作業系統可以將該區段的資料設定為不可執行,進一步防止該漏洞所導致的執行任意程式碼之可能性。但仍有一些技巧可以繞過該機制,如 Return to Lib 的技巧,可以繞過該機制並取得系統權限。

2. API Hooking Hooking 係藉由攔截系統及應用程式之間的 API呼叫,以達到監控或更改資料的目的,在計算機科學上有廣泛的用途,例如 Debug ,或是附加功能。但許多惡意軟體也會使用該技巧以隱藏自己的存在,使系統中使用者無法察覺惡意軟體的行為。本實驗藉由實際惡意軟體案例,讓使用者體驗 API Hooking 的效果。

3. MBR Rootkit MBR 是硬碟中第一段區塊,其中包含第一段要被載入執行開機程序的程

式碼。而MBR Rootkit 所感染的區塊正式 MBR。由於此種 Rootkit 在作業系統啟動之前執行,因此對於該 Rootkit 的偵測是十分困難且具有挑戰性的。

Page 22: 用於維護雲端服務 ( 含客端 ) 安全機制與其安全服務實驗平台之研究 - 子計畫三

22

(補充 ) 本年度預計案例 – Programming Security1. Stack-based Buffer Overflow

堆疊緩衝區溢位發生在程式寫入超出原本資料結構長度,在堆疊上就會超過原本可以儲存的區段,進一步影響到堆疊上其他資料。攻擊者可以利用此特性,妥善控制寫入的資料,進一步可以執行任意程式碼。本實驗藉由實際 Stack-based Buffer Overflow ,讓使用者體驗案例效果。

2. Heap-based Overflow Heap 是程式在執行期動態配置的記憶體區段。藉由配置時會發生的漏洞,使得應用程式覆寫到其他內部資料結構,通常是 Function Pointer。達到可以執行任意程式碼的效果。 本實驗藉由實際 Heap-based Buffer Overflow ,讓使用者體驗案例效果。

3. Format String Vulnerabilities 在常用的 printf 中,如果不正確使用,加上沒有對使用者輸入做檢

查。攻擊者就可以利用 printf 中的 %s%x或%n讀取及寫入記憶體中的位置。造成攻擊者可以執行任意程式碼。