freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內容

應用系統(tǒng)安全開發(fā)技術規(guī)范培訓資料-免費閱讀

2025-05-10 00:32 上一頁面

下一頁面
  

【正文】 } scanf、fscan、sscanscanf()、fscan()、sscan():在使用這些函數(shù)的時候需要小心讀取要放到固定長度緩存區(qū)的數(shù)據(jù),應確保規(guī)定要讀到緩存區(qū)的數(shù)據(jù)長度。fgets()函數(shù)用來代替不安全的 gets()函數(shù),此函數(shù)會至多讀取’sizeof(buffer) – 1’的文件流 。} sprintfsprintf():此函數(shù)用來格式化字符串變量,是很容易產(chǎn)生緩存溢出的地方。return?,F(xiàn)在許多有緩存溢出風險的函數(shù)都存在相對安全的替代函數(shù),它們都通過傳遞參數(shù)來限制多少數(shù)據(jù)被調用。如果能不讓惡意的數(shù)據(jù)進入程序,或者至少不在程序中處理它,程序在面對攻擊時將更加健壯。 內存控制 大對象如果要加載大對象到內存中,應盡可能減少大對象在內存中的存活時間,使用完后立即釋放,并將對象應用設置為NULL,對于大對象的內存回收不應太過依賴內存垃圾回收機制。臨時文件名必須采用足夠長度的隨機算法生成。在客戶端,包含敏感數(shù)據(jù)的HTTPS請求,要設置以下的頭信息,禁止瀏覽器緩存頁面數(shù)據(jù),HTTP頭信息代碼如下:CacheControl:nocache,nostore。如:用戶口令,必須使用不可逆的加密算法加密后在存儲在數(shù)據(jù)庫中。script var temp=” encodeForJavascript($var)”。(content)。(“SetCookie”,”name=value。 本地Cookie本地Cookie指的是在生成Cookie時,設置了Expire時間,只有當Expire時間到了Cookie才會失效,這種Cookie會被存儲到客戶端本地,由于存儲了用戶的信息,因此這種類型的Cookie有較高的風險,不要將重要的數(shù)據(jù)存儲在本地Cookie中。(分號) (兩個減號)。String pass = (password)。為防御SQL注入攻擊,必須采用預編譯的方式執(zhí)行SQL語句或存儲過程。南瑞SysKeeper-2000反向隔離裝置提供了專用發(fā)送軟件在發(fā)送文本文件數(shù)據(jù)時,自動將半角字符轉換為全角字符。并且當用戶操作需要訪問文件時,文件訪問操作應通過應用系統(tǒng)進行文件操作的中轉,不要讓客戶端通過文件訪問協(xié)議直接連接文件系統(tǒng)。包括命令執(zhí)行、跨站點腳本編寫 (XSS)、SQL 注入和緩沖區(qū)溢出攻擊等。表 1Web 應用程序缺陷和由于不良設計可能導致的問題缺陷類別由于不良設計可能導致的問題身份驗證身份偽造、口令破解、權限提升和未授權訪問。 應用安全關注點圖1典型的Web安全技術框架圖1 顯示了典型的Web應用安全的技術框架和安全技術點,這些安全技術點,貫穿整個Web設計開發(fā)過程。方案:客戶端發(fā)起的Restful請求需要在消息頭帶Authorization字段,內容填Basic Base64(user:pass),服務端對user和passwd進行認證。方案:1) 采用HTTPS安全協(xié)議。 第三方組件安全 組件兼容性所以引入的第三方組件都必須確保組件與平臺之間的兼容性,避免引入組件后引起平臺及現(xiàn)有組件崩潰、無法運行、出現(xiàn)BUG等問題。216。 角色劃分對外網(wǎng)類應用,必須預先定義外網(wǎng)用戶角色類型、各類角色的應用場景,并按照缺省最小權限原則劃分角色權限。敏感數(shù)據(jù)除了傳輸需要加密外,一般還要求對敏感數(shù)據(jù)新增和變更操作進行審計。 可以將應用程序設置為不向遠程用戶顯示詳細錯誤信息,也可以選擇將錯誤重定向到應用程序頁。 使用可信的密碼算法如果應用程序需要加密、數(shù)字簽名、密鑰交換或者安全散列,應使用一個成熟的算法,自己設計的密碼算法缺乏廣泛的驗證。1. 在 Java 中, 建議使用SecureRandom類生成隨機數(shù),不要使用Random 類。5. 應及時釋放內存資源,防止內存泄漏,但要避免重復內存釋放。 用戶訪問控制信息的機密性禁止在程序代碼和配置文件中直接明文寫入用戶名和口令等用戶訪問控制信息。 安全使用臨時文件在程序初始化時以最嚴格的權限策略建立一個安全臨時文件夾,該文件夾只有該程序具備讀寫權限,其他用戶無法訪問。 把文件名以及文件內容作為不可信的輸入對待對來自文件系統(tǒng)的所有值都應進行合適的輸入驗證,確保從文件系統(tǒng)中讀取的數(shù)據(jù)符合期望。 確保數(shù)據(jù)庫資源被釋放保證數(shù)據(jù)庫訪問在不需要使用的時候被釋放,例如連接、游標等。... 對 SQL 語句中來自于不可信區(qū)域的輸入?yún)?shù)進行驗證 在一些復雜的情況會出現(xiàn)要求輸入影響 SQL 語句結構的情況,譬如要求在 where 子句里增加一個動態(tài)約束,這時應對來自不可信區(qū)域的輸入?yún)?shù)進行驗證。PreparedStatementstmt= (q)。導致 SQL 注入漏洞的原因就是攻擊者可以改變 SQL 請求的內容,攻擊者提交的數(shù)據(jù)變成了 SQL 執(zhí)行命令的一部分。如果日志數(shù)據(jù)中包含輸入數(shù)據(jù),應對輸入數(shù)據(jù)進行驗證,禁止攻擊者能夠寫任意的數(shù)據(jù)到日志中。 拒絕驗證失敗的數(shù)據(jù)應拒絕驗證失敗的輸入數(shù)據(jù),不試圖對其進行修復(如處理密碼域時自動剪裁掉超過最大長度的輸入,替換掉在輸入框輸入的 JavaScript 字符等)。3. 檢查數(shù)值數(shù)據(jù)是否符合期望的數(shù)值范圍,比如檢測整數(shù)輸入的最大值與最小值。7. 注冊表值。在這種情況下,維護一個可信的邊界就尤為重要,不可信數(shù)據(jù)應該單獨存放在專門存放不可信數(shù)據(jù)的數(shù)據(jù)結構內,在經(jīng)過驗證之后才被放在可信區(qū)域。使數(shù)據(jù)穿越可信邊界的次數(shù)降到最低。在中間人攻擊中,攻擊者可以攔截通訊雙方的通話并插入新的內容。嗅探器可以分析網(wǎng)絡的流量,以便找出所關心的網(wǎng)絡中潛在的問題。可用性要求保護資源是可被按照需要訪問。4. 對經(jīng)常使用的類似的 SQL 語句應使用綁定變量的方法,避免數(shù)據(jù)庫執(zhí)行類似 SQL 語句時重復解析、重復訪問數(shù)據(jù)文件的行為。 修改面向用戶的操作的反饋缺省描述應對面向用戶的操作的反饋缺省描述進行必要的封裝,刪除有關后臺系統(tǒng)或其它敏感信息。 使用適當?shù)臄?shù)據(jù)類型應該小心使用數(shù)據(jù)類型,盡量使用占用內存較小的數(shù)據(jù)類型,如可用整型數(shù)據(jù)的不用實型,特別是在程序接口部分。 數(shù)據(jù)和代碼分離軟件應該把數(shù)據(jù)與程序放置在不同的目錄中,這里的數(shù)據(jù)包括遠程下載文件等。 同時作為結構化的編程, 每個原子化組件都要保證一個入口和一個出口。3. 一次只執(zhí)行一個任務。2. 針對本規(guī)范提出的主要代碼脆弱性應進行相應的防范設計,具體內容應在軟件概要設計中體現(xiàn)或有單獨的文檔體現(xiàn)。例如,在瀏覽器和遠程主機之間的HTTP傳輸中,HTTP cookie就會被用來包含一些相關的信息,例如session ID,參數(shù)和權限信息等。這種協(xié)議在Web上獲得了廣泛的應用。 信息熵信息熵指信息的不確定性,一則高信息度的信息熵是很低的,低信息度的熵則高。 元字符元字符就是在編程語言中具有特定含義的字符或者字符串。 不可信任模塊除審計和訪問控制模塊外其它所有模塊均為不可信模塊。本規(guī)范對開發(fā)人員的編碼提出統(tǒng)一的安全要求, 主要涉及輸入處理、 輸出處理、 數(shù)據(jù)庫訪問、 文件操作、異常管理等方面,如下圖: 輸入處理部分能指導開發(fā)者避免用戶的不良輸入;輸出處理能指導開發(fā)者對輸出內容進行過濾; 數(shù)據(jù)庫訪問、 文件操作部分則能指導開發(fā)者進行數(shù)據(jù)庫查詢, 寫入文件等操作時進行防護; 而異常管理、敏感數(shù)據(jù)保護、對象重用等技術則指導開發(fā)者改進軟件的自身缺陷。目錄1 背景與目標 12 安全編程概念 1 安全編程 1 結構化編程 2 脆弱性 2 可信計算 2 安全可信模塊 3 不可信任模塊 3 敏感信息 3 特權 3 信息隱藏 3 中間件 3 死鎖 4 可信邊界 4 元字符 4 參數(shù)化查詢 4 UNIX JAIL環(huán)境 4 臨時文件 4 信息熵 5 SSL 5 TLS 5 HTTPS 5 Http會話 5 Cookie 6 HttpOnly Cookie 63 安全編程原則 6 統(tǒng)一的安全規(guī)范 6 模塊劃分 6 最小化功能 7 最小化特權 7 對多任務、多進程加以關注 7 界面輸出最小化 7 使代碼簡單、最小化和易于修改 8 避免高危的服務、協(xié)議 8 數(shù)據(jù)和代碼分離 8 關鍵數(shù)據(jù)傳輸保護 8 禁止賦予用戶進程特權 8 使用適當?shù)臄?shù)據(jù)類型 9 使用經(jīng)過驗證的安全代碼 9 使用應用中間件 9 設計錯誤、 異常處理機制 9 提供備份機制 9 檢查傳遞變量的合法性 9 檢查所有函數(shù)返回代碼 9 修改面向用戶的操作的反饋缺省描述 9 文件操作的要求 10 其他編碼原則 104 應用安全分析 11 安全需求 11 安全威脅 11 Web安全漏洞 11 拒絕服務攻擊 12 嗅探攻擊 12 中間人攻擊 12 安全約束 135 安全編程要求 13 輸入處理 13 建立可信邊界 13 驗證各種來源的輸入 14 保證所有的輸入信息是被驗證過的 14 對輸入內容進行規(guī)范化處理后再進行驗證 15 選擇合適的數(shù)據(jù)驗證方式 15 防范元字符攻擊 15 拒絕驗證失敗的數(shù)據(jù) 15 在服務端進行驗證 15 建立統(tǒng)一的輸入驗證接口 16 控制寫入日志的信息 16 從服務器端提取關鍵參數(shù) 16 輸出處理 16 限制返回給客戶的信息 16 建立錯誤信息保護機制 16 數(shù)據(jù)庫訪問 16 合理分配數(shù)據(jù)庫訪問權限 16 合理存放數(shù)據(jù)庫連接帳號和密碼信息 17 使用參數(shù)化請求方式 17 對 SQL 語句中來自于不可信區(qū)域的輸入?yún)?shù)進行驗證 18 對數(shù)據(jù)庫操作的返回數(shù)據(jù)進行驗證 18 分次提取數(shù)據(jù) 18 通過 row(行)級別的訪問控制來使用數(shù)據(jù)庫 18 確保數(shù)據(jù)庫資源被釋放 18 文件操作 19 對上傳文件進行限制 19 把文件名以及文件內容作為不可信的輸入對待 19 安全的使用文件名 19 使用文件系統(tǒng)訪問控制 19 注意文件訪問競爭條件 19 安全使用臨時文件 20 確保文件系統(tǒng)資源被釋放 206 安全特征 20 關注應用的對象重用 20 用戶訪問控制信息的機密性 20 不要在客戶端存放敏感數(shù)據(jù) 20 避免內存溢出 21 可配置數(shù)據(jù)保護 21 禁止在源代碼中寫入口令 21 隨機數(shù) 21 使用可信的密碼算法 22 異常管理 227 應用安全設計規(guī)范 23 應用安全規(guī)劃 23 數(shù)據(jù)安全等級劃分 23 數(shù)據(jù)庫規(guī)劃 23 用戶權限 23 數(shù)據(jù)源設計 23 外部系統(tǒng)訪問 23 角色劃分 24 URL規(guī)劃 24 程序文件目錄規(guī)劃 24 數(shù)據(jù)及程序分離 24 靜態(tài)程序資源 24 程序文件分類 24 Cookie 24 文件安全 25 文件存儲 25 文件操作 25 文件類型 25 第三方組件安全 25 組件兼容性 25 組件安全及成熟度 25 組件配置 25 Web Service 25 RESTful Web Service 26 應用安全關注點 27 應用安全限制應對方案 29 外網(wǎng)隔離 29 外網(wǎng)文件操作 29 正向和反向隔離裝置(國網(wǎng)系統(tǒng)) 298 應用安全開發(fā)規(guī)范 30 Java及Web安全編程規(guī)范 30 不信任未知 30 數(shù)據(jù)層開發(fā) 30 會話管理 32 Cookie 33 輸入驗證 33 輸入文件名的驗證 34 輸出處理 34 敏感信息處理 36 異常信息處理 37 特殊頁面跳轉 37 文件操作 37 資源釋放 38 內存控制 38 外部程序調用漏洞 38 整數(shù)溢出 39 C++安全編程規(guī)范 39 不信任未知 39 免緩存區(qū)溢出 40 免緩整數(shù)溢出 42 域名合法性檢查 45 檢查返回值 46 產(chǎn)生隨機數(shù) 47 驗證輸入文件名 48 類設計注意事項 48 外部程序調用漏洞 50 臨時文件處理 501 背景與目標在Internet大眾化及Web技術飛速演變的今天,Web安全所面臨的挑戰(zhàn)日益嚴峻。使本組織能以標準的、規(guī)范的方式設計和編碼。 脆弱性脆弱性指計算機系統(tǒng)安全方面的缺陷,使得系統(tǒng)或其應用數(shù)據(jù)的保密性、完整性、可用性、訪問控制、監(jiān)測機制等面臨威脅。 死鎖死鎖是操作系統(tǒng)或軟件運行的一種狀態(tài):在多任務系統(tǒng)下,當一個或多個進程等待系統(tǒng)資源,而資源又被進程本身或其它進程占用時,就形成了死鎖。 參數(shù)化查詢參數(shù)化查詢(Parameterized Query 或 Parameterized Statement)是指在設計與數(shù)據(jù)庫鏈接并訪問數(shù)據(jù)時,在需要填入數(shù)值或數(shù)據(jù)的地方,使用參數(shù) (Parameter) 來給值,這個方法目前已被視為最有效可預防SQL注入攻擊 (SQL Injection) 的攻擊手法的防御方式?,F(xiàn)行Web瀏覽器亦普遍將HTTP和SSL相結合,從而實現(xiàn)安全通信。HTTPS不應與在RFC 2660中定義的安全超文本傳輸協(xié)議(SHTTP)相混。為網(wǎng)景公司的前雇員Lou Montulli在1993年3月所發(fā)明。 最小化功能根據(jù)“沒有明確允許的就默認禁止”的原則, 軟件應只包含那些為達到某個目標而確實需要的功能,不應包含只是在將來某個時間需要但需求說明書中沒有的功能。3. 將特權的有效時間或者可以有效的時間限制到絕對最小。使用結構化的編程語言,盡量避免使用遞歸和 Goto 聲明。特權用戶類型包括:1. 超級用戶。 提供備份機制為保證運行數(shù)據(jù)的完整性和可用性,軟件開發(fā)應設計有效的備份策略,根據(jù)業(yè)務和系統(tǒng)維護需要提供定期或不定期、自動或手動方式的備份機制。 如果某個函數(shù)不能保證下標所指向元素的有效性,或者根本不去檢查邊界時,不要使用該函
點擊復制文檔內容
公司管理相關推薦
文庫吧 www.dybbs8.com
備案圖鄂ICP備17016276號-1