既然是入門的帖子,那我就先來介紹一下CTF的一些基本的概念
CTF的全名是capture the flag 奪旗錦標賽,一般來說分為解題模式,攻防模式和混合模式,其中解題模式就現在來說搞得比較多
所以就先着重介紹一下解題模式,解題模式這個主要是以解決網絡安全技術問題挑戰題目的分值和時間來進行排名,通常是用來在線
的選拔,其中題目大概有這么幾個 web,密碼學,pwn(綜合滲透),misc(雜項),reverse(逆向),ppc(編程類)而攻防模式
的比賽一般就是每一個參賽隊伍,在同一個網絡中,進行相互攻擊和防守,以發現對手服務器的漏洞,修補和防御己方服務器漏洞來
的分,一般比賽時間較長,而混合模式就是兩者皆有。
那應該如何開始你的CTF得旅程呢
首先,你得有基本的編程語言基礎(比如c語言,匯編,以及腳本語言(PHP,ASP,python)之類的),還有數學基礎(比如
密碼學,算法,基礎的高等數學),當然那個天馬行空的想象力也是很重要的,最最重要的是你要有一顆恆心,堅持下來
當你有了以上這些基礎知識以后,你就可以開始基礎學習了
剛開始可以嘗試一下像黑客game這種小游戲,也可以嘗試一下我們論壇的練習平台的分值比價低的題,因為這些基礎題,一般的知識點都
比較少,只有一個到兩個左右,也便於理解。然后當基礎題不能滿足你的時候,你就可以練習一下高分的題目,剛開始做高分題,可能會比較困難
所以這時候,因該更加深入的學習一些腳本語言,匯編,信息安全知識等,慢慢的你就可以參加一些比賽,說道比賽,介紹一下
目前國內比較大型的CTF比賽,有TCTF,XCTF,AliCTF,XDCTF,HCTF,ISCC等。
最后聊一下關於CTF主要考驗的那幾個方面的技能:
逆向工程:這是CTF試題中的一個大的考點,學習建議的話,建議深度學習一下C語言和需要匯編,匯編的話不要所有架構都學習
建議專學一個架構x86,x86_64或是ARM,
web漏洞:這個方面的安全問題,可能來自於web服務器,數據庫服務器,還有web應用程序本身,對於這方面的學習腳本語言是一個
重中之重,像PHP這種一定要很熟練,而且對於數據庫,操作系統的知識也是很重要的,需要深入了解的
密碼學:這個的學習需要了解主流的密碼算法,如對稱密碼、公鑰密碼、流密碼、哈希密碼算法,序列密碼等。還需要了解
一下常見的密碼破解工具,以及web目前常見的加密算法和編碼方式。
基本上就這些,如果大家有補充的可以在評論區提出來,我會慢慢完善這個新手帖子。下面是我copy互聯網上的一些資源:
知乎關於CTF訓練的:https://www.zhihu.com/question/30505597
入門:
http://bobao.360.cn/ctf/ 360的CTF訓練營
www.ichunqiu.com 有線下決賽題目復現
www.wechall.net/challs 非常入門的國外ctf題庫,很多國內都是從這里刷題成長起來的http://www.blackhat.com/
http://shiyanbar.com(線上資源均免費,經常性的舉辦各種有獎活動)
http://packetstormsecurity.com (有大量exploit程序)
http://www.ussrback.com/ 比較活躍的安全站
http://www.attrition.org/ 內容全面的安全站 (更新至2013年)
http://www.social-engineer.org/ 社會工程學研究所
https://www.soldierx.com
http://www.windowsecurity.com/(windowsnetworking.com)包含論壇、博客、新聞、工具windowsnetworking.com
http://www.blackmoreops.com
http://www.securitytube.net 大量視頻
工具:
https://github.com/truongkma/ctf-tools
https://github.com/Plkachu/v0lt
https://github.com/zardus/ctf-tools
https://github.com/TUCTF/Tools
****************************************************************************************************************
以上內容均為轉載https://www.bugku.com/thread-7-1-1.html
用於個人學習