安全是個復雜互聯的網絡。這個包羅萬象的領域中有很多細分門類,但有些經驗是跨界適用的。物理安全很大程度上可被視為網絡安全超然元素的代表。無論數字安全還是物理安全世界,都依賴相同的基本原則。雖然可能需要不同的工具和技術才能真正理解,開鎖匠確實有些經驗是可以教給網絡安全從業者的。
1. 行為準則
開鎖匠首先要學的,就是開鎖的兩大基本原則。首先,別碰未經主人允許的鎖。這是開鎖的行規,是好奇與法律之間差異的備忘。大多數地方都有對開鎖職業的法律監管,所以道德開鎖匠必須時刻記得自己那點小愛好可能招致的殘酷后果。相同的原則適用于網絡安全從業者。都必須遵從法律行事。
第二條準則相對不那么直接易懂。別撬正在使用中的鎖。開鎖匠需要認識到,自己是在破壞手頭那把鎖的安全。挑戰設備核心本質的時候,總是帶有毀壞設備的風險。職業鎖匠會遇到需要撬在用的鎖,這條原則作為破壞安全危險的提醒而存在。
白帽黑客知道,如果非必要測試網絡安全,網絡可被破壞,文件會被侵染,公司會遭遇宕機……安全測試自帶固有風險。你在做的一切所產生的后果,必須總是正面的。
2. 興趣即能力
鎖匠總在找新方法開鎖。廠商總在推出產品修復新漏洞。最終結果就是一個動態研究的領域。鎖匠必須保持知識和技術總是處在最前沿,只要不能解析新設備,就會被時代無情拋棄,只要學不會避開鎖頭的最新方法,下一波演進會把你拋得更遠。要搏擊不斷變化的浪潮,鎖匠必須對工作興趣滿滿。
興趣是最好的老師,往往還能激發你去學習更多東西。沒有興趣,就沒有了讓鎖匠學習必要知識以保住地位的動力。電子和軟件安全飛速變化,不保證興趣,太容易被時代甩下,甚至僅僅是脫離實踐一段時間,技能也會萎縮衰退。
開鎖是門很容易過時的技術,啥都不干,你的能力就作廢了。鎖匠自己清楚,失去興趣不僅意味著落后,還意味著之前所有都蒸發了。興趣越濃厚,技術越安全。
3. 啥都能被打開
鎖就是用來開的。它也能關,但不能永遠關著。讓正確的人進入的鎖才是鎖。誰都不讓進,那必然是把壞掉的鎖。鎖匠知道這是所有安全領域的固有缺陷。鎖的意義,不在于讓所有人都進不來,而是讓正確的人能進來。你要做的,就是讓鎖為你開啟——即便在不應該開啟的時候。但是,鎖頭未必要按既定方式打開。鎖匠知道鎖頭終會被打開,沒什么東西是完全安全的。
這就是保持鎖匠不斷研磨自身的教義,但有時也會引發沮喪。你不能再因為自己做不到,或者當前還沒人能做到,就說“做不到”。網絡安全專家必須清楚,自己做的或者嘗試繞過的任何東西,從一開始就是有漏洞的。
每把鎖都有鑰匙,鑰匙工作方式能告訴你精煉繞過方式所需的所有知識。
4. 每個敵人的進攻方法都想到
開鎖方法多種多樣。你可以拆了它,把每個部件弄下來,用梳鎬、撞匙等工具。如果真的想進去,直接切了,或者用錘子砸爛都行。重點是,最復雜的方法往往不是進門的方法。作為鎖匠,就是嘗試哪種辦法能行。對付以前從未見過的鎖頭時,像新人一樣不斷測試。鎖孔里轉動無礙了嗎?那就可以開始更準確的實驗了。
太多人告訴你換位思考,但極少有人跟你說要把每一個可能進攻你系統的人都考慮到。這能防止你局限在自己的思維中。像看過YouTube視頻教程的罪犯一樣思考能擴展思路,幫助料敵機先,防范真正的威脅。有人可能就是很走運,你的部分工作就是找出他們需要多走運才能登堂入室。
作為專家,就是要能夠以專業領域內各個層次的人的思考角度出發想問題。這才是專家優勢所在。鎖匠能像每一種偷兒一樣對鎖下手,網絡安全人員也需要能夠理解黑帽子的思路想法。
5. 耐心
開鎖必須十分專注且耐心。太急躁容易導致弄壞工具,甚至直接把鎖廢了。不過,最好情況下,不耐煩僅僅是讓開鎖過程大幅延長而已。越急躁,越容易忽略某些東西。越耐心,失誤越少。
鎖頭會隱晦地透露給鎖匠一些信息,所謂的反饋。輕微的滴答聲,內部機制的運轉等等,都會出賣裝置隱藏的秘密。耐心讓你可以注意到這些微小的信號。
可以快,但不能是趕工那種快。在網絡安全上,向時間投降只會讓事情更麻煩,而這是失敗的一大誘因。時間框架不是問題,思想態度才是。越是時間緊,越不能匆忙行事。缺乏耐心的鎖匠,成功只能靠運氣。事情總會花去它該花費的時間。即便要用到六種不同方法,你也必須一種種冷靜運用。
精明管理時間,要知道:失去冷靜是全盤皆輸的捷徑。
結論
不同安全領域能相互學習的經驗很多。鎖匠看待自身道德責任的態度,對深入理解安全漏洞查找的意義也有幫助。它還能提供對自身領域固有缺陷的認知,賦予你像每一個試圖侵害系統的人一樣思考的能力,讓你能夠清醒耐心地搞定自身責任。有了這些深入了解,你就能成為更全面發展的安全專家了。