1、CTF基本賽制與題型
2、CTF備戰思路
3、語言環境的安裝(Python / Java / PHP)
4、常見工具的簡介與安裝(VMware workstation,Burpsuite...)
什么是CTF?
Capture The Flag 奪旗賽,盡可能多的獲得flag,起源於1996年舉辦的DEF CON全球黑客大會,最早是交流安全技術的重要途徑。
CTF比賽流程:題目——》Flag——》分數——》名次(CTF參賽隊伍目標是獲取盡可能多的flag旗幟)
永信至誠 (i春秋/ e春秋)
flag可能來自於一台遠端的服務器,一個復雜的軟件,也可能隱藏在一段通過密碼算法或協議加密的數據(密碼學),或是一組網絡流量以及音頻視頻(畫出波形——》摩斯密碼)文件中。
選手需要綜合利用自己掌握的安全技術,並輔以快速學習新知識,通過獲取服務器權限,分析並破解軟件或是設計解密算法等不限定途徑來獲取flag。
CTF比賽形式:
1、解題模式:通常為在線比賽,目前大多數國內外CTF比賽的主流形式,選手自由組隊參賽(在線比賽人數一般不做限制)。
題目通常在比賽過程中陸續放出。解出一道題目后,提交題目對應的flag即可得分,比賽結束時分高者獲勝。
2、攻防模式:通常為現場比賽,多數CTF決賽的比賽形式,選手自由組隊參賽,但通常隊伍人數會受到限制(3~8人不等)。
相比於解題模式,時間更短,比賽中更注重臨場反應和解題速度,需要能夠快速攻擊目標主機的權限,考察團隊多方面的綜合安全能力。
CTF解題模式的題目類型:
1、web安全:通過瀏覽器訪問題目服務器上的網站,尋找網站漏洞【sql注入(SQL查詢),xss(跨站腳本攻擊),文件上傳,包含漏洞,xxe,ssrf,命令執行,代碼審計等】,利用
網站漏洞獲得服務器的部分或全部權限,拿到flag,通常包含分值最大的web滲透題。
2、逆向工程(Reverse):題目就是一個軟件,但通常沒有軟件的源代碼;需要利用工具對軟件進行反編譯甚至反匯編,從而理解軟件內部邏輯和原理,找出與flag計算相關
的算法並破解這個算法,獲取flag;(可以把“外掛”理解為逆向工程的一個小的應用)
3、漏洞挖掘與漏洞利用(PWN, EXPLOIT):訪問一個本地或者遠程的二進制服務程序,通過逆向工程找出程序中存在的漏洞,並利用程序中的漏洞獲取遠程服務器的部分或全部權限,拿到flag。
PWN就是我們所說的二進制,很難,分很高(一個PWN題目抵得上兩個web安全的題目,一個web安全題目抵得上兩個雜項misc題目)
4、密碼學(Crypto):分析題目中的密碼算法與協議,利用算法或協議的弱點來計算秘鑰或對密文進行解密,從而獲取flag。(編碼:base64 加密:凱撒密碼 摘要:MD5 、 SHA1 、 SHA2)
5、調查取證也叫做“雜項”(Misc):利用隱寫術等保護技術將信息隱藏在圖像、音頻、視頻、壓縮包中,或者信息就在一段內存鏡像或網絡流量中,嘗試將隱藏的信息恢復出來即可獲得flag。(雜項相對來說最容易入門)
6、移動安全(Mobile):對安卓和IOS系統的理解,逆向工程等知識。(Windows:.exe 安卓:.APK Mac:.dmg)
CTF難度排序:①Misc(雜項)——》②Crypto(密碼學)——》③web安全——》④reverse(逆向)——》⑤PWN(二進制破解)【省級比賽把前三個做好就差不多了】
在ctf中把對應的答案叫做 writeup(wp)