(本文1262字,閱讀時間3分鐘)
雖然很多漏洞出現(xiàn)了十幾年,甚至幾十年法焰,但并不會因為漏洞的歷史悠久,會在程序員的記憶基因中刻下永恒的記憶倔毙。恰恰相反埃仪,大部分程序員及每年新進程序員對安全的原理,攻擊陕赃,防御都是一窮二白卵蛉,而且缺乏意識去學習安全技能颁股,他們重復編寫著可被黑灰產利用的代碼漏洞,導致信息安全毙玻、網站可用性豌蟋、欺詐等時常發(fā)生廊散。
學習Web安全相關的技術及原理桑滩,主要是工作需要及個人興趣愛好,把它寫下來允睹,是希望用最簡潔运准,最容易理解的文字,給有需要的同學缭受,當然最重要的是通過寫的方式倒逼自己重新總結和提煉胁澳,促進自己更加深刻地重新理解。
個人安全觀的啟蒙來自吳翰清米者,江湖人稱“道哥”寫的《白帽子講Web安全》韭畸,也非常幸運邀請道哥做過分享,能有機會當面交流蔓搞。關于未來我的安全篇中的內容以《白帽子講web安全》的讀后感為主胰丁,同時有一些延續(xù)的思考和學習,畢竟讀透一本書喂分,運用書中的思想融會貫通地運用在系統(tǒng)設計上锦庸,才算是真正掌握,我還需要繼續(xù)努力蒲祈。當然對安全感興趣的話甘萧,買本《白帽子講Web安全》仔細品讀也是個不錯的選擇。
互聯(lián)網誕生時是安全的梆掸,但是隨著研究安全的人多起來后扬卷,也就變得不安全了,隨后因為工作需要出現(xiàn)了白帽子和黑帽子酸钦,黑帽子想著破壞和攻擊怪得,白帽子想著防御,攻防之戰(zhàn)從未停止過钝鸽,意味著當下或者未來汇恤,我們所處的網絡環(huán)境只能是相對安全,不是絕對安全的拔恰,這就要求我們做安全方案設計時候因谎,需要掌握3個核心設計理念:
1.避免刻舟求劍
微軟在推出vista操作系統(tǒng)時,曾信誓旦旦地保證這是有史以來最安全的操作系統(tǒng)颜懊,但是在2008年的pwd2own(每年一度可以攻擊任何操作系統(tǒng)的一次盛會)的安全競賽上被黑客給攻擊成功了财岔,這說明了一個以不變的防御方案對抗不斷發(fā)展的攻擊技術风皿,容易犯刻舟求劍的錯誤,從微觀上講匠璧,某一時期可能某一方占了上風桐款,從宏觀上講,某一時期的防御和攻擊方案不可能永遠長期有效下去夷恍,防御和攻擊是一個互相促進的辯證關系魔眨。
2.認清安全問題的本質
高等級的信任域流向低等級的信任域是不需要做安全檢查的(比如離開機場不需要安檢),從低等級的信任域流向高等級的信任域是需要通過信任邊界的安全檢查的酿雪,一切安全的方案設計的基礎遏暴,都是建立在信任的關系之上的,我們必須相信一些東西指黎,必須有一些最基本的假設朋凉,安全方案才可以建立,否則安全方案就像無源之水醋安,無根之木杂彭,無法設計。比如:把文件放在抽屜里安全的前提是鎖匠不會私藏鑰匙吓揪、木匠不留抽屜后門亲怠。所以把握住信任條件的度,使其恰到好處磺芭,正式設計安全方案的難點所在赁炎,也是安全這門學問的藝術所在。
3.把握安全的三要素
機密性:要求保護的內容不能被泄露钾腺,eg.文件放在透明盒子里徙垫,可能拿不到盒子中的文件,但是從外部可以看到文件的內容放棒,如果此時加個封面姻报,就可以避免;
完整性:要求保護的內容不能被篡改间螟,eg.康熙的遺詔“傳位十四子”的傳說吴旋;
可用性:要求保護的資源是隨需而得,eg.不能因為dos攻擊導致服務不可用厢破;
避免刻舟求劍荣瑟、明確系統(tǒng)信任邊界、把握安全三要素是我們在做安全架構設計時需要非常關注的摩泪,遵循這些設計理念后笆焰,在去運用好安全設計原則,提高系統(tǒng)的安全水位见坑,是我們追求的目標嚷掠。下一篇在來總結下安全設計原則捏检。