萬盛學電腦網

 萬盛學電腦網 >> 健康知識 >> 小知識:實現 Web 應用程序安全的捷徑

小知識:實現 Web 應用程序安全的捷徑

  目標與范圍  本指南可幫助您設計、構建和配置抗攻擊的 Web 應用程序。這些應用程序可以減少攻擊的成功概率,並減輕受到攻擊時受損的程度。圖 1 顯示了指南的范圍及其使用的三層式方法:確保網絡安全、確保主機安全和確保應用程序安全。   ·應用MFC開發高級應用程序·在VC 應用程序中讀取文本數據·使用GWT開發AJAX應用程序·DirectSound應用程序開發快速入門·用Indy組件開發Socket應用程序·在Ajax應用程序中實現數據交換·VFP基礎教程 第十一章 應用·MFC應用程序框架入門·Java桌面應用程序設計:SWT·用VC 建立Service服務應用程序   圖 1. 指南的范圍    本指南解決了跨三個物理層的安全問題,如圖 1 所示,包括 Web 服務器、遠程應用程序服務器和數據庫服務器。每一層都面臨網絡層、主機層和應用程序層的安全問題。圖 1 還顯示了指南用來組織各種安全配置設置的配置類別(安全配置設置應用於主機和網絡),以及用於組織應用程序的安全事項的應用程序缺陷類別。    整體的方法  Web 應用程序的安全問題始終是所有應用程序層和多個級別都要考慮的。攻擊者可能會利用任何層次上的缺陷進行攻擊。因此,本指南針對應用程序的安全問題提出一種整體方法,並將它應用於全部三個層次。解決安全問題的整體方法如圖 2 所示。     圖 2. 解決安全問題的整體方法    圖 2 給出了本指南涉及的多個層,包括網絡層、主機層和應用程序層。主機層包括操作系統、平台服務與組件、以及運行時服務與組件。平台服務與組件包括 Microsoft? SQL Server? 2000 和企業服務。運行時服務與組件還包括 ASP.NET 和 .NET 代碼訪問安全性。    保證網絡的安全  安全網絡的三個核心元素是路由器、防火牆和交換機。本指南涉及了全部三個元素。表 1 是每個元素的簡要描述。     保證主機的安全  主機包括操作系統、.NET Framework 和相關服務與組件。無論主機是運行 IIS 的 Web 服務器、還是運行企業服務的應用程序服務器、或是運行 SQL Server 的數據庫服務器,本指南皆遵循一種常規的安全方法(在各種服務器角色和類型中通用)。    指南使用了不同的類別來組織必須采取的預防措施和必須配置的設置。使用這些配置類別,您可以自頂向下系統地執行安全過程,或者挑選特定的類別來完成特定的步驟。    圖 3 顯示了指南的第 IV 部分“確保網絡、主機和應用程序的安全”所使用的配置類別。     圖 3. 主機安全類別    保證應用程序的安全  本指南定義了一組應用程序缺陷類別,它們可幫助您設計和構建安全的 Web 應用程序,評估現有應用程序的安全性。這些類別是通用的,在分層式體系結構的多種技術和組件中適用。這些類別在設計、構建和安全性評估單元中進行重點討論。     找出威脅  在成功地應用安全性措施之前,您需要知道自己面臨的威脅。威脅可能來自外部,如來自 Internet 的攻擊者;威脅也可能來自內部,如來自心懷不滿的雇員或者管理員。本指南將幫助您使用兩種方法找出威脅:    列出在網絡層、主機層和應用程序層上最具影響的 Web 應用程序威脅。    展示了威脅建模的過程,幫助您找出哪些威脅與自己的應用程序相關。    圖 4 給出了本指南中介紹的威脅建模過程概覽。     圖 4. 威脅建模的過程    圖 4 中給出的步驟可描述如下:    1.找出資源。    找出系統必須要保護的有價值資源。    2.創建體系結構概述。    使用簡單的圖表來記錄應用程序的體系結構,包括子系統、信任邊界和數據流。    3.分解應用程序。    分解應用程序的體系結構,包括基礎網絡和主機基礎結構設計,目標是創建應用程序的安全配置文件。安全配置文件旨在揭示應用程序設計、實現或部署配置中存在的缺陷。    4.找出威脅。    牢記攻擊者的目標,借助應用程序體系結構和潛在缺陷的信息找出可能會影響應用程序的威脅。    5.記錄威脅。    使用定義了核心屬性集(處理任意威脅都必須獲取這些屬性)的通用威脅模板記錄各種威脅。    6.評估威脅。    評估威脅的級別,然後區分優先順序。首先處理的是最嚴重的威脅,即風險最大的威脅。評估過程可權衡威脅發生時造成的損害的概率。通過比較威脅的風險與應對措施的成本可能會發現,有些威脅可能不值得采取任何應對措施。    在產品生命周期中應用指南  本指南的不同部分要應用於產品開發生命周期中的不同階段。指南中各單元的出現順序反映了生命周期的典型階段。圖 5 給出了單元與角色的關系。      圖 5. 單元與產品生命周期的關系。    注 威脅建模和安全性評估(特別是代碼審查和部署審查單元)在構建新的 Web 應用程序或者審查現有應用程序時應用。    實施指南內容  本指南以任務為基礎並按單元進行劃分,每個單元與產品開發生命周期的各種階段以及涉及的各種角色相關聯。這些角色包括架構師、開發人員、系統管理員及安全性專家。您可以挑選特定單元來執行特定的任務,或者將一系列單元應用於產品開發生命周期的某個階段。    表 3 顯示的檢查表突出強調了本指南涉及的、確保網絡、主機和應用程序的安全所需的各個領域。     誰做什麼?  設計並構建安全的應用程序是一種由多種角色協作完成的工作。本指南的組織方式為討論每一角色以其需考慮的相關安全因素。要處理的類別和問題概述如下。    RACI 圖表    RACI 代表:    Responsible(負責執行任務的角色)    Accountable(對任務負全責的角色)    Consulted(提供輸入輔助執行任務的人員)    Keep Informed (擁有既定特權、應及時得到通知的人員)    在開始執行項目時,您可通過 RACI 圖表來找出與關鍵安全性相關的任務,以及執行每一任務的相關角色。    表 4 闡明了本指南使用的簡單 RACI 圖表。(標題行列出了不同角色;第一列是任務,其余各列則依據角色描述了不同任務的責任級別。)     小結  本“捷徑”單元重點說明了指南中使用的基本方法,目的是幫助您設計和開發抗攻擊的 Web 應用程序,然後評估現有應用程序的安全性。此外,,本文還指明依據項目生命周期中的特定角色來應用指南內容的方式。
copyright © 萬盛學電腦網 all rights reserved