說明:
web
本文部份內容摘自吳翰清先生的《白帽子講web安全》,整理成筆記以供未來溫習算法
web安全史安全
Hacker:最初是稱那些研究計算機系統和網絡的人,如今「***」一詞已經成爲破壞的代名詞,在央視《新聞調查》欄目層播出一期紀錄片《我是***》,採訪中普羅大衆對於***的認識仍是帶有偏見的。
網絡
單講「***」二字,就是習武之人!ide
提防「腳本小子」,在網絡犯罪中形成主要破壞的就是這些人,他們懂計算機但不深,能熟練使用工具,但單獨尋找漏洞並編寫exploit能力較弱。工具
中國***簡史:web安全
做者將中國***發展分爲三個階段性能
啓蒙時代
加密
20世紀90年代,熱愛技術的青年出於好奇和求知慾走上***這條路,沒有任何利益瓜葛,純粹愛好;
設計
黃金時代
中美***大戰,一戰成名,***文化和***技術吸引無數青少年加入其中,各類***組織和論壇層出不窮;
黑暗時代
***精神:Open、Free、Share消亡,黑產陰雲密佈,***功利性愈來愈強,破壞力愈來愈強;
黑帽子/白帽子
白帽子
精通安全技術,工做在反***領域的專家;
黑帽子
利用***技術進行破壞,甚至進行網絡飯犯罪的羣體;
返樸歸真,安全的本質
安全的本質就是信任的問題
一切的安全設計的基礎,都是創建在信任的關係上的。咱們必須相信一些東西,必須有一些最基本的假設,安全方案才能得以創建;
安全是一個持續的過程
***和防護在不斷的對抗和碰撞中獲得發展,二者是相互促進的辯證關係。任何一勞永逸的想法都是不現實的並且是很危險的;
安全三要素
機密性
保護數據內容不能泄露,加密是實現機密性的常見手段;
完整性
保護數據內容是完整的、沒有篡改的,常見的保持一致性的技術手段就是數字簽名;
可用性
要求保護資源「隨取而得」
以上三點是安全領域中最基本的部分,此外還有注入可審計性、不可抵賴性等。
如何實施安全評估
分四個階段
資產等級劃分---->威脅分析---->風險分析---->確認解決方案
資產等級劃分:明確目標是什麼,要保護什麼
互聯網安全的核心問題,是數據安全的問題
而後劃分信任區域和信任邊界
威脅分析:把全部的威脅都找出來。能夠採用頭腦風暴法,也可使用模型法,幫助咱們發現哪些方面可能訊在威脅
咱們把可能形成危害的來源稱爲威脅;
STRIDE模型是由微軟提出的,內容以下
風險分析:
可能出現的損失稱爲風險,風險必定是和損失關聯在一塊兒的;
Risk = Probability * Damage Potential
如何更科學的衡量風險,有一個DREAD模型,也是微軟提出的
注意:
威脅和風險是有區別的,風險必定是和損失關聯在一塊兒的,千萬不要張冠李戴
設計安全方案:
由前面三個階段的結果得出的具備針對性的解決方案,完成一個優質的解決方案,考驗着安全工程師的水平;
一個優秀的安全方案應該具有如下特色:
針對性,可以有效解決問題
用戶體驗好
高性能
低耦合
易於擴展和升級
設計安全方案的技巧
Secure By Default原則:
即默認安全原則,能夠理解爲一白名單、黑名單思想,二最小權限原則;
白名單思想,默認拒絕策略,將容許的流量放入白名單;
黑名單思想,默認容許策略,將拒絕的流量放入黑名單;
最小權限原則,即只授予系統主題必要的權限,而不過渡受權;
縱深防護原則:
從不一樣層面、不一樣方面實施安全方案,避免出現漏洞;
牢記木桶理論
在正確的地方作正確的事情,即在解決根本性問題的地方實施針對性的安全方案;
數據和代碼分離原則:
普遍應用於「注入」而引起安全問題的場景;
程序在棧或堆中,將用戶數據看成代碼執行,混淆了代碼與數據的邊界,從而致使安全問題的發生
不可預測性原則:
巧妙地用在一些敏感數據上,不能被***者猜想到,提升***門檻;
其實現每每用到加密算法、隨機數算法、哈希算法
最後,
安全是一門樸素的學問,也是一種平衡的藝術。
不管是傳統安全仍是互聯網安全,其內在的原理都是同樣的,咱們只需抓住安全問題的本質,以後不管遇到什麼安全問題都會無往而不利。