網絡安全,互聯網新時代的寵兒,你了解多少呢?
隨著互聯網的持續發展,網絡安全就變的格外的重要,這段時間也是有個同學在問這個問題,他想要從事這個方面的工作,但是現在不知道怎么學習,論壇上又是眾說紛紜,他也是有些懵。這里拿我自己的精力和大家談談吧。
其實 我像他一樣決定從事網絡安全這一行的時候,也是經常在各個論壇上搜索,怎么學習網絡安全?網絡安全入門學什么語言好?學網絡安全哪個方向有前途。聽到大佬說現在PC端不行了,以后移動端才是主流,然后我就去搞搞HTML+JS+JAVA。然后奮發幾個月,在此過程中發現,有時候寫出來的網頁需要使用數據庫,什么是數據庫?又去研究數據庫。又需要端口號、IP地址,還好本身是網絡專業的還能OK的解決。因為是半路出家的,接下來一系列用到的算法,數據結構,用到什么又去學什么。折騰了一圈后啥也沒學到。聽說挖洞牛✘。然后又去研究PC端。又聽見大佬說。開始學C好。又聽見大佬說,要學匯編,好嘛又去搞搞。結果什么都沒有學到。
于是靜下心來去總結了學習的這段歷程。我問我,想做安全,什么是安全呢?那些方面是安全。做安全應該具備什么樣的能力?該怎么去做。
我覺得安全就是對于數據的爭奪。安全人員想法設法的從漏洞、軟件加固、系統內核、網絡防火墻、內網安全等等上下功夫,想盡一切辦法排除修復從軟硬件帶來的邏輯缺陷,從而保護數據按照我們理想設計的路去走。而我們的對手也是想盡一切辦法來使這些數據偏離原來的軌跡,按他們的想法達到他們需要的目的。
而無論什么樣式的數據都必須要運行在計算機上。就像一個醫生如果不了解人體的結構,他怎么去治病?因此無論是做PC端安全還是做移動端安全,我們都應該去了解承載我們所保護對象的計算機是怎么動起來的。鍵盤打一個字進去是怎么從顯示器上顯示出來的?QQ微信的信息是怎么從對方達到你的手機又如何顯示出來的?一個運行的程序,它的每個部位分別存放在電腦的什么部位,通過CPU怎么指揮讓這一切的數據動起來達到我們想要實現的目的。組成計算機的最根本的東西是什么?就想組成人體是細胞。組成計算機的是電路。只有知道計算機最底層的東西后,你完全了解了這些東西為什么要這樣做,就像修路無論是泥石小路還是柏油馬路還是高速路,都只要那么寬就夠了?為什么?因為我們給汽車下了一個標準,汽車就長那么大,只要你路有那么寬就可以讓他通過。所以明白了底層的東西。你無論是挖洞還是做破解,無論他多么復雜你都能夠以它最底層的東西為依據,以不變應萬變,順藤摸瓜,解決問題。
所以對于初學者來說。學什么好?無論開始學那種語言都有好有壞。得一些的同時又失去一點。
如果你是計算機專業的學生,我認為你先把現在的課學好。等把數據庫,網絡,程序,算法都知道是什么后。再下功夫弄好模電,學扎實匯編,選擇一門高級語言精通C.C++或者JAVA,再學好高數和算法。達到這步后,再看看漏洞挖掘,逆向還是搞搞病毒,還是做移動端。你都有了很清晰的認識,那個時候你想走那個方向,都能很輕松的遷移過去,奔著專家這個層次而去,不再是去入坑了還是個弱噠噠的小白,憑借之前這些牢厚的底子能輕易的研究進去。
如果是自學,就把手中的C學到一個相當的水平后,自然相關的網絡,程序,數據庫是些什么東西你也就知道了。
我還是認為該把,匯編–模電–高數–網絡–程序–數據庫這一系列底層基礎的東西全部學到一個高度,才能在安全領域有點點修為。如果你能保證每天用五個小時都全心全意,專心致志的一點不分神的去深入了解學習這堆貨,過不了三五年你就是大神了。
當然,就像上面提到過的,如果你還是在剛剛想要從事,或者還在基礎的階段,最簡單的還是先從基礎的報錯語言開始學習,畢竟學習本身就是一個不斷成長的過程。