CTF入門(mén)
轉(zhuǎn)載:
CTF簡(jiǎn)介:
CTF(Capture The Flag)中文一般譯作奪旗賽,在網(wǎng)絡(luò)安全領(lǐng)域中指的是網(wǎng)絡(luò)安全技術(shù)人員之間進(jìn)行技術(shù)競(jìng)技的一種比賽形式。
CTF起源于1996年DEFCON全球黑客大會(huì),以代替之前黑客們通過(guò)互相發(fā)起真實(shí)攻擊進(jìn)行技術(shù)比拼的方式。
發(fā)展至今,已經(jīng)成為全球范圍網(wǎng)絡(luò)安全圈流行的競(jìng)賽形式,2013年全球舉辦了超過(guò)五十場(chǎng)國(guó)際性CTF賽事。
而DEFCON作為CTF賽制的發(fā)源地,DEFCON CTF也成為了目前全球最高技術(shù)水平和影響力的CTF競(jìng)賽,類(lèi)似于CTF賽場(chǎng)中的“世界杯” 。
CTF靶場(chǎng):CTF刷題,在校生備戰(zhàn)CTF比賽,信安入門(mén)、提升自己、豐富簡(jiǎn)歷之必備(一場(chǎng)比賽打出好成績(jī),可以讓你輕松進(jìn)大廠,
如近期的各種CTF杯),在職人員可以工作意外提升信安全技能。
滲透實(shí)戰(zhàn)靶場(chǎng):挖洞、滲透實(shí)戰(zhàn)(web、域、橫向滲透),適合實(shí)戰(zhàn)能力需要大幅度提升的同學(xué)。
一、CTF入門(mén)
1.1、CTF常識(shí)
CTF(Capture The Flag,奪旗賽)起源于 1996 年 DEFCON 全球黑客大會(huì),是網(wǎng)絡(luò)安全愛(ài)好者之間的競(jìng)技游戲。
CTF 競(jìng)賽涉及眾多領(lǐng)域,內(nèi)容繁雜。
CTF是一種流行的信息安全競(jìng)賽形式,其英文名可直譯為“奪得Flag”,也可意譯為“奪旗賽”。
其大致流程是,參賽團(tuán)隊(duì)之間通過(guò)進(jìn)行攻防對(duì)抗、
程序分析等形式,率先從主辦方給出的比賽環(huán)境中得到一串具有一定格式的字符串或其他內(nèi)容,并將其提交給主辦方,從而奪得分?jǐn)?shù)。
為了方便稱呼,我們把這樣的內(nèi)容稱之為“Flag”。
CTF比賽知識(shí)范圍大致分為:
Web安全、PWN(二進(jìn)制安全)、Reverse(逆向破解)、Crypto(密碼學(xué)安全)、Forensics(數(shù)字取證)、Misc(雜項(xiàng))
Web安全
CTF中的Web題型,就是給定一個(gè)Web網(wǎng)站,選手要根據(jù)題目所提示的信息,找到網(wǎng)站上的flag字符串。
做題的方法類(lèi)似于滲透測(cè)試,
但通常不會(huì)是一個(gè)完整的滲透測(cè)試,而是用到滲透測(cè)試中的某一個(gè)或某幾個(gè)環(huán)節(jié)。
可能涉及信息搜集、各類(lèi)漏洞發(fā)現(xiàn)與利用、權(quán)限提升等等。
為了獲取flag,可能需要拿到管理員權(quán)限,數(shù)據(jù)庫(kù)權(quán)限,甚至獲取網(wǎng)站所在服務(wù)器的權(quán)限。
所需知識(shí):
語(yǔ)言:PHP、Python、JavaScript…
數(shù)據(jù)庫(kù):MySQL、MSSQL…
服務(wù)器:Apache、Nginx…
Web框架:ThinkPHP、Flask…
語(yǔ)言特性:弱類(lèi)型、截?cái)唷?nbsp;
函數(shù)特性:is_numeric、strcmp等;
PWN
PWN在安全領(lǐng)域中指的是通過(guò)二進(jìn)制/系統(tǒng)調(diào)用等方式獲得目標(biāo)主機(jī)的 shell。
CTF 中主要考察二進(jìn)制漏洞的發(fā)掘和利用,需要對(duì)計(jì)算機(jī)操作系統(tǒng)底層 有一定的了解。
在 CTF 競(jìng)賽中,PWN 題目主要出現(xiàn)在 Linux 平臺(tái)上。
所需知識(shí): C/C++編程語(yǔ)言基礎(chǔ)、編譯原理、匯編、反匯編、操作系統(tǒng)、加密與解密、堆棧原理、棧溢出、堆溢出…
Reverse
CTF之REVERSE題目涉及到軟件逆向、破解技術(shù)等,要求有較強(qiáng)的反匯編、反編譯扎實(shí)功底。
需要掌握匯編,堆棧、寄存器方面的知識(shí)。有好的邏輯思維能力。
主要考查參賽選手的逆向分析能力。
所需知識(shí): 匯編、反匯編、堆棧、調(diào)試器、代碼分析、OllyDBG、IDA等
Crypto
CTF之CRYPTO部分題目考察各種加解密技術(shù),包括古典加密技術(shù)、現(xiàn)代加密技術(shù)甚至出題者自創(chuàng)加密技術(shù)。
所需知識(shí): 數(shù)學(xué)知識(shí)、密碼編制、密碼破解、古典密碼、現(xiàn)代密碼、密碼分析;
Forensics
CTF之FORENSICS包括文件格式分析,隱寫(xiě)術(shù),內(nèi)存轉(zhuǎn)儲(chǔ)分析或網(wǎng)絡(luò)數(shù)據(jù)包捕獲分析,
提取靜態(tài)數(shù)據(jù)文件中隱藏的信息的任何挑戰(zhàn)都可以歸為這一類(lèi)
所需知識(shí): 數(shù)據(jù)恢復(fù)、磁盤(pán)取證、內(nèi)存取證、流量分析、文件隱寫(xiě);
Misc
就是除上述之外的亂七八糟的網(wǎng)絡(luò)安全范圍內(nèi)的東西,英文全稱為 Miscellaneous,
意思是混雜的、各種各樣的。MISC 題通 常包括文件分析、圖像隱寫(xiě)、數(shù)據(jù)搜索、內(nèi)存鏡像分析和流量分析等。
題型多樣,腦洞大,趣味性強(qiáng)是 MISC 題型的主要特點(diǎn)。
所需知識(shí): 信息隱藏、文件格式、內(nèi)存鏡像、流量分析、數(shù)據(jù)分析、社會(huì)工程等;
1.2、CTF競(jìng)賽模式
解題模式(Jeopardy)
在解題模式CTF賽制中,參賽隊(duì)伍可以通過(guò)互聯(lián)網(wǎng)或者現(xiàn)場(chǎng)網(wǎng)絡(luò)參與。
這種模式的CTF競(jìng)賽與ACM編程競(jìng)賽、信息學(xué)奧賽類(lèi)似,
以解決網(wǎng)絡(luò)安全技術(shù)挑戰(zhàn)題目的分值和時(shí)間來(lái)排名,通常用于在線選拔賽,選手自由組隊(duì)(人數(shù)不受限制)。
題目主要包含六個(gè)類(lèi)別:RE逆向工程、Pwn漏洞挖掘與利用、Web滲透、Crypto密碼學(xué)、Mobile移動(dòng)安全和Misc安全雜項(xiàng)。
攻防模式(Attack-Defense)
在攻防模式CTF賽制中,參賽隊(duì)伍在網(wǎng)絡(luò)空間互相進(jìn)行攻擊和防守,
通過(guò)挖掘網(wǎng)絡(luò)服務(wù)漏洞并攻擊對(duì)手服務(wù)來(lái)得分,
通過(guò)修補(bǔ)自身服務(wù)洞進(jìn)行防御來(lái)避免丟分。
攻防模式通常為線下賽,參賽隊(duì)伍人數(shù)有限制(通常為3到5人不等),
可以實(shí)時(shí)通過(guò)得分反映出比賽情況,最終也以得分直接分出勝負(fù)。
這是一種競(jìng)爭(zhēng)激烈、具有很強(qiáng)觀賞性和高度透明性的網(wǎng)絡(luò)安全賽制。
在這種賽制中,不僅僅是比參賽隊(duì)員的智力和技術(shù),也比體力(因?yàn)楸荣愐话愣紩?huì)持續(xù)48小時(shí)及以上),同時(shí)也比團(tuán)隊(duì)之間的分工配合與合作。
混合模式(Mix)
結(jié)合了解題模式與攻防模式的CTF賽制,主辦方會(huì)根據(jù)比賽的時(shí)間、進(jìn)度等因素來(lái)釋放需解答的題目,題目的難度越大,解答完成后獲取的分?jǐn)?shù)越高。參賽隊(duì)伍通過(guò)解題獲取一些初始分?jǐn)?shù),然后通過(guò)攻防對(duì)抗進(jìn)行得分增減的零和游戲,最終以得分高低分出勝負(fù)。采用混合模式CTF賽制的典型代表如iCTF國(guó)際CTF競(jìng)賽。
二、CTF賽事發(fā)布網(wǎng)站
i春秋: https://www.ichunqiu.com/competition
XCTF社區(qū):https://time.xctf.org.cn
CTFwiki(入門(mén)必看wiki): https://ctf-wiki.github.io/ctf-wiki/#/introduction
CTFrank: https://ctfrank.org/
CTFtime(基本都是國(guó)外的): https://ctftime.org
三、CTF在線靶場(chǎng)
1、BugkuCTF(經(jīng)典靶場(chǎng),難度適中,適合入門(mén)刷題,題量大)
https://ctf.bugku.com/
2、北京聯(lián)合大學(xué)BUUCTF(新靶場(chǎng),難度中上,搜集了很多大賽原題)
https://buuoj.cn/
3、CTFSHOW:(新靶場(chǎng),題量大,很多大賽會(huì)從中抽原題)
https://ctf.show/challenges
4、XCTF攻防世界:
https://adworld.xctf.org.cn/task
上面4個(gè)靶場(chǎng)是我常去的,BugkuCTF很久以前就刷了一遍,
BUUCTF刷了有70%,CTFSHOW最近一直在刷,XCTF攻防世界以前有內(nèi)網(wǎng)滲透實(shí)驗(yàn),現(xiàn)在主要上去刷CTF。
5、實(shí)驗(yàn)吧:
http://www.shiyanbar.com(2017年刷過(guò)一遍,目前站一直更新)
**6、安恒周周練:**https://www.linkedbyx.com/home
7、XSS專練:https://xss.haozi.me/tools/xss-encode/
8、南京郵電大學(xué)CTF網(wǎng)絡(luò)攻防訓(xùn)練平臺(tái): http://ctf.nuptzj.cn/
9、網(wǎng)絡(luò)信息安全實(shí)驗(yàn)平臺(tái) http://hackinglab.cn/index.php
四、漏洞靶場(chǎng)
1. DVWA(必練):Web安全入門(mén)必刷的靶場(chǎng),包含了最常見(jiàn)的web漏洞,界面簡(jiǎn)單易用,
通過(guò)設(shè)置不同的難度,可更好地理解漏洞的原理及對(duì)應(yīng)的代碼防護(hù)
http://www.dvwa.co.uk
2. Sqli-Labs(必練):一個(gè)印度大神程序員寫(xiě)的,用來(lái)學(xué)習(xí)sql注入的一個(gè)游戲教程,目前65關(guān),沖關(guān)過(guò)程中學(xué)注入。
https://github.com/Audi-1/sqli-labs
3. Upload-labs(必練):一個(gè)和sqli-labs類(lèi)似的靶場(chǎng)平臺(tái),專門(mén)學(xué)習(xí)文件上傳的,目前21關(guān)。
https://github.com/c0ny1/upload-labs
4. BWVS(老版本bugku的離線版):
https://github.com/bugku/BWVS
5. BWAPP:
https://sourceforge.net/projects/bwapp
6. WAVSEP:
https://github.com/sectooladdict/wavsep
7. VulnStack:
http://vulnstack.qiyuanxuetang.net/vuln
8. Webug 3.0:
https://pan.baidu.com/s/1eRIB3Se
9. Metasploitable:
https://github.com/rapid7/metasploitable3
10. DVWA-WooYun:
https://sourceforge.net/projects/dvwa-wooyun
11. OWASP Mutillidae:
https://sourceforge.net/projects/mutillidae
12. Web for Pentester:
https://www.pentesterlab.com/exercises/web_for_pentester
五、滲透實(shí)戰(zhàn)靶場(chǎng)
1、Vulhub: (各種漏洞環(huán)境集合,一鍵搭建漏洞測(cè)試靶場(chǎng))
https://vulhub.org/(在線版)
https://github.com/vulhub/vulhub(離線版)
2、vulnhub:(國(guó)外實(shí)戰(zhàn)靶場(chǎng),適合入門(mén)提高)
https://www.vulnhub.com/
3、vulnstack(紅隊(duì)實(shí)戰(zhàn)靶場(chǎng),域、橫向滲透、多層網(wǎng)絡(luò),強(qiáng)烈推薦,目前共7個(gè)靶場(chǎng),網(wǎng)上writeup齊全)
http://vulnstack.qiyuanxuetang.net/vuln/#
4、WebGoat(WEB漏洞測(cè)試和練習(xí))
https://github.com/WebGoat/WebGoat
5、Web For Pentester(web漏洞檢測(cè)技術(shù))
https://www.pentesterlab.com
6、VulApps(快速搭建各種漏洞環(huán)境與安全工具環(huán)境)
http://vulapps.evalbug.com/
7、bWAPP(集成了各種常見(jiàn)漏洞和最新漏洞的開(kāi)源Web應(yīng)用程序)
http://www.itsecgames.com/
8、btslab(不同類(lèi)型的Web應(yīng)用程序漏洞)
https://github.com/CSPF-Founder/btslab/
9、pikachu(一個(gè)好玩的Web安全-漏洞測(cè)試平臺(tái))
https://github.com/zhuifengshaonianhanlu/pikachu
版權(quán)聲明:本文為博主程序員鬼鬼原創(chuàng)文章。
原文鏈接:https://blog.csdn.net/shanguicsdn111/article/details/142467668