用不同的視角看待問題,安全威脅也會不同。我們在對應用系統進行安全構建時也是如此。雖然,我們有通用的漏洞列表和其他以最佳實踐形式存在的指導材料可供參考,然而,要真正保護我們的軟體,我們需要從黑客的視角對應用程式進行認真考慮,然後以安全專家的身份去解決其中的問題。
一、像黑客一樣思考
1、黑客要對我們進行攻擊的動機是什麼?他們想得到什麼?
2、黑客是否會有針對性對我們發起攻擊,還是投機取巧分子在網上胡打亂撞,碰巧發現我們的應用程式有漏洞,才會對我們發起攻擊?
3、黑客會如何對我們的應用程式發起攻擊?
4、黑客會在什麼時候對我們的應用程式發起攻擊?
舉例來說,如果我們的應用程式漏洞百出,那我們就要知道,黑客肯定是樂意怎麼省事怎麼來。這就是為什麼防止顯而易見、眾所周知的攻擊**是至關重要的。儘管有很多神秘而詭異的高階持續性威脅(apt),但如果可以通過像sql注入這樣簡單的、屢試不爽的手段就可以輕鬆搞定的事情,黑客們就不會在構建高階持續性威脅上多花時間和精力。
那麼,我們該如何來保護我們的組織呢?
二、像安全專家一樣做事
1、跑不過熊但要跑過同伴。
有乙個古老的寓言,講的是關於遇熊逃生的故事。故事講的是兩名徒步旅行者遇到了一頭熊,其中乙個人趕緊穿上跑步鞋,因為她知道,只要她跑得比同伴快,就沒必要跑得過熊。對於組織來說,如果我們的應用程式關閉了所有眾所周知的漏洞,那黑客就會將攻擊目標轉移到其他沒有做好相關防護的組織。通過這種方法,我們就沒必要比黑客還要更進一步,只要讓黑客去選擇更為容易攻擊的目標就可以了。
2、千里之堤,毀於蟻穴。
許多經典的資料洩露事件都是由於黑客僅僅注意到了防禦系統中乙個看似無害的缺陷,然後對系統進行繼續探索而最終得逞的。不要小看這樣乙個小小的缺陷,因為系統執行的每個執行緒都相互關聯,黑客順藤摸瓜很快就能得到許可權,到那時一切都悔之晚矣了。為了防止這種情況發生在我們的組織,理論上我們不應該放過任何乙個發現的系統缺陷,找到該缺陷的根源所在,徹底將其解決。
以對進入一棟大樓的入口點進行檢查的家庭安防公司為例,其中某個入口點可能比較薄弱,但如果該入口點只是通向乙個死胡同,那我們還算安全;但如果該入口點可以通向某個貴重物品的存放處,或者可以通向另乙個形同虛設的入口,那我們就有麻煩了。
3、要對我們的系統要瞭如指掌。
知道我們的系統有哪些弱點固然重要,但對這些弱點進行評估,知道如果系統被攻陷後會造成什麼樣的資訊洩露會更重要。要做到這一點,關鍵是要做一些面向業務的思維,理解有人進行資料竊取的動機是什麼。知道這一點,有助於我們思考來自內部的威脅,而我們的防禦系統往往卻是著重於由外而內的思維。
使用威脅建模來理解攻擊的路徑、成功阻擊每次攻擊的價值以及每個路徑的預期收益。首先應關閉那些輕而易舉就能獲取高額回報的攻擊路徑,再去利用最小阻力的概念。因為我們不一定有足夠的時間和預算來對系統的所有漏洞和潛在威脅進行阻擊和防範,所以要多從人性的角度進行分析,減少攻擊發生的可能性。
黑客天生就有創造性,所以我們要心情發揮我們的想象力。例如,黑客總是會想方設法以他們從來沒有用過的方式來對利用一切可以利用的東西。這是個邏輯的概念,如果開發人員從未考慮過這樣的途徑,那他開發出來的程式就不能提供必要的保護。這種思維方式需要經過訓練。對於開發人員來講要做到這一點尤為困難,因為他們對自己開發的功能也如指掌,能想到的早就想到了,要讓他們想方設法去利用自己開發的程式已經想不出什麼花樣來了。
結語乙個好的安全專家明白,有效防禦來自對攻擊的理解。像黑客一樣思考,擁有和組織業務相結合的知識,有助於我們更好的理解為什麼會被黑客盯上,以及我們的組織會遭遇怎樣的攻擊。這些見解對於彌補黑客可能會利用的漏洞和攻擊路徑是必不可少的。通過假定的攻擊者視角,可以將這些知識轉為自己的優勢。一旦我們從黑客的角度來看來審視我們的組織,我們就能像安全專家一樣對我們的組織進行防衛。
像外行一樣思考,像專家一樣實踐
像外行一樣思考,像專家一樣實踐,不只是說說而已。題記 看了試讀的章節有些日子,看完了試讀部分,其中一部分是能和我共鳴,還有一部分觀點,自己也比較贊成,但貌似又有些抽象。我想,書不單是用來讀的,讀一本好書,就像吃肉一樣,吸收書中的營養,把營養轉換為自己的血液,直到骨髓中,成為生命中的一部分。像外行一樣...
《像外行一樣思考,像專家一樣實踐》
這本書是在看 暗時間 時收集到的,書的副標題是科研成功之道,自己是個資訊工作者,也號稱科研工作者,雖然經常忙著一些雜活,沒有時間認真思考和做實驗。但從中找點立項 研究 演講 總結的經驗也是有益的。這本書的目錄比較有特點,竟然佔了12頁,基本上看了目錄也能了解了書的主要思想和內容。專家由於他受固有思想...
《像外行一樣思考,像專家一樣實踐》說了些什麼
從現狀出發,一步一步循序漸進地進行邏輯推理,最終得出結論。像這樣的思維方式就很難實現飛躍。要想成功的話就直接從結論起步去做,也就是說從希望的結果開始是非常必要的。我們在學習一樣東西的時候,有時候恰恰是不能按部就班,而應該先明確自己想要達到乙個什麼樣的水平,做出怎樣的東西來。然後朝著這個方向去努力。比...