如果沒有方向的話
可以考慮跟網上的免費課程走
至少不會錯太遠且大體方向肯定是沒問題的
推薦幾個我覺得比較靠譜的吧
② 這是一份網路靶場入門攻略
近年來,國內外安全形勢日益嚴峻,網路安全問題日益凸顯。前有燃油運輸管道被堵,後有全球最大肉食品供應商被黑客入侵,這標志著越來越多的國家級關鍵基礎設施提供方,特種行業,以及大型公共服務業被黑客當作攻擊目標,加大對信息安全保障的投入迫在眉睫。除了軟硬體技術設備的投入之外,專業的安全人才重金難求已是公認的事實,據統計,20年我國信息安全人才缺口高達140萬,利用網路靶場可以體系,規范,流程化的訓練網安人才的特點打造屬於企業自己的安全維護隊伍是大勢所趨。
網路與信息安全是一個以實踐為基礎的專業,因此,建設網路安全實訓靶場,不僅僅讓靶場成為一個知識的學習中心,更是一個技能實踐中心,一個技術研究中心。網路攻防實訓靶場平台的建設,不僅要關注培訓教學業務的支撐建設,更要關注網路與信息安全技能綜合訓練場的建設。以支撐受訓人員課上課下的學習、攻防技能演練、業務能力評估、協同工作訓練和技術研究與驗證,以保證能貼近不同培訓業務的需要,並支持多維度量化每個參與者的各種能力,有計劃地提升團隊各個方面的技術能力。因此,建設一套實戰性強、知識覆蓋全面、綜合型的集培訓、網路攻防演練及競賽、測試於一體的網路靶場是非常有必要的
免費領取學習中資料
2021年全套網路安全資料包及最新面試題
(滲透工具,環境搭建、HTML,PHP,MySQL基礎學習,信息收集,SQL注入,XSS,CSRF,暴力破解等等)
網路靶場(Cyber Range)是一個供5方角色協同使用的網路系統模擬平台。用於支撐網路安全人才培養、網路攻防訓練、安全產品評測和網路新技術驗證。
網路安全人員要就攻防技術進行訓練、演練;一項新的網路技術要試驗,不能在互聯網上進行(造成不可逆的破壞),於是需要建立網路靶場,把網路的要素虛擬到網路靶場。
在網路靶場中進行網路安全活動,不僅可以避免對現實資源的佔用和消耗,還可以做到對資源的反復利用。每一次安全試驗造成的傷害程度都是可控的、可檢測的,試驗結束後還能夠對收集的試驗數據進行分析和研究。網路靶場在不影響真實環境的情況下可以提高網路安全從業人員的技術,也可以發現安全產品的漏洞從而提升安全產品的性能與安全性。
網路靶場共有五種角色:黃、白、紅、藍、綠。
黃方是「導調」角色,整個網路試驗的「導演」,負責:
1、設計試驗
2、控制試驗:開始、停止、恢復、停止
3、查看試驗:查看試驗的進度、狀態、詳細過程
白方是網路靶場平台「管理」角色,靶場試驗「劇務」,負責試驗開始前的准備工作和試驗進行時的「日常事務」處理:
1、試前構建目標網路、模擬網路環境等;
2、試中負責系統運維等;
3、試後回收和釋放資源等。
紅方是「攻擊」角色,靶場試驗的「反派演員」,與藍方相對,攻防演練中向藍方發起攻擊。
藍方是「防禦」角色,靶場試驗的「正派演員」,與紅方相對,攻防演練中抵禦紅方攻擊。
綠方是「檢測」角色,靶場試驗的「監視器」,監控紅藍兩方在演練中的一舉一動,具體負責:
1、監測當前紅藍方的具體行為
2、當紅藍方攻擊防守成功,研判還原成功的過程、攻擊手法、防禦方法
3、監測紅方違規操作
4、試驗或試驗片斷進行定量和定性的評估
5、分析試驗的攻防機理(比如針對新型蠕蟲分析其運行、傳播機理)
試驗開始前,「導演」黃方想定攻防試驗的具體內容和任務目標,確定參與試驗的人員安排,設計試驗的具體網路環境、應用環境和具體的攻擊步驟。
修房首先從房屋結構入手,搭建網路靶場時最基礎的事情是明確網路結構、搭建網路拓撲。白方根據黃方在任務想定環節設計的網路拓撲圖生成路由器、交換機、計算機等設備,並將設備依照拓撲圖配置和連接,生成試驗所需的網路環境結構。
除了網路結構,目標網路還要為用戶訪問瀏覽器、收發郵件等操作提供應用環境,就像房屋在入住前要裝修出卧室、廚房,給住戶就寢、做飯提供空間一樣。有了相應的應用環境,才有空間進行相關的活動。
白方在生成目標網路後,還要根據黃方的設計將靶標系統接入目標網路。靶標,即攻擊的目標。靶標系統可以是實際的設備,也可以是虛擬化技術生成的靶標系統,針對不同的任務類型,靶標的設定會有所差異。
「活」的網路,除了網路結構完整,還要有活動發生。真實的網路環境時時刻刻都不是靜止的,每一分每一秒都有人聊天、打游戲、刷短視頻……白方在目標網路生成後,通過模擬這些活動流量和行為,並將其投放到網路靶場中,讓靶場「活」起來,更加接近實際的網路環境,而不是一片實驗室虛擬出的凈土。
模擬的流量分為近景和遠景兩種。近景流量指用戶操作行為,包含攻擊方的攻擊流量、防守方的防守流量以及用戶打開瀏覽器、收發郵件等訪問應用系統的行為流量,遠景流量即與試驗本身不相關的背景流量。
流量模擬和目標網路生成共同構成網路靶場的完整虛擬環境,讓後續的演習更加真實,也部分增加了演習的難度。
准備工作完成後,紅方和藍方根據黃方的試驗設計,在白方搭建的環境中展開攻防演練。紅方發起攻擊,藍方抵禦攻擊。
試驗進行時,綠方全程監控紅藍兩方在演練中的一舉一動,根據需求全面採集數據,掌握諸如攻擊發起方、攻擊類型、攻擊步驟、是否存在違規行為等信息,並通過可視化界面實時展示檢測結果。
試驗結束後,綠方基於前期採集的數據,進一步進行評分和分析工作。
小到某次攻防行為、大到某次攻防演習,綠方在給出量化評分的同時,還要給出具體評價,給出優點亮點和尚存在的缺點不足。
結合試驗表現和試驗目的進行分析,並出具相關的分析結果。若試驗目的是研究某種新型攻擊,則分析其機理;若試驗目的是檢驗某個安防產品,則分析其安全缺陷。
綠方的一系列工作,有助於我們了解靶場中發生的所有安全事件,正確分析網路靶場的態勢,作出更准確的評估。
網路靶場有三種類型的應用模式:內打內、內打外、外打內。此外還有分布式網路靶場模式。
紅、藍雙方都在靶場內。內打內應用模式主要有CTF線下安全競賽、紅藍攻防對抗賽和科學試驗等。
CTF(Capture The Flag)即奪旗賽,其目標是從目標網路環境中獲取特定的字元串或其他內容(Flag)並且提交(Capture The Flag)。
科學試驗是指科研人員針對新型網路技術進行的測試性試驗,根據試驗結果對新技術進行反饋迭代。
內打外即紅方在靶場內,藍方在靶場外。
外打內即紅方在靶場外,藍方在靶場內,典型應用是安全產品評測。
為什麼會有這個需求呢?通常,我們要知道一個安全設備好不好用、一個安全方案是不是有效,有幾種方法:第一,請專業的滲透測試,出具滲透測試報告,但這種只能測一次的活動,叫靜態測試。可是大家清楚,即使今天測過了,明天產品、方案也可能會出現新的問題和漏洞。那麼,「靶場眾測」的場景就出來了。把實物或者虛擬化的產品/方案放到靶場,作為靶標讓白帽子盡情「攻擊」。如果把它攻垮了,我們就知道哪裡有問題了,這種開放測試,由於眾多白帽子的參與、以及不影響生產環境不會造成後果、能放開手腳「攻擊」,效果比聘請幾個專家去現場測試要好的多。如果產品一直放在靶場,就可以在長期的眾測中不斷發現問題,促進產品持續迭代提升。
分布式靶場即通過互聯多個網路靶場,實現網路靶場間的功能復用、資源共享。由於單個網路靶場的處理能力和資源都是有限的,分布式靶場可以將多個網路靶場的資源綜合利用起來,並且這種利用對於使用人員是透明的。
比如,現有一個銀行網路靶場A和一個電力網路靶場B,當前有一個試驗任務既需要銀行網路環境,又需要電力網路環境。那麼我們可以將現有的A、B兩個網路靶場互聯起來展開試驗。
分布式靶場能夠連接各行各業的網路靶場,更大程度上實現全方位綜合互聯網路逼真模擬。
網路靶場存在三個主要科學問題,這三個問題反映了網路靶場在關鍵技術上面臨的挑戰。
1)建得快
網路靶場用戶眾多,還會出現多個用戶同時使用的情況,但是大部分用戶的使用時間不長,這就需要網路靶場目標網路包括網路環境要能夠快速生成、快速擦除回收,特別是節點數量較大的應用,是一項技術上重大的挑戰。沒有過硬的網路構建能力,基礎設施以及虛擬化編排技術是很難實現的。
2)仿得真
由於網路靶場是用有限的資源仿造真實網路,大部分要素需要虛擬化,而非實物。因此如何逼真的模擬目標網路元素是一項持續的挑戰問題。網路靶場中,一台實物路由器的功能是否都在其虛擬設備上具備?如果功能缺失,是否會對靶場應用造成影響?靶標、網路環境、虛擬設備、背景流量的逼真模擬同理,網路環境模擬還需要服務於靶場具體應用場景,這些都依賴於長期的積累。
網路靶場綠方主要有以下挑戰:
1、如何針對網路靶場運行中產生的大量數據進行針對性的採集?
2、只要是採集就要有接觸(比如醫學檢驗,可能要抽血,可能要有儀器深入身體),有接觸就有影響(影響目標網路的計算資源、網路資源……),如何使影響盡量小,如何平衡這種影響和採集全面、准確性?
3、如何基於採集到的多樣、海量的數據,分析、提煉、評估出靶場綠方需要得出的信息?
這是對探針採集能力、大數據關聯能力、事件分析還原能力、安全知識圖譜能力的綜合考驗。
1、網路靶場多個試驗同時進行,必須保證試驗間互相獨立,互不幹擾。就像多個房間在射擊打靶,不能從這個房間打到另一個房間去了。
2、目標網路和分析網路必須嚴格安全隔離,即紅方和綠方、白方、黃方要安全隔離,不能紅方把綠方打癱了,也就是參加比賽的人把裁判系統攻陷了,同時試驗間的角色、系統間也需要安全隔離。
3、同時,安全隔離的同時不能影響網路靶場運行的性能。
③ 網路安全去應該去哪裡學習呢。
只要想學習哪裡學習都是有效果的。但需要結合自身的一些特點來調整學習方向,這樣學習起來會事半功倍,以下推薦3種學習線路,適用於不同的學習人群;
適用人群:有一定的代碼基礎的小夥伴
(1)基礎部分
基礎部分需要學習以下內容:
(1.1)計算機網路 :
重點學習OSI、TCP/IP模型,網路協議,網路設備工作原理等內容,其他內容快速通讀;
【推薦書籍】《網路是怎樣連接的_戶根勤》一書,簡明扼要,淺顯易懂,初學者的福音;如果覺得不夠專業,可以學習圖靈設計叢書的《HTTP權威指南》;
(1.2)Linux系統及命令 :
由於目前市面上的Web伺服器7成都是運行在Linux系統之上,如果要學習滲透Web系統,最起碼還是要對linux系統非常熟悉,常見的操作命令需要學會;
學習建議:學習常見的10%左右的命令適用於90%的工作場景,和office軟體一樣,掌握最常用的10%的功能,基本日常使用沒什麼問題,遇到不會的,再去找相關資料;常見的linux命令也就50-60個,很多小白囫圇吞棗什麼命令都學,這樣其實根本記不住。
【推薦書籍】Linux Basics for Hackers;
(1.3)Web框架 :
熟悉web框架的內容,前端HTML,JS等腳本語言了解即可,後端PHP語言重點學習,切記不要按照開發的思路去學習語言,php最低要求會讀懂代碼即可,當然會寫最好,但不是開發,但不是開發,但不是開發,重要的事情說三遍;
資料庫:
需要學習SQL語法,利用常見的資料庫MySQL學習對應的資料庫語法,也是一樣,SQL的一些些高級語法可以了解,如果沒有時間完全不學也不影響後續學習,畢竟大家不是做資料庫分析師,不需要學太深;
(2)Web安全
(2.1)Web滲透
掌握OWASP排名靠前的10餘種常見的Web漏洞的原理、利用、防禦等知識點,然後配以一定的靶場練習即可;有的小白可能會問,去哪裡找資料,建議可以直接買一本較為權威的書籍,配合一些網上的免費視頻系統學習,然後利用開源的靶場輔助練習即可;
【推薦書籍】白帽子講Web安全(阿里白帽子黑客大神道哥作品)
【推薦靶場】常見的靶場都可以上github平台搜索,推薦以下靶場DVWA、bWAPP、upload-labs-master、SQL-lib-master、WebBug、pikachu等,有些是綜合靶場,有些是專門針對某款漏洞的靶場;
(2.2)工具學習
Web滲透階段還是需要掌握一些必要的工具,工具的學習b站上的視頻比較多,挑選一些講解得不錯的視頻看看,不要一個工具看很多視頻,大多數視頻是重復的,且很浪費時間;
主要要掌握的工具和平台:burp、AWVS、Appscan、Nessus、sqlmap、nmap、shodan、fofa、代理工具ssrs、hydra、mesa、airspoof等,以上工具的練習完全可以利用上面的開源靶場去練習,足夠了;
練習差不多了,可以去SRC平台滲透真實的站點,看看是否有突破,如果涉及到需要繞過WAF的,需要針對繞WAF專門去學習,姿勢也不是特別多,系統性學習學習,然後多總結經驗,更上一層樓;
(2.2)自動化滲透
自動化滲透需要掌握一門語言,且需要熟練運用,可以是任何一門自己已經掌握得很熟悉的語言,都可以,如果沒有一門掌握很好的,那我推薦學習python,最主要原因是學起來簡單,模塊也比較多,寫一些腳本和工具非常方便;
雖說不懂自動化滲透不影響入門和就業,但是會影響職業的發展,學習python不需要掌握很多不需要的模塊,也不需要開發成千上萬行的代碼,僅利用它編寫一些工具和腳本,少則10幾行代碼,多則1-200行代碼,一般代碼量相對開發人員已經少得不能再少了,例如一個精簡的域名爬蟲代碼核心代碼就1-20行而已;
幾天時間學習一下python的語法,有代碼基礎的,最快可能一天就可以學習完python的語法,因為語言都是相通的,但是學習語言最快的就是寫代碼,別無他法;接下來可以開始嘗試寫一些常見的工具,如爬蟲、埠探測、數據包核心內容提取、內網活躍主機掃描等,此類代碼網上一搜一大把;然後再寫一些POC和EXP腳本,以靶場為練習即可;有的小夥伴可能又要問了,什麼是POC和EXP,自己網路去,養成動手的好習慣啦;
(2.3)代碼審計
此處內容要求代碼能力比較高,因此如果代碼能力較弱,可以先跳過此部分的學習,不影響滲透道路上的學習和發展。
但是如果希望在Web滲透上需要走得再遠一些,需要精通一門後台開發語言,推薦php,因為後台採用php開發的網站占據最大,當然你還精通python、asp、java等語言,那恭喜你,你已經具備很好的基礎了;
代碼審計顧名思義,審計別人網站或者系統的源代碼,通過審計源代碼或者代碼環境的方式去審計系統是否存在漏洞(屬於白盒測試范疇)
那具體要怎麼學習呢?學習的具體內容按照順序列舉如下 :
掌握php一些危險函數和安全配置;
熟悉代碼審計的流程和方法;
掌握1-2個代碼審計工具,如seay等;
掌握常見的功能審計法;(推薦審計一下AuditDemo,讓你產生自信)
常見CMS框架審計(難度大); 代碼審計有一本國外的書籍《代碼審計:企業級Web代碼安全架構》,當然有空的時候可以去翻翻,建議還是在b站上找一套系統介紹的課程去學習;github上找到AuditDemo,下載源碼,搭建在本地虛擬機,然後利用工具和審計方法,審計AuditDemo中存在的10個漏洞,難度分布符合正態分布,可以挑戰一下;
至於CMS框架審計,可以去一些CMS官方網站,下載一些歷史存在漏洞的版本去審計,框架的學習利用官方網站的使用手冊即可,如ThinkPHP3.2版本是存在一些漏洞,可以嘗試讀懂代碼;但是切記不要一上來就看代碼,因為CMS框架的代碼量比較大,如果不系統先學習框架,基本屬於看不懂狀態;學習框架後能夠具備寫簡單的POC,按照代碼審計方法結合工具一起審計框架;其實也沒沒想像中的那麼難,如果你是開發人員轉行的,恭喜你,你已經具備代碼審計的先天性優勢。
可能有人會問:「我代碼很差,不學習代碼審計行不行?」其實代碼審計不是學習網路安全的必要條件,能夠掌握最好,掌握不了也不影響後續的學習和就業,但你需要選擇一個階段,練習得更專業精通一些,如web滲透或者內網滲透,再或者是自動化滲透;
(3)內網安全
恭喜你,如果學到這里,你基本可以從事一份網路安全相關的工作,比如滲透測試、Web滲透、安全服務、安全分析等崗位;
如果想就業面更寬一些,技術競爭更強一些,需要再學習內網滲透相關知識;
內網的知識難度稍微偏大一些,這個和目前市面上的學習資料還有靶場有一定的關系;內網主要學習的內容主要有:內網信息收集、域滲透、代理和轉發技術、應用和系統提權、工具學習、免殺技術、APT等等;
可以購買《內網安全攻防:滲透測試實戰指南》,這本書寫得還不錯,國內為數不多講內網的書籍,以書籍目錄為主線,然後配合工具和靶場去練習即可;
那去哪裡可以下載到內網靶場?如果你能力夠強,電腦配置高,可以自己利用虛擬機搭建內網環境,一般需要3台以上的虛擬機;你也可以到國外找一些內網靶場使用,有一些需要收費的靶場還可以;
(4)滲透拓展
滲透拓展部分,和具體工作崗位聯系也比較緊密,盡量要求掌握,主要有日誌分析、安全加固、應急響應、等保測評等內容;其中重點掌握前三部分,這塊的資料網路上也不多,也沒有多少成型的書籍資料,可通過行業相關的技術群或者行業分享的資料去學習即可,能學到這一步,基本上已經算入門成功,學習日誌分析、安全加固、應急響應三部分的知識也相對較為容易。
適用人群:代碼能力很弱,或者根本沒有什麼代碼能力,其他基礎也相對較差的小夥伴
基礎需要打好,再學習Web滲透比如linux系統、計算機網路、一點點的Web框架、資料庫還是需要提前掌握;
像php語言、自動化滲透和代碼審計部分內容,可以放在最後,當學習完畢前面知識後,也相當入門後,再來學習語言,相對會容易一些;
【優先推薦】方法2,對於小白來說,代碼基礎通常較弱,很多很多小白會倒在前期學習語言上,所以推薦方法2的學習,先學習web滲透和工具,也比較有意思,容易保持一個高漲的學習動力和熱情,具體學習內容我就不說了,請小夥伴們參照方法1即可。
適用人群:需要體系化學習、增強實戰能力的小夥伴
具體根據自身條件來講,如果你自學能力較差,那建議選擇課程學習,網上各大平台等都有很多各式各樣的課程,是可以更快幫助你迅速入門的,然後再根據自己自身所欠缺的方面,不斷去完善和學習,最後達到你所要的優秀水平。
學習書籍推薦如下:
【基礎階段】
Linux Basics for Hackers(中文翻譯稿)
Wireshark網路分析(完整掃描版)
精通正則表達式(中文第3版)
圖解HTTP 彩色版
[密碼學介紹].楊新.中文第二版
網路是怎樣連接的_戶根勤
[PHP與MySQL程序設計(第4版)].W.Jason.Gilmore
【web滲透階段】
web安全攻防滲透測試實戰指南
白帽子講Web安全
Web安全深度
【自動化滲透階段】
Python編程快速上手-讓繁瑣工作自動化
【代碼審計階段】
代碼審計:企業級Web代碼安全架構
【內網滲透階段】
內網安全攻防:滲透測試實戰指南
社會工程防範釣魚欺詐