資安入門-你還需要知道的兩三事 Part 2
多虧於廣大社群的力量讓我初次嘗試的第一篇系列文「資安入門-從入門到放棄」有了爆炸性流量的成長,在此先致上謝意並承蒙各位厚愛,後續會再推出不含硬底子技術的「資安入門」系列文給小白們參考,還請大家多多支持。
要知道什麼事?
前篇我們提到了一些心態或是動機的問題,這邊我們會來提到一些如果你非本科、不懂技術、有電腦問會先 google、會修電腦(?)…等常見狀況,那你應該要先懂得一些基本專有(技術)名詞或概念,都可以參考本篇。
要懂什麼?
首先我們已經提過,成為資安OX師之前你必須要懂得兩大基礎分別是「系統」和「網路」,那麼需要先搞懂的第一個關鍵字是OSI(七層)模型,細節在這邊不提,請你開始認真做一位 google 工程師-專門 google 的工程師
所謂的七層包含以下:
第1層 實體層(Physical Layer)
第2層 資料連結層(Data Link Layer)
第3層 網路層(Network Layer)
第4層 傳輸層(Transport Layer)
第5層 會議層(Session Layer)
第6層 表達層(Presentation Layer)
第7層 應用層(Application Layer)
從上面可以知道你每天在用的Line可以算在第幾層?
好的,在我們有答案之後可以發現一個問題,網路基礎似乎不像1+1這麼簡單甚至還有些複雜,但我們每天在使用的網路都是基於這個最基本的結構去達到資料交換的目的。
不過沒關係,這不是我們這邊要討論的重點,你只需要知道的是,想成為 IT 人員的第一課就在這了(想後悔還來得及喔~),這是 IT人員的共通語言,這適用你在104上看到的網路、網管、MIS 工程師…所需要具備的「常識」(注意,是常識),為了避免麻瓜誤闖9又3/4月台總是會有點防呆對吧~
好的,最基本的學理跟方向(關鍵字)應該都有了,也許你不是本科學校也沒教過,那再來要講的是可以實作的部份,如果沒有一些學理的基礎也沒關係,身為 google 工程師沒有不會的事情對吧~這邊就簡單以軟體和硬體做個粗淺的分類,方便完全沒概念的小白有方向可以參考。
硬體
所謂硬體,除了大家一般認知「好人修電腦」的電腦外,在公司行號,不論大小通常都會有系統與機房(設備),就算公司小到養不起 IT 人員專門維運也會把這些事情外包出去,因此我們在這邊可以先定義:每間公司都會有自己的硬體設備,這些設備最基本可能包含:PC、NB、行動裝置、網路設備(Switch, Router, Firewall, Mail Server, etc…)等等。
那像大型企業的架構更複雜,有的設備當然就更多(更貴),舉例來說,Load Balancer, WAF, IPS/IDS…等,平均建置費用大概也是需要百萬起跳(視公司規模),而這些東西還只是網路設備的範圍而已,更不用說機房裡面的一些企業級主機(例如 Dell 刀鋒系列)和其他機架設備,然後你家某個空房拿來當機房和專業認證過的機房需求設備和成本也不一樣,這些都是你在成為資安OX師之前大概要了解的範圍,因為在你完全沒概念之前是很難跟每個專業 IT 人員溝通的,外加,光是上面提到的系統、機房、MIS就已經是最基本的三個專業角色了。
一個小學生(你)去跟數學老師(IT 人員)說你微積分教錯了,你覺得…?
所以,對一個新手小白來說,首先你需要熟悉的硬體,不外乎是一些比較常見的東西,例如…
防火牆設備有哪幾家大廠在做,這幾家產品有什麼差別?
什麼等級的防火牆適合什麼規模的企業?為什麼?
什麼狀況下應該要採用哪個廠牌的設備?為什麼?
如果預算有限,家用路由器(Router)可不可以作為替代方案?
下略 N 種問題…
軟體
所謂軟體,很明顯的就是包含你日常使用的各種應用程式(App.),不管是 Windows 到你手機(行動裝置)上的 Tinder 都在這個範圍,重點是你需要熟悉各種企業端常用的 App. ,舉凡從從最基本的 Outlook 到 MDM 用的 intune 在到 Apex One 的 DLP 模組…等等,這些專有名詞等同於 IT 領域的行話,原則上不會有人特別去跟你解釋(大概等於你不會背 A~Z 的概念)。
對於你來說,除了這些關鍵字之外,當然還需要學著怎麼操作這些軟體,首先你要先在你的電腦上架台 VM ,現行比較主流的軟體應該是 Oracle VM VirtualBox 或 VMware Workstation ,裝完軟體後架好 VM,看你偏好 Windows 或 Linux 都行,挑幾個你有興趣的產品把手弄髒(get your hands dirty)吧~
開發
前面講了很多在企業端日常維運的基本概念,但到目前為止我們都還沒講到資安的東西,接下來這個段落大概是大部份 IT 人員的夢魘(雖然我也曾經身為開發的一員,現在可以很明顯地知道為什麼我會在這邊講資安了吧…),但身為資安人員卻是不能不知道的事情。
在硬體的段落我們已經先定義了每間公司都會有自己的硬體設備,有了設備之後理所當然的會有自己(或是採購)的系統,那你身為一個專業的資安人員要如何驗證軟體本身安全或是沒有發現已知的漏洞?因此所謂的黑/白/灰箱檢測的方式就出現了,不過由於每個檢測方式都有不同的標準及定義,無法三言兩語直接帶過,這邊先就小白需要理解的基礎解釋。
對於一般沒有開發經驗的 IT 人員來說,最簡單的驗證方式就是使用工具,這些工具不外乎是針對白箱(源碼或稱 Source code)和黑箱(滲透測試),用白話翻譯就是像黑白名單的概念,例如:
小白今天可以吃飯,(有講的你才可以做)所以只可以吃飯
小白今天不可以吃飯,(沒講的你都可以做)所以除了吃飯你都可以做
小白們還好嗎…?
簡單來說,白箱代表的是:我給你 Source code,你幫我測試這個範圍;黑箱代表的是:除了不能XXX(自行帶入)外隨便你自己想辦法找到我的問題。
回到工具的部份,即便你身為一位專業的 IT 人員有了工具,拿著檢測報告,吃著火鍋唱著歌,興高采烈的拿給開發人員說麻煩這些問題修正一下再給我複測,大概有87%的機會被工程師回覆「我看不懂」、「你教我怎麼修」「你不是資安人員嗎?」「我覺得沒問題啊」、「這會影響服務」、「這是工具誤判啦~」…下略萬字。
因此,身為專業的資安人員,略懂程式語言其實應該也是必備技能,但如同前篇文章提到,技術的東西每天都在更新,尤其資安橫跨各領域的狀況下,學習速度就算再怎麼快也很難追上,這部份就牽涉到跨入資安領域的時候技能樹應該要怎麼點的問題,這邊必須要先強調,亂點技能樹(像我)是不會怎麼樣,雖然可以肯定的是你廣度夠,但遇到技術專精的工程師或是客戶,你可能被壓在地上磨擦。
如果要問到目前我的經驗(真的只是個人意見,不代表任何立場,如有雷同純屬巧合),專業的資安人員需要具備工作所需的基本技術知識,否則只討論合規面跟標準規範去執行工作的資安人員來說,技術專業人員會認為你無法有同理心,而且不能給出具體建議與討論。
講到合規跟規範的部份,正所謂上樑不正下樑歪,務必先有正確的觀念才有機會成為一位專業的稽核,如果有興趣往資安稽核或電腦審計的小白們可以先參考強者我朋友寫的這篇:
在這邊先預告下期會介紹簡單的職能角色分工(A.K.A 技能樹點法)。
看完這些辛(薪)酸血淚,現在你還會想要成為資安人員嗎…?