信息安全工程師有全棧一說嗎?
信息安全工程師沒有全棧一說,因為信息安全工程師默認就需要是全棧的。每個人都在往全棧的方向上走,只是走的階段不同,最終能到達的地方不同而已。
比如你去做安全服務工程師,而「安全服務」這四個字背後可能是任何操作系統,任何網路環境,任何異常問題。比如你去做漏洞研究,而「漏洞研究」這四個字背後可能是各種不同協議,不同格式,不同系統,不同指令集。所以這不是學一點東西就能吃一輩子的行業。
具體到提問中所說的「真的有人熟知滲透測試,還能對軟體/APP逆向分析,而且能夠挖掘內核級別的0Day嗎」,只是這三樣的話,能做的人還挺多的。有的,不僅如此
這些人還會治婦科病、割包皮、修鐵路、研究生物、焊電焊、修房子
首先先回答:有,你說的呢兩條基本算是搞安全開發的基礎了,要不然寫個防火牆只能過濾流量或者本地程序豈不是很尷尬…
學習的話…要是你單做逆向或者web就要深入了解你選的方向,做安全開發的要求兩方面都懂,但是知道什麼原因造成的一般就夠了,不需要詳細研究利用方式
其次實名懟呢位…匿名用戶…
不提1 day漏洞,用這個刷rank不算是高明,但是手上有0 day可是技術資本啊,就好像你說我打架用槍不公平,但是這槍是我自己造的
說社工是最低等的,你知道企業最大的漏洞不是程序,是人,就算是全局都使用最先進的保護技術,一個惡意的U盤和一次不加審查的點擊都可能毀了這一切
提到安全檢測,web我不知道,但是逆向里沒有大量的編程經驗,不能了解每一行彙編造成的影響,不能對操作系統內部的原理十分了解,告訴有漏洞都不知道在哪
最後裝個逼,我也算是個半殘的全棧(聽說知乎裝逼會被打?),至少c,java,php,asm開發還算6,逆向還算是過得去,web還是會一點姿勢,演算法還是了解點皮毛的
當然絕大部分時間都在研究些黑科技……全能牛大神不是沒有,但是非常稀有。對大部分普通人來說(每天需要睡覺,智商低於180的),全棧安全工程師發展方向基本是一專多能,在你最擅長的領域深入研究,在和擅長領域相關的其他方面能達到高於平均水準,在其他方向達到平均水準。
另外真的有人可以滲透,挖內核0day,用8種語言寫工具和大型項目,分析大數據,硬體開發(FPGA之類的), 逆向Linux, Win, Android和iOS App等樣樣精通……這人是我師傅,一個60多歲的老頭,20多歲的時候做過unix碼農和系統管理員,後來去DEC做開發,之後幾十年先後在銀行,UUNet, Mitre, USCERT, AOL和NSA做過安全工程師和分析師,寫過RFC和一些路由策略的演算法,可以說今天的互聯網有他的一部分貢獻。上面的那些技能都是他在幾十年的工作中學會的。據他自己說,基礎打好後這些都是觸類旁通。
學滲透測試的時候,書上說你不但要熟悉各種工具的用法,熟練網路每一層的原理,各種協議的規則,看得懂人家軟體的源碼,懂得反編譯,寫得出各種腳本工具,你甚至還要會社會工程學,心理素質過硬,沉著冷靜,當得了快遞員,修理工,能模仿隔壁經理,偽裝得了老闆,豈止是個全棧,簡直是個特工!越走到最後,越難做全棧。做到頂尖都是要付出很多心血。
滲透、漏洞挖掘做的好的人,思路是你完全想像不到的大膽、細心和詭異。
安全問題可以分為前後端類型,但安全工程師必須都是全棧,但全棧安全工程師聽起來怪怪的,我還是喜歡叫網路安全工程師。首先,你得知道什麼是工程,然後才能對信息安全工程有一個大致的概念。
總的來說,工程是創造性的、科學性的勞動過程。從這個意義上,用個腳本爆破表單撞庫算不上什麼工程;利用剛公布的1DAY或者黑市上未公開的0DAY進行惡意攻擊拿shell做黑產業也算不上什麼工程;而以詭詐和欺騙為基礎的所謂社會工程學更算不上是什麼工程。
我理解中的真正意義上的信息安全工程師或者說Hacker,其實是對安全有著炙熱情感及敏銳天賦的人,而不是籍此牟名牟利的人。他們更注重的應該是從0到1的過程,而不是從1到2的過程;是從crash到poc的過程,而不是從shell到privilege的過程。
所以,漏洞挖掘、協議分析、逆向解密這些才是信息安全最有魅力和藝術感的地方;而滲透測試、安全檢測這些其實只是熟練工的雕蟲小技;至於像入侵提權、社會工程這種則完全是信息安全領域最黑暗及骯髒角落裡的末流與糟粕。
俗話說「取法於上,僅得為中,取法於中,故為其下」,希望題主能志存高遠,早有所成。個人看法,不要盲目迷信全能大神。
基礎理論紮實(密碼學、網路層、操作系統、資料庫等),一精多能,不斷學習新技術即能永遠保持高競爭力!萬變不離其宗,無論新技術變化得多好看,都離不開底層的支持,未來信息安全行業隨著信息化工程建設的進一步深入發展,也一定會跟其他行業一樣分工更為明確,找好一個領域積累鑽研達到常人無法到達的高度,會比一般的全能型的更吃香。
用十種語言輸出Hello world。。。。(?ω?)hiahiahia
業內這樣的人也不少啊 ,兩個栗子~首先看看兩本作者python灰帽子,python黑帽子,按照安全領域來分的話第一本專註web,網路方面。第二本就是專註與二進位了,調試器,fuzz等,所以這種人還是有的。另外一個栗子,今年參加的全國信息安全大賽遇見了浙大的一個牛人,phrack汪神,一個人單刷ctf比賽還是前五。所以~~
我也很好奇這個問題,不過我想可能是全部都會,一門專精。
不僅如此,還會造炸彈,自製複合弓,彈鋼琴,彈吉他,滑旱冰,穿女裝什麼的。。。全能型黑客大有人在的,而真正能做到頂端的,要考慮時間的維度,並且以秒為計算單位,比如這一秒的技術領先全球,下一秒立刻無任何卵用。黑客也是一樣,尤其像信息安全這樣基本上代表人類文明更新周期最快的方向,在這個世界上,沒有人能永遠把持最尖端的技術超過3秒。
信息爆炸時代,安全技術更是爆炸中的爆炸,未來全能型人才可以說沒有也可以說有,沒有是因為人類的精力畢竟有限,只要癌症和衰老一天沒攻破人類的道德體系就不會被破壞,也因此人類是存在著天花板的。有是因為人類可以藉助其他生命。
那就是人工智慧,雖然這一出現究竟是福音還是災難目前暫時無法定理論,不過腳本小子的活兒基本都可以交給人工智慧來做,未來的黑客需要想的問題其實更加簡單,那就是定一個target,其他全部交給人工智慧,不過這一target需要考慮的問題太多,大到宇宙文明的進程小到平行世界的改變,所以人能決定的事情,真的是越來越少了。
順其自然吧。
有,基本沒人能做到全部精通。就比如說這世界上有外星人嗎,我說有,只不過沒人見過。全站測試和全棧開發其實有點偽命題的嫌疑,當然這種說法肯定有,而且是多數從業者們奮鬥的目標。
不過因為現在滲透測試門類較多,且漏洞精細繁雜,實際情況是即使你一天24小時都在有效學習(實際能達到一天12小時都很困難),也有可能有漏掉的技能樹。你看看知道創宇的研發技能表,可以簡單感受下。
個人還是建議一專多能比較務實。當然,可以把「全棧」制訂為大目標。
當然,我相信總會有近乎達到全站標準的滲透測試大神,不過那實在是太少了。
你自己去看CISSP的考試。
十個知識領域,現在合併成八個了,我下面是從IS 2的官方拷下來的,你感受一下:
CISSP? (ISC)2? CBK? 知識域涵蓋信息安全專業人士普遍關注的各種信息安全關鍵性議題,並每年更新一次,以反映全球最新的最佳實踐。同時建立了一個信息安全概念和原理的通用框架,以供探討、辯論、解決業內難題。
CISSP CBK包含以下八大知識域:(2015年4月15日起實施)
1)安全與風險管理
關鍵知識域:
A. 理解並應用保密性、完整性和可用性的概念、應用安全治理原則
B. 合規、理解與信息安全有關的法律和法規問題
C. 理解專業人員道德品質
D. 開發並實施文件化的安全策略、標準、規程和指南
E. 理解業務連續性要求
F. 個人安全策略
G. 理解並應用威脅建模
H. 建立並管理信息安全教育、意識和培訓
2)資產安全
關鍵知識域:
A. 信息及支持性資產的分級(例如敏感性和關鍵性)
B. 確定並維持資產責任人(例如數據責任人、系統責任人、業務/使命責任人)
C. 隱私保護
D. 確保適當的保存
E. 確定數據安全控制(例如存儲的數據、傳輸的數據)
F. 建立處置要求(例如敏感信息的標記、存儲、分發)
3)安全工程
關鍵知識域:
A. 使用安全設計原則的工程過程的實施和管理
B. 理解安全模型的基礎概念、基於系統安全評價模型選擇控制和對策
C. 理解信息系統的安全能力(例如存儲保護、虛擬化、可信平台模塊、界面、容錯)
D. 評估並減緩安全架構、設計和解決元素的脆弱性、評估並減緩基於Web(例如XML、OWASP)的脆弱性
E. 評估並減緩移動系統的脆弱性、評估並減緩嵌入設備和網路物理系統(例如物聯網)的脆弱性
F. 應用密碼
G. 在場所和設施的設計中應用安全原則、設計並實施物理安全
4)通信與網路安全
關鍵知識域:
A. 在網路架構(例如IP和非IP協議)中應用安全設計原則
B. 安全網路組件
C. 設計並建立安全通信渠道
D. 防護或減緩網路攻擊
5)身份與訪問管理
關鍵知識域:
A. 資產的物理和邏輯訪問控制
B. 人員和設備的身份和鑒證管理
C. 作為一項服務整合身份(例如雲身份)
D. 整合第三方身份服務
E. 實施並管理授權機制
F. 防護或減緩訪問控制攻擊
G. 管理身份和訪問配置生命周期
6)安全評估與測試
關鍵知識域:
A. 設計並驗證評估和測試戰略
B. 管理安全控制測試
C. 收集安全過程數據(例如管理和運行控制)
D. 分析並報告測試輸出(例如自動化手段、手工手段)
E. 實施內部和第三方審核
7)安全運營
關鍵知識域:
A. 理解並支持調查、理解調查類型的要求
B. 理解並應用基礎的安全運營的概念、實施日誌和監視活動
C. 資源配置安全、使用資源保護技術
D. 實施事件管理、運行並保持預防措施
E. 實施並支持補丁和脆弱性管理
F. 參與並理解變更管理過程(例如版本控制、基線、安全影響分析)
G. 實施恢復戰略、實施災難恢復過程、測試災難恢復計劃、參與業務連續性計劃和演練
H. 實施並管理物理安全、參與解決個人安全問題
8)軟體開發安全
關鍵知識域:
A. 在軟體開發生命周期中應用安全
B. 在開發環境中加強安全控制
C. 評估軟體安全的有效性
D. 評估獲取軟體的安全影響還不能偏科。
全棧工程師我感覺是個偽命題,比如說你精通python 做web,如果一點前端不會,一點資料庫不會或是搭不起伺服器來,也有點不像話,但你說精通伺服器,資料庫,這就有點扯了。 全棧工程師不過是某些環境下無奈的做法。至於信息安全全棧工程師,也同樣,精通一門,其他只能說能做,能幹,輔助精通的那一門完成工作。隨便有點實踐經驗的就完爆除了第一的答案。
答案是,是,一定是全部都要能深入看懂其他的代碼,不然你不明白別人代碼的邏輯,怎麼改呢。我想從道的層面說這個事情。
你一定要自己實踐,剛開始誰會解決全部遇見的問題,那他肯定是吹牛,而且牛逼吹大發了。都是千萬條入侵方式中的一條開始入門,那些鄙視測試的,別聽他們的,那是些裝逼的,別理會。但是,注意這個但是,你如果做這件事沒有亢奮的快感,你註定難以成為全棧工程師這種人。
問自己,你第一次做成的一個小的成品,看它實現自己想要的功能,亢奮的隔三四個月,大半年,一年,七八年以後想起,還是爽,那你就是熱愛這一門的人,我不需要鼓勵你去追求,因為過程雖然苦,但成果很爽,你愛,所以你多年後依舊在。
不要去管別人怎麼吹牛逼,高端的一定要所有都懂,但小白,只要做一件事,做一個可以實現功能的成品,不管它多小,多幼稚,只要是是獨自一個人查資料,敲代碼,測試不對找問題,讓你崩潰,崩潰了再回想細節哪裡出錯,改改改,直至完成。搞定以後,運行功能,功能一一實現,看自己多暢快,多爽,這就是成為全棧安全工程師的第一步。
沒有,因為大部分滲透是從前端做進後台最後一鍋端的
推薦閱讀:
※一名黑客會經歷哪些階段?
※黑客使用Python能做些什麼?
※為什麼heap spary要用0x0C0C0C0C這個奇怪的數字?
※中國黑客和美國黑客哪個更厲害?