版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
第一章威脅建模威脅建模是一種基于安全的分析,有助于人們確定給產(chǎn)品造成的最高級別的安全風險,以及攻擊是如何表現(xiàn)出來的。其目標是確定需要緩和哪些威脅,如何來緩和這些威脅。威脅建模的重點是以一種相對正式的方式來考慮程序的安全性。只有你了解了所受到的威脅之后才能創(chuàng)建安全的系統(tǒng)。通過威脅建模進行安全的設(shè)計威脅建模的其他好處:威脅建模有利于更好地理解你的應(yīng)用程序。威脅建模可以幫助你查找bug。通過威脅建??梢园l(fā)現(xiàn)以其他任何方式都不太可能發(fā)現(xiàn)的復(fù)雜的設(shè)計bug。威脅建模可以幫助新的小組成員理解應(yīng)用程序的細節(jié)。威脅建模應(yīng)該能讓基于產(chǎn)品的其他開發(fā)小組用到。威脅模型對測試人員非常有用。.第一章威脅建模威脅建模是一種基于安全的分析,有助于人們確定1第一章威脅建模通過威脅建模進行安全的設(shè)計威脅建模過程如下:成立威脅建模小組。分解應(yīng)用程序。確定系統(tǒng)所面臨的威脅。以風險遞減的順序給威脅排序。選擇應(yīng)付威脅的方法。選擇緩和威脅的技術(shù)。從確定下來的技術(shù)中選擇適當?shù)姆椒ā?第一章威脅建模通過威脅建模進行安全的設(shè)計.2第一章威脅建模1.1分解應(yīng)用程序成功的威脅建模需要一種更結(jié)構(gòu)化和形式化的方法,不是簡單的“想象威脅”。對應(yīng)用程序進行形式化分解方法:數(shù)據(jù)流圖(DFD,Data
Flow
Diagram)統(tǒng)一建模語言(UML,Unified
Modeling
Language)UML活動圖致力于過程之間的控制流,而DFD則是過程間的數(shù)據(jù)流。DFD常用的數(shù)據(jù)流圖符號如下:一個過程轉(zhuǎn)換或操作數(shù)據(jù)多個過程轉(zhuǎn)換或操作數(shù)據(jù)數(shù)據(jù)存儲存放臨時數(shù)據(jù)或永久數(shù)據(jù)的地點邊界機器、物理、地址空間或信任邊界交互者向系統(tǒng)輸入認證數(shù)據(jù)數(shù)據(jù)流描述來自數(shù)據(jù)存儲、過程或交互者的數(shù)據(jù)流.第一章威脅建模1.1分解應(yīng)用程序一個過程多個過程數(shù)據(jù)存儲3第一章威脅建模1.1分解應(yīng)用程序DFD分解的指導原則:應(yīng)用程序或系統(tǒng)可以分解為子系統(tǒng),而子系統(tǒng)又可以分解為更低級的子系統(tǒng)。DFD分解過程:分解的第一步是確定要分析的應(yīng)用程序的邊界或作用范圍,并了解可信任部分和不可信任部分之間的邊界。DFD使用一個高級上下文圖表定義應(yīng)用程序的作用范圍。然后向下進入較低的層次,使用0級圖表、1級圖表、2級圖表等等。上下文0級1級2級.第一章威脅建模1.1分解應(yīng)用程序上下文0級1級2級.4第一章威脅建模1.1分解應(yīng)用程序DFD上下文圖表上下文圖表只有一個過程,通常沒有數(shù)據(jù)存儲。如下是工資表范例應(yīng)用程序的上下文圖表。3.0管理員1.0用戶2.0Web開發(fā)者4.0審計員0.0工資表應(yīng)用程序管理任務(wù)請求工資表信息請求工資表信息響應(yīng)管理任務(wù)反饋更新后的文件審計實體內(nèi)聯(lián)網(wǎng)數(shù)據(jù)中心.第一章威脅建模1.1分解應(yīng)用程序3.01.02.04.05第一章威脅建模1.1分解應(yīng)用程序定義DFD的作用范圍時,應(yīng)考慮以下問題:忽略應(yīng)用程序的內(nèi)部工作方式。哪些事件和請求是系統(tǒng)必須響應(yīng)的?程序?qū)a(chǎn)生什么響應(yīng)?標示出每次請求和響應(yīng)相關(guān)的數(shù)據(jù)源。確定每次響應(yīng)的接收者。.第一章威脅建模1.1分解應(yīng)用程序.63.0管理員1.0用戶2.0Web開發(fā)人員4.0審計員14.0強制管理策略5.0服務(wù)客戶端請求9.0強制工資表策略11.0訪問數(shù)據(jù)6.0身份認證數(shù)據(jù)7.0Web頁面8.0Web服務(wù)代碼12.0工資表數(shù)據(jù)13.0審計日志管理任務(wù)任務(wù)反饋認證數(shù)據(jù)更新后的認證數(shù)據(jù)更新后的工資表數(shù)據(jù)工資表請求工資表響應(yīng)信任狀身份認證狀態(tài)工資表請求工資表響應(yīng)工資表數(shù)據(jù)請求工資表數(shù)據(jù)工資表數(shù)據(jù)請求新的認證數(shù)據(jù)審計實體請求的頁面更新后的文件更新后的文件請求的代碼內(nèi)聯(lián)網(wǎng)數(shù)據(jù)中心機器邊界數(shù)據(jù)中心內(nèi)聯(lián)網(wǎng)工資表范例的1級數(shù)據(jù)流圖.3.01.02.04.014.05.09.011.06.077第一章威脅建模1.1分解應(yīng)用程序在DFD中創(chuàng)建和命名實體時,應(yīng)遵循的規(guī)則:一個過程必須至少有一個數(shù)據(jù)流流入和一個數(shù)據(jù)流流出。所有數(shù)據(jù)流都從某個過程開始,到某個過程結(jié)束。數(shù)據(jù)存儲通過數(shù)據(jù)流與過程相連。數(shù)據(jù)存儲之間不能連接,它們必須通過過程相連。過程的名稱是動詞、名詞或動詞短語。數(shù)據(jù)流名稱是名詞或名詞短語。外部實體或交互者的名稱是名詞。數(shù)據(jù)存儲的名稱是名詞。一般來講,如果只是威脅建模,只需深入到兩級、三級或四級。.第一章威脅建模1.1分解應(yīng)用程序.8第一章威脅建模1.2確定系統(tǒng)所面臨的威脅威脅目標:下一步是取出分解過程中確定的各個部分,將其作為威脅模型的威脅目標。分析應(yīng)用程序結(jié)構(gòu)的原因并非確定其工作原理,而是研究應(yīng)用程序的組成或資源(asset),數(shù)據(jù)在各部分之間是如何流動的。這些組件或資源通常稱為“威脅目標(threat
target)”。考慮威脅時,可考慮如下問題:未經(jīng)認證的用戶能否瀏覽秘密網(wǎng)絡(luò)數(shù)據(jù)?不可信任用戶能否修改數(shù)據(jù)庫中的記錄數(shù)據(jù)?是否有人能夠拒絕合法用戶獲得應(yīng)用程序的服務(wù)?是否有人能夠利用某些特性或組件將自己的特權(quán)提升為管理員?.第一章威脅建模1.2確定系統(tǒng)所面臨的威脅.9第一章威脅建模1.2確定系統(tǒng)所面臨的威脅使用STRIDE給威脅分類(*)STRIDE是下面6種威脅類型的英文首字母縮寫:身份欺騙(Spooling
identity)。身份欺騙允許攻擊者冒充另一個用戶,或者允許惡意服務(wù)器冒充合法服務(wù)器。篡改數(shù)據(jù)(Tampering
with
data)。篡改數(shù)據(jù)包括有惡意地修改數(shù)據(jù)。否認(Repudiation)。用戶拒絕承認他從事過的活動,并且其它方面沒有任何辦法證明他是在否認。信息泄露(Information
disclosure)。信息被暴露給不允許對它訪問的人。拒絕服務(wù)(Denial
of
service,DoS)。拒絕對合法用戶的服務(wù)。特權(quán)提升(Elevation
of
privilege)。沒有特權(quán)的用戶獲得訪問特權(quán),從而有足夠的能力損壞或摧毀整個系統(tǒng)。.第一章威脅建模1.2確定系統(tǒng)所面臨的威脅.10第一章威脅建模1.2確定系統(tǒng)所面臨的威脅威脅樹威脅樹的思想:應(yīng)用程序是由威脅目標組成的,每個目標都有漏洞,任意漏洞被成功攻擊都會破壞整個系統(tǒng)。威脅樹描述了攻擊者破壞各組件所經(jīng)歷的決策過程。當分解過程向你提供了應(yīng)用程序各部分的清單時,就要標識出每個部分所面臨的威脅。一旦標出潛在的威脅后,那么你就能確定怎樣用威脅樹來表示這些威脅。1.0用戶5.0服務(wù)客戶端請求工資表請求工資表響應(yīng)內(nèi)聯(lián)網(wǎng)數(shù)據(jù)中心部分1級DFD,用戶和Web服務(wù)器通過服務(wù)客戶請求過程進行交互.第一章威脅建模1.2確定系統(tǒng)所面臨的威脅1.05.0工資11第一章威脅建模瀏覽從服務(wù)器向客戶計算機傳輸敏感用戶工資數(shù)據(jù)的威脅樹威脅#1在線瀏覽秘密工資表數(shù)據(jù)(I)1.1HTTP通信不受保護1.2攻擊者瀏覽通信數(shù)據(jù)與1.2.1使用協(xié)議分析器嗅探網(wǎng)絡(luò)通信1.2.2監(jiān)聽路由器流通數(shù)據(jù)1.2.3破壞交換機路由器不受保護破壞路由器猜測路由器口令與各種交換機攻擊.第一章威脅建模瀏覽從服務(wù)器向客戶計算機傳輸敏感用戶工資數(shù)據(jù)12第一章威脅建模大綱是表現(xiàn)威脅樹的更為簡潔的方式。上述威脅樹的大綱表現(xiàn)形式如下:1.0在線瀏覽秘密工資表數(shù)據(jù) 1.1
HTTP通信不受保護(與) 1.2攻擊者瀏覽通信數(shù)據(jù) 1.2.1使用協(xié)議分析器嗅探網(wǎng)絡(luò)通信 1.2.2監(jiān)聽路由器流通數(shù)據(jù)
路由器不受保護(與)
攻破路由器
猜測路由器口令 1.2.3攻破交換機
各種交換機攻擊.第一章威脅建模大綱是表現(xiàn)威脅樹的更為簡潔的方式。上述威脅樹13第一章威脅建模改進威脅樹增加可讀性:用虛線表示最不可能的攻擊點,用實線表示最可能的攻擊點。在最不可能的節(jié)點下放置圓圈,說明為什么威脅會減弱。威脅#1獲取用戶口令信息(I)→(S)→(E)1.1監(jiān)聽基本認證連接1.2破壞服務(wù)器證實存儲1.3讀取本地用戶口令的惡意軟件1.3.1用戶“安裝”讀取口令的病毒1.3.2在計算機上安裝惡意代碼使用SSL/TLS需要對服務(wù)器的物理訪問需要對服務(wù)器的物理訪問.第一章威脅建模改進威脅樹增加可讀性:威脅#11.11.2114第一章威脅建模項目注釋標題用適當?shù)恼Z言描述威脅目標應(yīng)用程序的哪一部分容易受到攻擊?威脅類型基于STRIDE模型來記錄威脅的類型風險用你所喜歡的方法來計算風險威脅樹攻擊者如何實施威脅?保持威脅樹的簡單性緩和技術(shù)(可選)如何緩和威脅?如果已經(jīng)使用了某種緩和技術(shù),就記錄下來;否則,進行下一個威脅。緩和狀態(tài)威脅已經(jīng)被緩和了嗎?是、否、稍微、需要研究Bug數(shù)量(可選)如果在使用一個跟蹤bug的數(shù)據(jù)庫,則有要跟蹤的bug數(shù)量威脅建模需要記錄的項目.第一章威脅建模項目注釋標題用適當?shù)恼Z言描述威脅目標應(yīng)用程序15第一章威脅建模1.3以風險遞減的順序給威脅分級通過威脅造成的風險大小,決定哪一個問題要最先研究。風險的計算方法并不重要,只有合理并且保持一致。一種計算風險的簡單方法是用隱患的危險程度(潛在的破壞性)乘以隱患發(fā)生的可能性。風險CO=危急程度×發(fā)生可能性通常1表示最低的危急程度或發(fā)生可能性,10表示最高的危急程度或發(fā)生可能性。風險CO越大,威脅對系統(tǒng)造成的風險就越大。例如,最高的風險等級是100。.第一章威脅建模1.3以風險遞減的順序給威脅分級.16第一章威脅建模使用DREAD計算風險風險計算方法DREAD是Microsoft使用的方法,其名字是如下短語的首字母組成:潛在破壞性(Damagepotential)。破壞會有多嚴重?衡量一個威脅可能造成的實際破壞程度。再現(xiàn)性(Reproducibility)。讓潛在的攻擊起作用會有多頻繁?衡量將威脅變?yōu)楝F(xiàn)實的頻繁程度。可利用性(Exploitability)。進行一次攻擊需要多少努力和專業(yè)知識?受影響的用戶(Affected
users)。如果威脅被利用并成為一次攻擊,有多少用戶會受到影響?可發(fā)現(xiàn)性(Discoverability)。一個威脅可被利用的可能性。這是最難衡量的標準。該方法將上述五個方面的平均值作為風險值(風險DREAD
)。上述五個方面的取值范圍為1~10。.第一章威脅建模使用DREAD計算風險.17第一章威脅建模其他評估風險的方法如Internet安全系統(tǒng)的創(chuàng)始人Christopher
W.Klaus提出的方法就是一個比較靈活的方法,它檢查威脅隱患的各個方面,創(chuàng)建一個嚴重性矩陣,用于如何處理和發(fā)現(xiàn)問題的優(yōu)先級。一般需要回答以下問題:是本地威脅,還是遠程威脅?攻擊者能夠不需要首先獲得本地訪問權(quán)就實施攻擊嗎?威脅的結(jié)果是什么?特權(quán)直接提升?如果是,提升到什么級別?是信息泄露問題嗎?是導致特權(quán)提升的信息泄露嗎?使攻擊成功需要一些動作嗎?.第一章威脅建模其他評估風險的方法.18第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來將所有這些結(jié)合起來,就可以從功能分解上確定威脅目標,通過STRIDE確定每個部分面臨的威脅類型,使用威脅樹來確定威脅如何成為隱患,并對每個威脅應(yīng)用分級機制,如DREAD。對威脅樹應(yīng)用STRIDE非常簡單。對系統(tǒng)的每個詳細目錄項,提出如下問題:這一項是否易于受到欺騙?這一項是否會遭到篡改?攻擊者會否認這個動作嗎?攻擊者能瀏覽到這一項嗎?攻擊者能否對這一過程或數(shù)據(jù)流進行拒絕服務(wù)攻擊?攻擊者能否通過攻擊這一過程提升其特權(quán)?.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合19第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來DFD和STRIDE威脅類型的關(guān)系威脅類型影響過程影響數(shù)據(jù)存儲影響交互影響數(shù)據(jù)流SYYTYYYRYYYIYYYDYYYEY.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合20第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來DFD和STRIDE威脅類型的關(guān)系對上述關(guān)系表進行解釋:欺騙威脅通常意味著欺騙一個用戶(訪問其證書,這也是一個信息泄露威脅)、一個進程(用惡意進程替換該進程,這也是一個篡改數(shù)據(jù)威脅)或者一臺服務(wù)器。篡改一個進程意味著替換其二進制映像或在內(nèi)存中修改(patching)該進程。針對進程的信息泄露威脅意味著對進程進行反向工程,以暴露其工作方式或者確定是否包含秘密數(shù)據(jù)。交互者不會受到信息泄露的影響;只有與交互者有關(guān)的數(shù)據(jù)才會泄露。如果你看到的是針對用戶的信息泄露,那么你可能忽略了數(shù)據(jù)存儲和訪問數(shù)據(jù)的過程。你不能對交互者進行拒絕服務(wù)的攻擊;攻擊者是對數(shù)據(jù)存儲、數(shù)據(jù)流或過程進行拒絕服務(wù)攻擊,從而影響交互者。否認威脅一般意味著惡意用戶拒絕承認一個事件的發(fā)生。你只能利用授權(quán)或使用更高特權(quán)的進程來提升特權(quán)。.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合21第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#1威脅#1在線瀏覽秘密工資表數(shù)據(jù)(I)1.1HTTP通信不受保護1.2攻擊者瀏覽通信數(shù)據(jù)與1.2.1使用協(xié)議分析器嗅探網(wǎng)絡(luò)通信1.2.2監(jiān)聽路由器流通數(shù)據(jù)1.2.3破壞交換機路由器不受保護破壞路由器猜測路由器口令與各種交換機攻擊.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合22第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#1威脅描述惡意用戶瀏覽網(wǎng)絡(luò)上的秘密工資數(shù)據(jù)威脅目標工資表響應(yīng)(5.0→1.0)威脅類型信息泄露I風險潛在破壞性:8可再現(xiàn)性:10可利用性:7受影響用戶:10可發(fā)現(xiàn)性:10總計:9注釋多數(shù)這樣的攻擊來自使用協(xié)議分析器的惡意用戶,攻擊很容易進行。.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合23第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#2威脅#2上傳惡意Web頁面2.1身份認證不安全2.2授權(quán)不安全與2.1.1管理安全性錯誤2.4.1服務(wù)器未打補丁2.3賄賂已授權(quán)的Web開發(fā)人員或管理員2.4破壞服務(wù)器2.2.1管理安全性錯誤默認情況下是安全的默認情況下是安全的行政管理不會有大問題.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合24第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#2威脅描述攻擊者上傳惡意Web頁面和代碼威脅目標Web頁面(7.0)和Web服務(wù)代碼(8.0)威脅類型篡改數(shù)據(jù)T風險潛在破壞性:7可再現(xiàn)性:7可利用性:7受影響用戶:10可發(fā)現(xiàn)性:10總計:8.2注釋安裝工具總是設(shè)置良好的認證授權(quán)。因此,通過脆弱的安全上傳Web頁面的唯一方法是因為管理配置錯誤。.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合25第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#3威脅#3使應(yīng)用程序拒絕服務(wù)3.1對網(wǎng)絡(luò)接口進行洪水攻擊3.2關(guān)閉計算機電源與3.2.1對計算機房的物理訪問3.3創(chuàng)建許多長時間運行的請求3.4通過填充日志文件耗盡磁盤空間3.2.2通過警衛(wèi)行政管理不會有大問題節(jié)流就是請求.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合26第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#3威脅描述攻擊者使應(yīng)用程序拒絕服務(wù)威脅目標服務(wù)客戶請求過程(5.0)威脅類型拒絕服務(wù)D風險潛在破壞性:6可再現(xiàn)性:6可利用性:7受影響用戶:9可發(fā)現(xiàn)性:10總計:7.6注釋應(yīng)用程序的其他部分也可能會被拒絕服務(wù)攻擊,但是,處理客戶請求過程的Web服務(wù)器處于最前沿,因此最容易受到攻擊。如果保護了應(yīng)用程序的這一部分,其他過程受到的攻擊是可以容忍的。.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合27第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#4威脅#4操作工資表數(shù)據(jù)4.1賄賂管理員以更改數(shù)據(jù)4.2破壞數(shù)據(jù)庫與4.2.1管理失敗4.3篡改來自管理策略過程的數(shù)據(jù)4.2.2安全錯誤行政管理不會有大問題使用SSL4.3.1數(shù)據(jù)未受保護4.3.1攻擊者可以訪問數(shù)據(jù)流(參見威脅#1).第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合28第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#4威脅描述攻擊者操縱工資表數(shù)據(jù)威脅目標工資表數(shù)據(jù)(12.0)威脅類型篡改數(shù)據(jù)及潛在的信息泄露T&I風險潛在破壞性:10可再現(xiàn)性:5可利用性:5受影響用戶:10可發(fā)現(xiàn)性:10總計:8注釋威脅4.3是指在更新的工資表數(shù)據(jù)跨越網(wǎng)絡(luò)從管理控制臺(2.0)到管理策略過程(14.0),然后到工資表數(shù)據(jù)存儲(12.0)時,對其進行訪問。數(shù)據(jù)流圖中有兩個機器邊界事務(wù)。.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合29第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#5威脅#5通過Web服務(wù)器提升特權(quán)5.1賄賂管理員以安裝惡意軟件5.2安裝黑客代碼5.2.1Web服務(wù)器中的安全隱患5.2.2允許惡意用戶上傳代碼的管理錯誤行政管理不會有大問題.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合30第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#5威脅描述攻擊者利用服務(wù)客戶請求過程來提升特權(quán)威脅目標服務(wù)客戶請求(5.0)威脅類型提升特權(quán)E風險潛在破壞性:10可再現(xiàn)性:2可利用性:2受影響用戶:1可發(fā)現(xiàn)性:10總計:5注釋這里的威脅目標運行在Web服務(wù)器進程中,而代碼運行在本地系統(tǒng)環(huán)境內(nèi)。這意味著任何在這臺Web服務(wù)器環(huán)境下運行的惡意代碼,也都是本地系統(tǒng)。可再現(xiàn)性和可利用性很低,因為對于攻擊者來說,要利用這一點,唯一可行的辦法是利用Web服務(wù)器進程的安全漏洞。.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合31第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#6威脅#6欺騙Web服務(wù)器6.1創(chuàng)建相同名稱的服務(wù)器訪問電源開關(guān)與6.2.1DNS劫持6.2破壞合法服務(wù)器6.2.2用壞的IP包對服務(wù)器進行洪水攻擊對受限區(qū)域的物理訪問6.2.3關(guān)閉服務(wù)器電源6.2.4重命名服務(wù)器訪問計算機房電源對計算機的物理訪問對受限區(qū)域的物理訪問對受限區(qū)域的物理訪問.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合32第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合起來實例:威脅#6威脅描述欺騙計算機執(zhí)行客戶請求進程威脅目標服務(wù)客戶請求過程(5.0)威脅類型欺騙S風險潛在破壞性:10可再現(xiàn)性:2可利用性:2受影響用戶:8可發(fā)現(xiàn)性:10總計:6.4注釋讓一臺合法機器脫離網(wǎng)絡(luò)意味著或者物理地脫離,或者使用攻擊技術(shù)使之不可訪問。.第一章威脅建模將分解、威脅樹、STRIDE、DREAD結(jié)合33第一章威脅建模計算總體風險根據(jù)一個或多個子威脅成為攻擊的可能性,可以得出總體風險機率。在考慮總體風險機率時,必須考慮最有可能的攻擊途徑。在威脅樹中尋找抵抗最薄弱的路徑。這并不意味著攻擊者沿著其他途徑攻擊,只是他們更可能利用這條容易的途徑。.第一章威脅建模計算總體風險.34第一章威脅建模威脅建模的過程步驟1:通過一種分析方法,如數(shù)據(jù)流圖,將應(yīng)用程序分解為威脅目標。在DFD的情況下,威脅目標是每個數(shù)據(jù)源、過程、數(shù)據(jù)流、以及交互者或參與者。步驟2:使用STRIDE,給每個威脅目標標識威脅。這些將作為威脅樹的根,每個威脅目標都有一棵樹。步驟3:如果合適,為每個威脅目標創(chuàng)建一個或多個威脅樹。步驟4:使用DREAD或其他某種威脅分級方法,確定每棵威脅樹的安全風險。步驟5:將威脅以從高到低的順序按風險排序。.第一章威脅建模威脅建模的過程.35第一章威脅建模選擇緩和威脅的方法下一步是決定如何減輕你已經(jīng)標識出的威脅。這個過程有兩個步驟。第一步是判斷哪些方法(technique)可以起到緩和威脅的作用;第二步是選擇適當?shù)募夹g(shù)(technology)。方法不同于技術(shù)。方法是對那些用于緩和威脅的技術(shù)進行的高層次抽象。例如,認證是一種安全方法,Kerberos是一種具體的認證技術(shù)。.第一章威脅建模選擇緩和威脅的方法.36第一章威脅建模部分基于技術(shù)的威脅緩和方法威脅類型緩和方法威脅類型緩和方法欺騙標識認證保護秘密不存儲秘密信息泄露授權(quán)加強保密的協(xié)議加密保護秘密不存儲秘密篡改數(shù)據(jù)適當?shù)氖跈?quán)散列(Hash)表消息認證代碼數(shù)字簽名抗篡改的協(xié)議拒絕服務(wù)適當?shù)恼J證適當?shù)氖跈?quán)過濾節(jié)流(Throttling)服務(wù)質(zhì)量否認數(shù)字簽名時間戳審核跟蹤特權(quán)提升以最小權(quán)限運行.第一章威脅建模部分基于技術(shù)的威脅緩和方法威脅類型緩和方法威37第一章威脅建模安全技術(shù)在設(shè)計一個安全系統(tǒng)時,首先必須分析已經(jīng)存在的安全機制。如果這些已經(jīng)存在的安全機制有受到攻擊的漏洞,那么就應(yīng)該重新設(shè)計這些機制,或者將它從系統(tǒng)中刪除。2.1身份認證身份認證(Authentication)是這樣一個過程:一個實體,也被稱為主體(principal),驗證另一個實體是它自己聲稱的那個人或事物。主體可以是用戶、一些可執(zhí)行代碼、或一臺計算機。認證需要證書(credential)形式的證據(jù)(evidence)。證據(jù)可以是多種形式的,例如口令、私鑰,或者使用生物技術(shù)來做認證,例如指紋。.第一章威脅建模安全技術(shù).38第一章威脅建模下表是常有的一些認證技術(shù)認證協(xié)議認證客戶認證服務(wù)器基本認證是否摘要認證是否表單認證是否Passport認證是否NTLM(NTLANManager)是否Kerberos是是X.509證書是是IPSec是(計算機)是(計算機)RADIUS是否.第一章威脅建模下表是常有的一些認證技術(shù)認證協(xié)議認證客戶認證39第一章威脅建模2.2授權(quán)一旦通過確定了主體的身份,主體通常希望訪問資源。授權(quán)是通過執(zhí)行一個訪問檢查,來判斷這個已被認證的主體是否有權(quán)訪問他請求的資源。對同樣一個資源,某些主體會比其他主體有更多的訪問權(quán)。訪問控制表(AccessControlList,
ACL)在Windows
NT及以后的版本中,所有的對象都可以用ACL保護。一個ACL是一系列的訪問控制項(Access
Control
Entry,
ACE),每一個ACE決定了一個主體能夠?qū)σ粋€資源做什么處理。特權(quán)特權(quán)是賦予用戶的權(quán)利,用戶可以執(zhí)行系統(tǒng)范圍內(nèi)的操作。一些操作被認為是特許的,并且只應(yīng)該授予受信任的個人。IP限制IP限制是IIS(Internet信息服務(wù))的一個功能。你可以限制Web站點的一部分(例如一個目錄),也可以限制整個的Web站點,使得只有專門的IP地址、子網(wǎng)和DNS名可以訪問它。服務(wù)專用權(quán)限許多服務(wù)提供了它們自己的訪問控制形式,來保護它們自己的對象類型。例如MicrosoftSQLServer提供了權(quán)限,管理員用它可以決定誰有權(quán)訪問哪一個表、存儲過程和視圖。.第一章威脅建模2.2授權(quán).40第一章威脅建模2.3訪篡改和增強保密性的技術(shù)許多網(wǎng)絡(luò)協(xié)議支持抗篡改和數(shù)據(jù)保密抗篡改是指保護數(shù)據(jù)不被惡意的或意外地刪除或修改的能力。保密的意思是,沒有其他人能夠讀取信息,只有交互的雙方能夠讀到它。常用的抗篡改和增強保密性的技術(shù)有:SSL/TLSSSL對在服務(wù)器和用戶之間傳輸?shù)臄?shù)據(jù)加密,并用MAC(MessageAuthenticationCode,消息認證碼)提供數(shù)據(jù)完整性。TLS是IETF認可的SSL版本。IPsecIpsec支持認證、數(shù)據(jù)保密需要的加密、數(shù)據(jù)完整性需要的MAC。利用Ipsec的優(yōu)點是不需要對應(yīng)用程序做任何調(diào)整,因為Ipsec是在TCP/IP網(wǎng)絡(luò)的IP層實現(xiàn)的。DCOM和RPC分布式COM和RPC支持認證、保密性和完整性。它對性能的影響很小,除非傳輸大量的數(shù)據(jù)。EFSEFS(加密文件系統(tǒng))是一個基于文件的加密方法,是NTFS的一個功能。.第一章威脅建模2.3訪篡改和增強保密性的技術(shù).41第一章威脅建模2.4保護秘密或最好不要保存秘密保護秘密的最好辦法是,不要在第一個出現(xiàn)的地方存儲它。如果需要,允許你的用戶從他們的記憶中提供秘密數(shù)據(jù)。如果應(yīng)用程序受到損壞,攻擊者也不可能獲得對秘密數(shù)據(jù)的訪問權(quán),因為你根本就沒有存儲它。如果必須存儲秘密數(shù)據(jù),那么要盡最大的可能保護它的安全。2.5加密、散列、MAC和數(shù)字簽名加密:私密性(privacy)有時稱機密性(confidentiality),意思是隱藏信息不被偷窺者看到,經(jīng)常通過加密來完成。散列:散列的過程包括將數(shù)據(jù)傳遞給一個加密函數(shù),這個函數(shù)稱為散列(hash)函數(shù)或摘要(digest)函數(shù),生成一個小的值。這個值唯一地標識數(shù)據(jù)。MAC:在創(chuàng)建一個MAC時,消息數(shù)據(jù)和一些秘密數(shù)據(jù)一起進行散列計算,并且只有消息的生成者和接收者知道這些數(shù)據(jù)。為了驗證這個MAC,接收者通過對這個數(shù)據(jù)和秘密數(shù)據(jù)進行散列計算來計算摘要。如果結(jié)果和收到的MAC相同,說明數(shù)據(jù)沒有被篡改,并且數(shù)據(jù)來自也知道秘密數(shù)據(jù)的那個人。數(shù)字簽名:數(shù)字簽名與MAC有點類似,但它不是在許多人之間共享秘密的方法;相反,數(shù)據(jù)被混編,并且用一個只有發(fā)送者知道的私有秘鑰來加密這個散列。接收者用相對應(yīng)的公開密鑰來驗證這個簽名。先用公開密鑰將散列解密,然后計算這個散列,如果結(jié)果是相同的,接收者知道數(shù)據(jù)沒有被篡改,并且數(shù)據(jù)是由擁有與這個公開密鑰對應(yīng)的私有密鑰的人發(fā)送的。.第一章威脅建模2.4保護秘密或最好不要保存秘密.42第一章威脅建模2.6審核審核(auditing)也被稱作日志(logging)。其目的是收集成功的和失敗的對對象的訪問、特權(quán)的使用、以及其他的安全活動的信息,并將它們記錄在永久存儲器中,以便日后分析。2.7過濾、節(jié)流和服務(wù)質(zhì)量過濾(Filtering)是對接收到的數(shù)據(jù)進行檢查,并判斷是接收還是拒絕這個包。這也是包過濾防火墻的工作方式。許多IP層拒絕服務(wù)威脅,都可以用包過濾防火墻來緩和。節(jié)流(Throttling)是限制對系統(tǒng)請求的數(shù)量。例如,只允許少量的匿名請求,同時允許更多的被認證的請求。限制匿名連接是很重要的,如果需要先被識別身份的話,攻擊者也許不會試圖攻擊你。服務(wù)質(zhì)量(QoS)是一組組件,允許為專門的傳輸類型提供優(yōu)先處理。2.8最小特權(quán)總是使用剛好完成工作的特權(quán),而不要使用更多的特權(quán)。.第一章威脅建模2.6審核.43第一章威脅建模應(yīng)用于工資程序的緩和技術(shù)威脅STRIDE方法和技術(shù)瀏覽網(wǎng)絡(luò)上的工資和數(shù)據(jù)I使用SSL/TLS加密服務(wù)器和客戶間的管道。也可以使用Ipsec。上傳惡意Web頁面和服務(wù)代碼T需要對Web開發(fā)人員進行加強的認證。為文件提供加強的ACL,這樣主要開發(fā)人員和管理者才可以改寫和刪除文件。攻擊者使應(yīng)用程序拒絕服務(wù)D使用防火墻拋棄某些IP包。限制匿名用戶使用的資源。江日志文件移到另一個文件卷。攻擊者控制工資數(shù)據(jù)T&I使用SSL/TLS或帶保密選項的DCOM/RPC保護更新后的工資數(shù)據(jù)流,緩和消息泄露威脅。SSL/TLS還提供了消息認證編碼來檢測數(shù)據(jù)篡改攻擊。選擇了保密選項時DCOM/RPC提供了完整性檢查。也可以使用Ipsec。利用客戶服務(wù)請求進程提升特權(quán)E運行進程時遵循最小特權(quán)原則。如果該進程被破壞,這些代碼也不能獲得額外的能力。欺騙Web服務(wù)器S最簡單的解決方案是使用SSL/TLS。如果正確配置,它允許客戶軟件對服務(wù)器進行認證。也可以使用Kerberos,提供客戶與服務(wù)器之間的相互認證。.第一章威脅建模應(yīng)用于工資程序的緩和技術(shù)威脅STRIDE方法44第一章威脅建模各種威脅及解決方案威脅威脅類型緩和方法問題訪問或修改秘密的HTTP數(shù)據(jù)T&I使用SSL/TLS、WTLS或IPsec需要設(shè)置HTTP服務(wù)器使用私有密鑰和證書。配置Ipsec麻煩,對建立連接時性能有較大影響,連接后數(shù)據(jù)傳輸性能影響較小。訪問或修改秘密的RPC或DCOM數(shù)據(jù)T&I使用一致性和保密選項可能會要求修改代碼。對性能影響較小。讀或修改基于電子郵件的通信。T&I使用PGP(Pretty
good
Privacy)或S/MIME(安全多用途網(wǎng)際郵件擴充協(xié)議)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度個性化美發(fā)店服務(wù)股份制合作合同4篇
- 二零二五版新能源汽車充電樁投資分紅合同3篇
- 2025年倉儲租賃協(xié)議審核
- 二零二五年度木地板工程環(huán)保認證與施工合同4篇
- 2025年民用航空器租賃合規(guī)審查協(xié)議
- 2025年度綠色校園綠植種植與教育推廣合同4篇
- 2024 年浙江公務(wù)員考試行測試題(A 類)
- 二零二五年度二手挖掘機轉(zhuǎn)讓與長期維護服務(wù)協(xié)議3篇
- 二零二五年度SSL協(xié)議安全審計與合規(guī)檢查合同3篇
- 2025年度鮮花電商物流配送與銷售合作協(xié)議3篇
- 2024年供應(yīng)鏈安全培訓:深入剖析與應(yīng)用
- 飛鼠養(yǎng)殖技術(shù)指導
- 壞死性筋膜炎
- 整式的加減單元測試題6套
- 股權(quán)架構(gòu)完整
- 山東省泰安市2022年初中學業(yè)水平考試生物試題
- 注塑部質(zhì)量控制標準全套
- 銀行網(wǎng)點服務(wù)禮儀標準培訓課件
- 二年級下冊數(shù)學教案 -《數(shù)一數(shù)(二)》 北師大版
- 晶體三極管資料
- 石群邱關(guān)源電路(第1至7單元)白底課件
評論
0/150
提交評論