零基础入门网络渗透到底要怎么学?
前言:
很多朋友問我,想搞網絡安全,編程重要嗎,選什么語言呢?
國內其實正經開設網絡安全專業的學校很少,大部分同學是來自計算機科學、網絡工程、軟件工程專業的,甚至很多非計算機專業自學的。因此不像這三個專業,有系統的課程體系,大一教什么,大二教什么,大三又教什么,那么清晰明白,網絡安全這條路很多都是自學摸索。
我從大二開始入坑網絡安全,至今也有十個年頭了,也見過許許多多自學成才的例子,工作這些年,先后學習過C、C++、Java、Python、Objective-C、JavaScript、TypeScript,現在回過頭來,有一些自己的思考。
很多培訓班,一上來就給你講一堆各種攻擊手法、各種工具使用,很多人搞得一頭霧水,為什么要學這些,這些背后的原理是什么全都不知道。
我主張學習網絡安全可以像做軟件開發中的“敏捷開發”,先從一個最小的核心開始,逐步迭代,已臻完善。
這個最小的核心是什么呢?
如果你是偏向于搞網絡滲透的方向,這個最小核心就是:
HTTP + Web + 漏洞掃描工具
先把HTTP協議的工作機制掌握了,然后學習Web技術,包括前后端如何協同工作,瀏覽器如何工作,服務器又是如何處理一個HTTP請求,一個網站是如何搭建起來的等等。接著再學習使用一些Web漏洞掃描工具,學習網站漏洞的概念,開始有“安全”這個意識。
圍繞Web相關的知識掌握的差不多了,然后可以開始迭代起來了:
- 1、有了上面這些基本知識,可以開始學習各種花式的Web漏洞攻擊,什么XSS、CSRF、SQL注入、SSRF等等。
- 2、學習漏洞原理的過程中,開始熟悉一些Web服務器的工作機制,日志技術,容器技術這些知識,以及背后的操作系統Linux/Windows的基礎知識。
- 3、對Web安全有了一些基礎,開始把眼光從Web放寬到更廣闊的網絡安全,這個時候,就需要進一步學習HTTP背后的TCP/IP網絡協議族。這時你將會陸續接觸到什么是TCP劫持、DNS劫持、ARP欺騙、TCPSYN洪水攻擊等等。
- 4、對網絡攻擊的手法了解到這個階段,現有的工具可能就滿足不了你的需要,你需要定制一些爬蟲、掃描、漏洞POC或其他工具了,是時候來學習一些工具編寫了,你可以開始學習Python編程,門檻最低,實用性最強。
- 5、安全玩到后面,都是在玩漏洞。而學到后面,越來越多時間開始接觸到操作系統層面的漏洞,這個時候你就要開始學習一些C語言,通過C知道代碼程序底層的執行原理,拓展自己在操作系統層面的知識深度。
- 6、有了上面這些技術的打底,你的眼界將會被打開,但隨之而來,你會發現自己要學的還有很多,但至少到這個時候,你不再像一開始那么迷茫,而是知道自己接下來該去補充哪些東西。
學習路線圖
總結:
回答一開始那個問題,對于網絡滲透方向,編程不是一開始就要做的事,也不如程序員拿它吃飯那么重要,但即便如此,你還是得學一點,Python最佳推薦,C也需要學一些,至于C++嘛,了解即可,不做強求。
【系統學習資料&工具分享】
總結
以上是生活随笔為你收集整理的零基础入门网络渗透到底要怎么学?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: C++设计原则——开闭原则(持续更新中)
- 下一篇: PHP Fatal error: Unc