感謝 leviliang (levi) 於PPT的分享:
https://www.ptt.cc/bbs/License/M.1534571704.A.5BA.html
這大概是ECSA v10考試最完整的心得分享。基於這份寶貴資料,結合ECSA v9版考試重點(很多相同的),我整理了ECSA v10考試重點如下,並標上頁碼。
我的心得是:
1. v9考古題幾乎沒有參考價值,除了習慣英文之外,但v10目前可能還沒有。
2. 要通過ECSA v10,建議必須看熟課本,至少重點要記熟。
3. 我和通過ECSA v10的同事交流過,每個人考試題目應該不完全相同。
4. 考試150題很多,考試前要睡飽。
個人整理如下:
Module 01 - Introduction to Penetration
Testing and Methodologies
|
|
P.??
|
法規(SOX, GLBA, California SB 1386),Vulnerability Assessment與Penetration testing的不同。
|
P.7
|
黑白灰箱應用題(盲與雙盲)。
|
P.13
|
Penetration Phase三階段概念(Pre-Attack Phase, Attack Phase,
Post-Attack)。
|
V.9
|
- P.??: Types of Security Policies (考Prudent那個)
- P.??: Security Policies (發現HR部門有員工私接Modem, 問要查對應的policy是Acceptable-use)
- P.??: HIPPA (醫療產業做PT要簽一個文件秒選HIPPA-Complied Company)
- P.??: DMCA (盜用程式碼要用這個告-數位千禧年著作權法案(DMCA)-Digital Millennium Copyright Act)
- P.5&6: Penetration Test vs.
Vulnerability Test (考兩者最主要的差異)
- P.22: Scope of Penetration Testing (可以用DoS, Buffer Overflow的是哪個? Destructive Test)
- P.08: Types of Penetration Testing (考Unannounced Test)
-P.13: Penetration Testing Phases (題目考觀察目標問哪個階段? Pre-Attack Phase)
|
Module 02 - Penetration Testing Scoping and
Engagement Methodology
|
|
P.32
|
RFP(Request for Proposal), Proposal
Submission,
|
P.51, 64, 70, 78,
|
ROE, EL(Engagement Later), SOW(Statement of
Work), NDA的概念一定要懂而且要清楚
|
P.85
|
DUA (Data Use Agreement)
|
P.69
|
免死金牌(Get-Out-of-Jail-Free Card)也有考,如果課本裡的英文敘述有看,會發現考題敘述完全一樣。
|
P.84
|
最後考了一題什麼測試(黑,白,盲,雙盲)才會有ICQ,我這題是選白,因為ICQ是要送給客戶的文件,因此只要是黑箱應該都不允許。PBC (Provided by Client)
|
V.9
|
- P.50: ROE
- P.78: SOW
- P.69: Get-Out-of-Jail-Free Card (目的)
- P.66: Penetration Testing Contract
- P.74: Liability Insurance (題目問如何預防可能發生的損失?)
- P.70: Non-Disclosure Agreements
- P.??: Comparing Approaches to
Vulnerability Assessment
(請服務公司來定期弱掃是? Service Based) (FTP發現有Dir Traversal, 然後針對這個弱點繼續是? Inference
Based)
- P.??: Vulnerability-Management Life Cycle
(執行Patch的階段是? Remediation(整治、矯正))
|
Module 03 - Open Source Intelligence (OSINT)
Methodology
|
|
P.99
|
什麼工具用來用來找類似的Domain Name->urlcrazy。
|
P.113
|
Archive.org的waybackmachine。
|
P.117, 119
|
dnsrecon的用法(找PTR反解: -r)
|
V.9
|
- P.99: Locate the Internal URLs (用Trial And Error方法找不到,應該改用? netcraft)
- P.111: Link Popularity (可觀察造訪網站的Visitor特性)
- P.117: Find the DNS Record (DNS Info包含Mail Server Ext及IP Address)
- P.115: RIR (找到受測公司的IP Range要向RIR(Regional
Internet Registries, 區域網路註冊)問)
- P.121: Traceroute (Traceroute用途? Extract info about topology, trusted
routers, firewall locations...)
- P.113: Archive (如何找到已被改掉的有問題網頁? www.archive.org)
|
Module 04 - Social Engineering Penetration
Testing Methodology
|
|
P.144, 143, 141
|
社交工程就是考概念應用,單字弄清楚不要搞錯,考了Dumpster Diving,Shoulder surf,Tailgating,好拿分!
|
V.9
|
- P.144: Dumpster Diving
- P.143: Shoulder Surfing (看到binoculars秒選這個)
|
Module 05 - Network Penetration Testing
Methodology-External
|
|
P.157
|
ICMP考type 11 (time execceded)
|
P.158, 159, 160
|
Port Scan六種務必讀到通,
|
P. 161
|
Ack Scan
|
P.
|
重要Port號一定要記,DCHP 67與68記得分辨清楚(前者Server後者Client)。
DNS:TCP/UDP 53
TFTP:UDP 69
POP3:110
RPC:111
NTP:UDP 123
SNMP:UDP 161
LDAP:UDP 389
Remote Desktop:TCP 3389
NETBIOS:UDP
135~139, 445(SMB)
SIP/VoIP:TCP 5060
Kerberos:TCP/UDP 88
|
V.9
|
Mod 06 -
External
- P.158: SYN Scan (A發SYN, B發SYN/ACK給A, 但A沒回傳ACK, B所處的狀態是? Half Open)
- P.160: FIN Scan (FIN Scan如果無回應,Port的狀態是Open)
- P.161: ACK Flag Probe Scan (選項TTL有60, 70, 80, 90四種, 問哪個port有開啟?)
- P.174: OS Fingerprinting (做這個的目的是: 找出可能的弱點)
- P.165: PortQry (考題的圖一樣, 選portqry -n
myserver -p udp -e 389)
- P.??: Examine the Use of IPv6 at the
Remote Location (用46Bouncer的目的是? Examine the use of ipv6)
- P.??: Hping3 IPID Example (圖完全一樣,答案是有SLB在後面)
- P.??: SSI (<!--- #exec
cmd="/bin/cat /etc/passwd" ---> 是利用什麼弱點? SSI)
- P.??:SMTP Mail Bouncing (不知道Mail Server資訊何解? 發一封錯誤收件人的信給目標Mail Server, 利用Mail Bouncing)
|
Module 06 - Network
Penetration Testing Methodology - Internal
|
|
P.205
|
考p0f使用,問目標會回覆什麼封包(RST, ACK, SYN, SYN/ACK)以獲得OS Banner。
SYN:Linux:TTL=64
SYN+ACK:Windows:TTL=128
|
P.214
|
進行rpc列舉(port=111):rpcinfo。非rpcenum
|
補充
|
NFS就是Network File
System的縮寫,NFS的啟動需要透過所謂的遠端程序呼叫 (RPC)。要掃瞄某一部主機他提供的NFS分享的目錄時,就使用 showmount -e
IP (或hostname)
|
P.233
|
MS17-010:SMB server
MS08-067:Code execution
|
P.238, 239
|
要知道/etc/passwd中的x代表密碼,但是但是密碼存在/etc/shadow裡。
|
P.238, 239
|
Linux的/etc/shadow中欄位的意義(例:密碼最長使用期限maximum
password age)
|
P.242
|
ARP Poisoning
|
P.243
|
MAC Flooding
|
P.257
|
Steganography
|
V.9
|
u
Internal
- P.209:
Enumeration
- P.210:
NetBIOS Enumeration (題目給NetBIOS
Information Obtained那欄,問你用的手法? NetBIOS
Enumeration)
- P.218:
Wireshark (如何看到cleartext的TCP訊息? Follow TCP
Stream)
- P.242:
ARP Poisoning
- P.257:
Steganography (藏資訊在圖內,問手法是?
Steganography)
-
P.243: Mac Flooding (Flood CAM table的手法是? Mac Flooding)
- P.244:
DNS Poisoning (PT發現c:\windows\System32\drivers\etc被改,手法是? DNS Poisoning)
- P.218:
Wireshark Display Filter:rip.src==[ip_address]
(還有protocol是FTP,問語法應如何下?
ftp&&ip.src==[ip_address])
- P.258:
FTP
-
P.239: Linux Password (passwd發現密碼是x,應該怎麼辦? 提權找shadow)
- P.239:
Rainbow Attack (拿到HASH要怎麼攻擊帳號才不會被鎖定? Rainbow Attack)
-
P.238: Linux Password (給你一行entry問第5個的數字代表意義? max number of days the password is valid)
/etc/shadow
username:
MD5
encrypted password:
last
password change:
min
mumber of days required between password changes:
max
number of days the password is valid:
number
of days the user is warned before the exp date-
|
Module 07 - Network
Penetration Testing Methodology-Perimeter Devices:重點章節,考很多很多。
|
|
P.278, 279, 280
|
Firewalk考目標回什麼代表防火牆Port是open。
TTL exceeded
error … open port
|
P.???
|
四種防火牆的用途:
Packet
Filtering:
1.
OSI network
layer(3), for IP packet。
2.
過濾每個packet。
3.
Low cost
& impact。
Circuit Level
Gateway:
1.
OSI session
layer(5)。
2.
監控packet間的TCP handshaking決定是否放行。
3.
相對不貴。
Application
Level Gateway:
1.
OSI
application layer(7),又稱proxy。
2.
進出packet若無proxy將無法存取service。若只設定為web proxy,就無法處理FTP、Telnet等服務。
Stateful
Multilayer Inspection:
1.
結合前3型,過濾OSI(3)的packet,決定OSI(5)的packet是否合法,並判斷OSI(7)的packet內容。
2.
昂貴,需要專業人員管理。
|
P.281
|
Hping設定SYN Flag也是考目標怎麼回代表防火牆是open。Hping 10.1.1.1 –c2 –S(SYN) –p21 -n
Port closed:ICMP
Unreachable type 13 from ….packet filter firewall
Port open:SYN/ACK
|
P.286, 287
|
nmap考decoy參數(別跟Spoofing搞混)。Decoy:誘捕
-D : spoof Packet
-S [假IP] -e [介面卡]: spoof IP
-g: spoof Port
|
P.291, 292
|
Source Routing (改packet內容), HTTP
Tunneling (不檢查HTTP packet), ICMP tunneling (ICMP內容無標準)都有考。
|
P.300
|
IDS的Insertion (1-character packet, 利用TTL-1=0讓部分packet死在IDS)
|
P.301
|
IDS的Inconsistent Packets (利用header大小不同,TCP: Offset field、UDP: UDP Length
field,讓IDS無法重組)
|
P.302
|
IDS的Fragmentation (利用User等待Packet Frag的timeout時間大於IDS)
|
P.303
|
IDS的Ping of Death (ICMP > 65536)
|
P.304
|
IDS的Unicode Evasion (躲避特徵碼比對)
|
P.304
|
IDS的Polymorphic Shell-code(考題敘述執行一Buffer Overflow,插入有加密之Payload,請問這是何種攻擊)
|
P.305
|
IDS的Obfuscation or Encoding
|
P.307
|
IDS的TTL Evasion (類似IDS Insertion)
|
P.310
|
IDS的Backscatter(考題敘述網路上偵測到大量SYN/ACK廣播封包但無SYN封包,請問有可能是何種攻擊)
|
P.311
|
IDS的Method Matching (GET改HEAD)
|
P.312
|
IDS的Reverse Traversal (haha\..)
|
P.317
|
IDS的Session Splicing (session timeout > IDS
timeout)
|
P.327
|
Router的Finger服務(Port 79)取得使用者身分
|
P.329
|
Router的Source Routing,以-j顯示寬鬆(loose)設定,以-k顯示嚴格(strict)設定
|
P.331
|
Router的ARP Attacks
(ARP: 位址解析,IP address vs. MAC address)
|
P.343
|
Router的MAC Table
Flooding
|
V.9
|
Mod 07 -
Firewall
- P.??: Software Firewall (Hardware比Software FW好的地方在? 不會受到底層Commercial
OS弱點的影響)
- P.??: Types of Firewalls (Session Layer的是Circuit Level FW)
- P.??: Firewall Policy (步驟順序i-v會考,請記下來)
- P.280: Traceroute
- P.278: Firewalking (收到TTL Exceeded代表Port有開)
- P.281: Hpinging (收到SYC/ACK代表Port有開)
- P.291: Source Routing (如何規避FW檢查? Source
Routing)
- P.292: ICMP Tunneling (為什麼ICMP Tunneling有效? 因為一般FW不會檢查Payload)
Mod 07 - IDS
- P.300: Insertion (看到碎成1-character packet秒選Insertion Attack)
- P.301: Sending a Packet to the Broadcast
Address (Amplification)
- P.301: Inconsistent Packets (寫了實際大小為300KB的Trojan但使用工具修改header成50KB的是? Inconsistent Packets)
- P.303: Ping of Death
- P.304: Unicode Evasion (給HTTP有做unicode的情境圖,問攻擊手法是? Unicode Evasion)
- P.304: Polymorphic Shell code (寫了惡意程式要如何規避IDS檢查
Polymorphic Shell code?)
- P.310: backscatter (管理者發現有一堆SYN/ACK,問攻擊手法是? backscatter)
- P.311: Method Matching (用HEAD來規避用的手法是? Method Matching)
- P.317: Session Splicing (封包間有故意delay來規避用的手法是? Session Splicing)
- P.???: Snort(IDS) (考了一題 Snort rule,問偵測從Internet到內網的SNORT規則應如何寫?)
- P.???: Snort Rule
|
Module 08 - Web Application Penetration
Testing Methodology
|
|
P.385
|
SQL Injection,不僅SQLMAP的指令參數要熟,考題還有考Blind SQL Injection的指令(ORD與MID函式,比較什麼Table的第幾個欄位的第幾個字之類的)。
|
P.388
|
SQL Injection的萬用字元(Wildcards),可用於DoS: %
[] [^] _
|
P.390
|
Inline Comment,避開IDS、WAF:/**/
|
P.392
|
Function-Call Injection Attack:資料庫預設函式TRANSLATE,URL_HTTP.REQUEST
|
P.422
|
Connection String Injection與Connection String Parameter Pollution(CSPP)要分清楚,有一題放在一起考。
|
P.429
|
Session Token與HTTP Cookie有考
|
P.431
|
WSDL的SOAP
|
V.9
|
-
P.368: 爬網、砍站軟體Dirbuster、BlackWidow、HTTrack (Dump網站離線找出可能弱點)
-
P.???: Types of SQL Injection (appending additional SQL query after escaping
original query是? stacking query injection/Batch query)
- P.388:
wildcard (%)
- P.???:
username like char(37) (有WAF無法用Admin ' OR'何解?) char(37) = %
- P.377:
sqlmap (考指令)
-
P.373: Fuzz Testing (Input massive amount of data to crash application是? Fuzz Testing)
- P.???:
Source-Code Review
-
P.384: sqlmap (考指令,圖給列出某個Database下的Table的sqlmap畫面結果問你指令如何下)
-
P.385: First Table Entry (題目給/?id=1+AND......指令,問你這個指令是用來? Extract first character of the first table
entry)
-
P.388: DoS Attack
-
P.390: Inline Comments (給/**/問你手法是?)
-
P.391: Obfuscated Code (給課本圖的情境,問你手法是?)
-
P.392: Function-Call Injection
- P.400:
Directory Traversal
- P.396:
XSS (如何避免XSS? 用Server
Script處理角括號)(應該吧)
- P398.:
Parameter tampering
- P.425:
Session ID Prediction (xxxxxx12, xxxxxx24, xxxxxx36 問你下一個Session ID是?)
- P.424:
Session Management
- P.422:
Connection String Injection (給課本上After Injection的圖,問你手法是? Connection String Injection)
- P.431:
Web Services Probing (給課本上The attacker
traps the WSDL...的描述,問你手法是?)
- P.431:
SOAP Injection (應該如何開始? 用'來使頁面跳錯)
- P.434:
XPath Injection
|
Module 09 - Database Penetration Testing
Methodology
|
|
P.456
|
各個DB的Port:Oracle 1521、MSSQL 1433、MySQL 3306
|
P.460
|
TNS Listener三支程式的目錄要記:
$ORACLE_HOME/bin/lsnrctl
(listener control)
$ORACLE_HOME/bin/Tnslnsr
(listener process)
$ORACLE_HOME/network/admin/listener.ora (listener config)
|
P.474
|
Oracle DB Vault要怎樣Bypass?先假扮SYSDBA再用SQL
Injection。
|
V.9
|
-
P.455: Database Port Scanning (用1521的是哪個DB?)
-
P.463: Exploit Web Applications (考List All
Username的指令)
-
P.460: TNS Listener (考TNS Listener的檔案位置)
-
P.460: Listener Modes (考Provide network
access to Oracle DB instance是哪個Mode? Database
Listener Mode)
-
P.466: Extract SQL Server Database Information (考nmap指令 nmap
-p1434 --script ms-sql-info)
-
P.481: SSL (題目問如何強化DB安全? 只有SSL Certificate的選項是對的)
|
Module 10 - Wireless Penetration Testing
Methodology:重點章節,考很多很多
|
|
P.
|
aircrack-ng考很多很多很多,數字參數要記(-0=--deauth, -1=--fakeauth, -3=-arpreply,
-4=--chopchop, -5=--fragment, -9=--test),效果與原理也一定要懂(上網查)。
|
P.499, 501
|
WEP與WPA-PSK的破解流程要背起來,考了步驟組合的選擇題。
|
P.504
|
MAC-Filtering印象也有考了兩三題,簡單來說就是破解得到了密碼但卻連不上,這要使用參數(--fakeauth)偽造MAC連線。
|
P.522, 523
|
iPhone的越獄工具:Pangu。這題跟Android的root工具放一起考。
iPhone:Cydia、Keen、Pangu Anzhuang。
Android:One Click Root、Kingo Android
ROOT、SuperOneClick、Superboot。
|
P.533
|
Android的Intent Sniffing也有考,我有自己寫過Android App所以知道App內部傳值用Intent,但這題如果沒仔細看書會選不出來。
|
P.540
|
zANTI有考,這個工具建議下載來玩,可以直接用手機做弱點掃描。
|
P.550
|
iOS的Reverse Engineer:考了class dump
utility,題幹直接敘述Objective-C
runtime information stored in Mach-O files,跟課本敘述一模一樣。其他還有IDA
disassembler。
|
V.9
|
u
Wireless
-
P.490,494: Identify the rogue access points (題目考怎樣偵測rogue AP? 何者為非?)
=> 非授權的AP、MAC、radio media type、radio channel,War-Driving
-
P.498: packet injection attack (air的指令會考,請背) => aireplay -9
-
P.499: Crack Static WEP Keys (air的指令會考,請背)
-
P.501: Crack WPA-PSK Keys (air的指令會考,請背)
-
P.504: MAC Filtering (air的指令會考,請背)
u
Mobile
-
P.523: Mobile Penetration Testing Methodology (Intercepting HTTP traffic是? Communication Channel PT)
-
P.522: Rooting the Android Phones
-
P.523: Communication Channel Penetration Testing
- P.524:
Android:Intercept HTTP Requests by Fiddler,Port 8888
-
P.526: iPhone:Intercept HTTP Requests by Charles,Port 8888
-
P.533: Intent Sniffing (題目考Inter/Intra-app的通訊用的技術? Intent)
-
P.535: Reverse Engineer the Android Application:Apktool、dex2jar、JD-GUI、Agnitio
-
P.540: zANTI (題目選項說PT人員用來檢測行動裝置弱點的工具是?)
-
P.542: iPhone Is Jailbroken or Not (發現有Read/Write
Permission的/root檔案很多,/etc/fstab變大,裝了Cydia)
-
P.550: Reverse Engineer the iOS Applications (題目問command line的reverse
engineer工具 - Class Dump)
|
Module 11 - Cloud Penetration Testing
Methodology
|
|
P.567
|
IaaS, PaaS,
SaaS要了解清楚,題目考英文能力。
|
P.578
|
要知道Lock-in Problem是什麼意思,考了情境題。
|
V.9
|
Mod 11 - Cloud
- P.567: IaaS (題目描述有提供API, Core
Connectivity, Abstraction, HW是哪種類型雲服務? IaaS)
- P.578: Lock-In (無法更換CSP的情形是? Lock-in)
|
補充
|
WordPress與WooCommerce都是由Automattic所開發的產品,其中,WordPress為開源的內容管理系統(CMS),在CMS市場的佔有率高達6成,至於WooCommerce則是免費的電子商務外掛程式,安裝數量超過400萬,並號稱有30%的線上商店都採用該外掛。
RIPS安全研究人員Simon Scannell指出,WooCommerce含有一個檔案刪除漏洞,允許商店經理(Shop Manager)移除伺服器上的任何檔案,這類的漏洞通常不會造成太大的危害,頂多是刪除網站上的index.php檔並造成DoS。然而,當輔以WordPress的權限處理漏洞時,卻能讓駭客掌控整個網站。
|
Module 12 - Report Writing and Post Testing
Actions
|
|
P.605
|
考了Comprehensive Technical Report。
|
V.9
|
Mod 12 - Report
-
P.605: Comprehensive Technical Report
-
P.618: Updates and Patches
|