滲透測試簡介 - 台北區網中心Taipei Network
Download
Report
Transcript 滲透測試簡介 - 台北區網中心Taipei Network
滲透測試簡介
Introduction of Penetration Test
鈺松國際
王皇又
[email protected]
大綱
滲透測試簡介
滲透測試流程
實例討論
滲透測試簡介
何謂滲透測試
進行滲透測試的目的
滲透測試的分類
何謂滲透測試
滲透測試是由一群具有豐富的「網路及
系統安全」相關知識與經驗的團對負責。
在測試過程中,滲透測試團隊的成員,
以入侵者的思維方式,並以掃描工具、
攻擊程式及技術等輔助,對目標進行檢
測。
測試過程,就如同網路入侵事件的實際
演練。
進行滲透測試的目的
了解入侵者可能利用的途徑
了解系統及網路的安全強度
入侵者可能利用的途徑
入侵者可能利用的途徑,可能是個別的
問題,也可能是數個問題結合而成
資訊不當揭露或竄改
網路架構之設計問題
防火牆之設定問題
系統及應用程式漏洞
系統及應用程式設定問題
系統及網路的安全強度
評估具同等能力的入侵者大約可以在多
久的時間入侵成功
評估遭到入侵可能的影響
強化系統及網路的安全
減低遭到入侵後的損失
滲透測試的分類
網路滲透測試(Network Penetration Test)
應用程式滲透測試(Application
Penetration Test)
網路滲透測試
網路滲透測試目標為網路上的主機或其
他網路設備,對主機(或網路設備)及所提
供的服務進行檢測
針對目前已知問題進行資訊搜集,透過
分析及綜合搜集的資料,研判可能入途
徑
網路滲透測試
網路滲透測試與弱點稽核(vulnerability
assessment)的差異
滲透測試針對的是可能的入侵途徑,弱點稽核則是
著重在個別的問題
滲透測試透過資訊的分析,可以發現由數個(中、低
風險)問題組合而成的入侵途徑;弱點稽核則是個別
問題的列表
滲透測試會實際驗證入侵途徑,以提供遭到入侵的
可能影響;弱點稽核則是提出系統可能的漏洞,但
未實際驗證問題。
應用程式滲透測試
應用程式滲透測試目標為自行或外包開
發的應用程式(如asp、CGI程式)
分析應用程式可能的問題,並針對問題
進行滲透的動作
應用程式滲透測試
應用程式滲透測試與網路滲透測試的差
異
應用程式滲透測試是針對自行或外包開發的
應用程式,因此沒有所謂的知已知問題;網
路滲透測試是針對已知的問題進行檢測。
應用程式滲透測試沒有特定的工具,通常必
須自行撰寫;網路滲透測試有一些共同的工
具,用以搜集資訊及滲透。
滲透測試流程
滲透測試的流程
資訊搜集
資訊分析
目標滲透
網路滲透測試與應用程式滲透測試的各
部驟著重的問題不同。
網路滲透測試流程
資訊搜集:主要在了解目標網段的網路
架構,及網段上主機的相關資訊
目標網段存在的主機(ping sweep)
各主機的作業系統(OS
fingerprinting)
各主機提供的服務(port scan, banner grabbing)
各主機的使用者帳號及密碼
遠端弱點掃描(vulnerability scan)
網路滲透測試流程
資訊搜集
使用工具
ISS Internet scanner: vulnerability scan
nmap: Ping sweep, OS fingerprinting, port scan
whisker: CGI scanner
其他自行開發工具: banner grabbing etc..
網路滲透測試流程
資訊分析
研判可能滲透途徑
滲透團隊人力規劃
滲透方式規劃
網路滲透測試流程
目標滲透:主要是針對系統或應用程式
的問題,組合而成的滲透途徑進行滲透。
Information
disclosure(如web server indexing
enable、mail server expn enable、IIS/4.0
showcode.asp)
Buffer overflow/format string
Bypass authentication(如IIS/4.0 5.0 unicode)
Password brute force
….
應用程式滲透測試流程
資訊搜集
可輸入的參數,如web應用程式中傳給CGI
的參數
參數的意義,如使用者ID、密碼、E-mail等
應用程式滲透測試流程
資訊分析
研判可能問題
滲透團隊人力規劃
滲透方式規劃
應用程式滲透測試流程
目標滲透
資訊洩露(information disclosure),如錯誤訊
息提供的資訊
參數輸入值問題,如input validation、SQL
injection、buffer overflow、及format string等
參數組合問題
實例介紹(I)
受測單位背景
政府機關
電子公文系統線上使用
電子公佈欄
受測單位安全情況
從未遭受入侵過
防火牆設定良好
做過完整的掃描稽核測試
實例討論-I
Starting nmap V. 2.54BETA29 ( www.insecure.org/nmap/ )
Interesting ports on somewhere.tw (xx.xxx.xxx.xxx):
(The 5991 ports scanned but not shown below are in state: filtered)
Port
State
Service
25/tcp open
smtp
53/tcp open
domain
80/tcp open
http
110/tcp open
pop-3
443/tcp closed
https
1588/tcp closed
unknown
2649/tcp closed
unknown
3838/tcp open
unknown
6083/tcp open
unknown
6084/tcp open
unknown
6085/tcp open
unknown
8001/tcp open
unknown
8010/tcp open
unknown
8025/tcp open
unknown
8050/tcp open
unknown
8051/tcp closed
unknown
8889/tcp open
unknown
8899/tcp open
unknown
Nmap run completed -- 1 IP address (1 host up) scanned in 459 seconds
實例討論-I
InterScan Version 3.6-Build_1166
POP3 isc01 v7.64
Netscape-Enterprise/3.6 SP2
CERN/3.0
Apache/1.3.12 (Unix)
Netscape-Enterprise/3.5.1
Oracle_Web_Listener/4.0.8.1.0Enterpri
seEdition
實例討論-I
實例討論-I
實例討論-I
while ($#passlist >= $[) {
$pass=shift @passlist;
print SOCK "USER $user\n";
print "USER $user\n";
$ans=<SOCK>;
print $ans;
print SOCK "PASS $pass\n";
print "PASS $pass\n";
$ans=<SOCK>;
print $ans;
$found=1, last if ($ans =~ /^\+OK/);
}
實例討論-I
實例討論-I
實例討論-I
<html>
<head>
<title>交換管理系統</title>
<meta http-equiv="Content-Type" content="text/html; charset=big5">
<script language="JavaScript" src="/wape/comm/js/util/utils.js"></script>
<script language="JavaScript"
src="/wape/comm/js/ScrollText.js"></script>
<script>
var bbsOnly=true;
var m_count = 27072;
var numlength=8;
function checkKeyInData()
實例討論-I
實例討論-I
實例討論-I
實例討論-I
實例介紹(II)
受測單位背景
高科技產業
內部網路資訊
受測單位安全情況
未知是否遭到入侵
防火牆設定良好
未做過掃描稽核測試
有相當自信沒有安全問題
實例討論-II
實例討論-II
實例討論-II
實例討論-II
實例討論-II
實例討論-II
實例討論-II
實例討論-II
實例討論-III
受測單位背景
金融單位
內部網路資訊
受測單位安全情況
未遭到入侵
防火牆設定良好
過掃描稽核測試
實例討論-III
實例討論-III
實例討論-III
實例討論-III
問題?!