信息化應(yīng)用系統(tǒng)開發(fā)安全規(guī)范_第1頁
信息化應(yīng)用系統(tǒng)開發(fā)安全規(guī)范_第2頁
信息化應(yīng)用系統(tǒng)開發(fā)安全規(guī)范_第3頁
信息化應(yīng)用系統(tǒng)開發(fā)安全規(guī)范_第4頁
信息化應(yīng)用系統(tǒng)開發(fā)安全規(guī)范_第5頁
已閱讀5頁,還剩5頁未讀 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)

文檔簡介

1、Q/CDT XXXXX201X信息化應(yīng)用系統(tǒng)開發(fā)安全規(guī)范1 概述軟件不安全的因素主要來源于兩個方面,一是軟件自身存在錯誤和缺陷引起的安全漏洞,二是來自外部的攻擊。良好的軟件開發(fā)過程管理可以很好地減少軟件自身缺陷,并有效抵抗外部的攻擊。本規(guī)范主要規(guī)定了集團信息化應(yīng)用系統(tǒng)在系統(tǒng)開發(fā)的各個階段所應(yīng)遵守的各種安全規(guī)范,將在不同階段中所需要注意的安全問題和相關(guān)的安全規(guī)范進(jìn)行進(jìn)一步的描述和規(guī)定,以提高集團信息化應(yīng)用系統(tǒng)的安全性和抵抗外部攻擊的能力。2 可行性計劃可行性計劃是對項目所要解決的問題進(jìn)行總體定義和描述,包括了解用戶的要求及現(xiàn)實環(huán)境,從技術(shù)、經(jīng)濟和需求3個方面研究并論證項目的可行性,編寫可行性研究

2、報告,探討解決問題的方案,并對可供使用的資源(如硬件、軟件、人力等)成本,可取得的效益和開發(fā)進(jìn)度作出估計,制訂完成開發(fā)任務(wù)的實施計劃。2.1 階段性成果可行性研究報告。2.2 可行性研究報告重點如下4個方面:1、設(shè)計方案可行性研究報告的需對預(yù)先設(shè)計的方案進(jìn)行論證,設(shè)計研究方案,明確研究對象。2、內(nèi)容真實可行性研究報告涉及的內(nèi)容以及反映情況的數(shù)據(jù),必須絕對真實可靠,不許有任何偏差及失誤。可行性研究報告中所運用資料、數(shù)據(jù),都要經(jīng)過反復(fù)核實,以確保內(nèi)容的真實性。3、預(yù)測準(zhǔn)確可行性研究是投資決策前的活動,對可能遇到的問題和結(jié)果的估計,具有預(yù)測性。因此,必須進(jìn)行深入地調(diào)查研究,充分地占有資料,運用切合實

3、際的預(yù)測方法,科學(xué)地預(yù)測未來前景。4、論證嚴(yán)密論證性是可行性研究報告的一個顯著特點。要使其有論證性,必須做到運用系統(tǒng)的分析方法,圍繞影響項目的各種因素進(jìn)行全面、系統(tǒng)的分析,既要作宏觀的分析,又要作微觀的分析。3 需求分析軟件需求分析就是對開發(fā)什么樣的軟件的一個系統(tǒng)的分析與設(shè)想,它是一個對用戶的需求進(jìn)行去粗取精、去偽存真、正確理解,然后把它用軟件工程開發(fā)語言表達(dá)出來的過程。需求分析階段主要工作是完成需求對業(yè)務(wù)的表達(dá),這體現(xiàn)在對需求規(guī)格說明書中,包括業(yè)務(wù)流程,子系統(tǒng)劃分,狀態(tài)圖,數(shù)據(jù)流圖等,最終通過用戶用例完成業(yè)務(wù)分析測試。需求分析階段最大的隱患即需求未能準(zhǔn)確地描述表達(dá)對用戶需求的真正正確理解,因

4、此,需求分析階段的安全工作,應(yīng)主要在對用戶需求真正準(zhǔn)確的理解上。需求分析階段需深入描述軟件的功能和性能,確定軟件設(shè)計的約束和軟件同其他系統(tǒng)元素的接口細(xì)節(jié),定義軟件的其他有效性需求,借助于當(dāng)前系統(tǒng)的邏輯模型導(dǎo)出目標(biāo)系統(tǒng)邏輯模型,解決目標(biāo)系統(tǒng)“做什么”的問題。需求分析階段需形成的文檔包括需求分析說明書、業(yè)務(wù)分析測試報告、用戶使用手冊初稿。需求分析可分為需求提出、需求描述及需求評審三個階段。3.1 需求提出需求主要集中于描述系統(tǒng)目的。開發(fā)人員和用戶確定一個問題領(lǐng)域,并定義一個描述該問題的系統(tǒng),形成系統(tǒng)規(guī)格說明。3.2 需求描述在需求分析階段分析人員的主要任務(wù)是:對用戶的需求進(jìn)行鑒別、綜合和建模,清除

5、用戶需求的模糊性、歧義性和不一致性,分析系統(tǒng)的數(shù)據(jù)要求,為原始問題及目標(biāo)軟件建立邏輯模型。分析人員應(yīng)發(fā)現(xiàn)并提出哪些要求是由于用戶的片面性或短期行為所導(dǎo)致的不合理要求,哪些是用戶尚未提出但具有真正價值的潛在需求。3.3 需求評審在需求評審階段,分析人員要在用戶和軟件設(shè)計人員的配合下對自己生成的需求規(guī)格說明和初步的用戶手冊進(jìn)行復(fù)核,以確保軟件需求的完整、準(zhǔn)確、清晰、具體,并使用戶和軟件設(shè)計人員對需求規(guī)格說明和初步的用戶手冊的理解達(dá)成一致。一旦發(fā)現(xiàn)遺漏或模糊點,必須盡快更正,再行檢查。需求評審內(nèi)容需至少包含以下內(nèi)容:1、 需求分析進(jìn)度日程實施計劃進(jìn)行需求分析時,應(yīng)注意一切信息與需求都是站在用戶的角度

6、上。要避免分析員的主觀想象,并將分析進(jìn)度提交給用戶,以確保需求分析過程及時與用戶溝通交流,讓用戶進(jìn)行檢查與評價,從而達(dá)到需求分析的準(zhǔn)確性。2、 描述軟件的功能和性能確定軟件設(shè)計的限制和軟件同其它系統(tǒng)元素的接口細(xì)節(jié)。3、 需求評審的目的通過需求分析,逐步細(xì)化對軟件的要求,描述軟件要處理的數(shù)據(jù)域,并給軟件開發(fā)提供一種可轉(zhuǎn)化為數(shù)據(jù)設(shè)計、結(jié)構(gòu)設(shè)計和過程設(shè)計的數(shù)據(jù)和功能表示。在軟件開發(fā)完成后,制定的需求分析說明書還要為評價軟件質(zhì)量提供依據(jù)。3.4 需求分析的基本原則:1、開發(fā)安全需求分析計劃應(yīng)由項目開發(fā)單位、信息化主管部門、業(yè)務(wù)主管部門共同商議決定。2、應(yīng)用系統(tǒng)安全需求應(yīng)能夠達(dá)到業(yè)務(wù)所期望的安全水平。3

7、、所有關(guān)于應(yīng)用系統(tǒng)的業(yè)務(wù)更新或改進(jìn)原則上都必須基于業(yè)務(wù)需求,并有業(yè)務(wù)事件支持。4業(yè)務(wù)需求是系統(tǒng)更新和改動的基礎(chǔ),因此必須清晰明確地定義業(yè)務(wù)的需求,禁止在業(yè)務(wù)需求未經(jīng)業(yè)務(wù)部門和主要負(fù)責(zé)人員認(rèn)可的情況下,盲目地進(jìn)行開發(fā)工作。5、系統(tǒng)的每一次更新或改進(jìn)都必須重新對安全需求進(jìn)行定義、分析和測試評估,以保證不會對業(yè)務(wù)造成影響。6、系統(tǒng)設(shè)計前,需建立開發(fā)安全需求分析報告,并通過信息化主管部門審核。7、應(yīng)用系統(tǒng)開發(fā)需符合相關(guān)法律法規(guī)上的要求,符合相關(guān)的行業(yè)標(biāo)準(zhǔn)和管理制度。4 設(shè)計軟件設(shè)計通常分為概要設(shè)計和詳細(xì)設(shè)計兩個階段,主要任務(wù)就是將軟件分解成模塊是指能實現(xiàn)某個功能的數(shù)據(jù)和程序說明、可執(zhí)行程序的程序單元。

8、概要設(shè)計就是結(jié)構(gòu)設(shè)計,其主要目標(biāo)就是給出軟件的模塊結(jié)構(gòu),用軟件結(jié)構(gòu)圖表示。詳細(xì)設(shè)計的首要任務(wù)就是設(shè)計模塊的程序流程、算法和數(shù)據(jù)結(jié)構(gòu),以及設(shè)計數(shù)據(jù)庫。系統(tǒng)的設(shè)計需達(dá)到一個從來沒有接觸過的人一看就能從各個方面都對系統(tǒng)的作用,功能,實現(xiàn)方面有一個大概了解,并為以后的各類詳細(xì)設(shè)計文檔提供一個指引和方向。設(shè)計析階段需形成的文檔包括概要設(shè)計說明書、詳細(xì)設(shè)計說明書。設(shè)計階段的主要安全工作包括:4.1 功能劃分設(shè)計階段的功能劃分不合理,難以發(fā)現(xiàn),且不好處理。因此功能模塊設(shè)計需詳細(xì)描述系統(tǒng)有那些主要功能,這些功能應(yīng)該用何種技術(shù),大致是如何實現(xiàn)的,以便發(fā)現(xiàn)問題。4.2 模塊協(xié)作描述模塊間如何協(xié)同運作的,以便發(fā)現(xiàn)問

9、題。4.3 系統(tǒng)定級安全設(shè)計描述系統(tǒng)應(yīng)該具有的安全級別,以及達(dá)到此安全等級的所采用的技術(shù)。4.4 隱通道本來受安全策略限制不能進(jìn)行通信的實體,利用可執(zhí)行的操作的副作用而實現(xiàn)通信。4.5 認(rèn)證不充分只有分配有足夠權(quán)限訪問的操作進(jìn)程才可以訪問和操作相應(yīng)的進(jìn)程,攻擊者同城會采取一些攻擊獲權(quán)限而執(zhí)行一些非法操作,使得系統(tǒng)不可靠。在設(shè)計中,需加強訪問孔子,確保操作都經(jīng)過相應(yīng)的授權(quán)認(rèn)證允許。4.6 緩沖區(qū)溢出緩沖區(qū)是分配的一段大小確定的內(nèi)存空間,是內(nèi)存中用來存放數(shù)據(jù)的地方。發(fā)生緩沖區(qū)溢出時,會覆蓋相鄰內(nèi)存塊,從而引發(fā)程序安全問題。因此在設(shè)計階段,就需做好緩沖區(qū)溢出防范工作。4.7 并發(fā)控制策略并發(fā)作為一種

10、提高計算機系統(tǒng)運行效率的重要手段,在得到廣泛應(yīng)用的同時,其機制本身容易引起以下問題(1)競爭(2)活鎖(3)死鎖設(shè)計階段需考慮到并發(fā)帶來的上述問題,并做處理。4.8 TOCTTOU錯誤是一種利用公用可寫文件,攻擊者可以創(chuàng)建同名連接到其訪問的文件,來達(dá)到非法訪問的目的。因此,系統(tǒng)設(shè)計時,需有相應(yīng)的防護策略。4.9 數(shù)據(jù)庫重要信息的保護 數(shù)據(jù)庫中的重要信息需加密存儲,并有相應(yīng)的防控措施。4.10 配置管理:對管理界面進(jìn)行未經(jīng)授權(quán)的訪問、具有更新配置數(shù)據(jù)的能力以及對用戶帳戶和帳戶配置文件進(jìn)行未經(jīng)授權(quán)的訪問。4.11 身份驗證口令長度不低于8位;口令至少需數(shù)字和字符串組合;口令需加密存儲;口令驗證通信

11、信道需加密,以保護身份驗證;使用強密碼,支持密碼有效期和帳戶禁用。4.12 訪問控制任何用戶如果希望訪問應(yīng)用系統(tǒng)中的某一部分,則必須通過唯一的認(rèn)證授權(quán)方式。4.13 授權(quán)使用最少超級管理帳戶,每個系統(tǒng)不得多于2個;不得采用集中授權(quán),凡是授權(quán),均進(jìn)行單獨授權(quán)(初始化授權(quán)可批量,但初始化權(quán)限分配必須經(jīng)過信息化主管部門審核);限制用戶訪問最小權(quán)限資源。4.14 收權(quán)用戶離職或其它原因不需再訪問系統(tǒng),需要及時有關(guān)系統(tǒng)的權(quán)限 4.15 敏感數(shù)據(jù)對網(wǎng)絡(luò)上傳輸?shù)拿舾袛?shù)據(jù)進(jìn)行加密;確保通信通道的安全;對敏感數(shù)據(jù)存儲提供強訪問控制。4.16 Cookie管理不要在cookie 中永久性存儲敏感數(shù)據(jù);不要使用 H

12、TTP-GET 協(xié)議傳遞敏感數(shù)據(jù);不要通過 HTTP 連接傳遞身份驗證 cookie。在授權(quán) cookie 內(nèi)設(shè)置安全的 cookie 屬性,以便指示瀏覽器只通過 HTTPS 連接向服務(wù)器傳回 cookie。4.17 遠(yuǎn)程維護管理在管理界面上使用身份驗證后授權(quán);遠(yuǎn)程管理時要確保通信通道的安全。4.18 會話管理限制會話時常,具體時長由業(yè)務(wù)系統(tǒng)決定,閑置會話原則上不超過15分鐘。保護會話狀態(tài),以防止未經(jīng)授權(quán)的訪問。4.19 加密考慮到集團公司會代表國家榮譽,加密算法,需采用我國的算法或我國改造的算法。SM1-SM9算法,SSF33算法,祖沖之對稱秘鑰算法等,密鑰最低不得低于32位。定期回收管理密

13、鑰。4.20 異常管理設(shè)計好異常處理機制。4.21 審核和記錄在所有應(yīng)用中審核和記錄活動,確保日志文件訪問的安全,定期備份日志文件。4.22 5.1.12后門預(yù)防控制系統(tǒng)須有機制,防止惡意攻擊繞過安全性控制而獲取對系統(tǒng)資源訪問和控制。4.23 安全設(shè)計評審應(yīng)用系統(tǒng)設(shè)計方案需要由信息化主管部門進(jìn)行組織安全評審。4.24 確保日志管理機制健全 建立可根據(jù)情況自由設(shè)置的日志管理機制,日志記錄的范圍和詳細(xì)程度可以根據(jù)需求自行定制,且可以實現(xiàn)在應(yīng)用系統(tǒng)的使用過程中進(jìn)行日志的定制和記錄。保留所有與系統(tǒng)開發(fā)相關(guān)的程序庫的更新審核記錄。日志信息不可刪除和修改,日志信息需是自動記錄,不允許存在手工參與情況。4.

14、25 審計安全規(guī)范(1)應(yīng)包括每個用戶的安全審計功能,對應(yīng)用系統(tǒng)的重要安全事件進(jìn)行審計。(2)應(yīng)保證無法單獨中斷審計進(jìn)程,審計記錄無法刪除、修改或覆蓋。(3)審計內(nèi)容應(yīng)包含事件主要信息:日期、時間、操作人、類型、事件信息和結(jié)果等。(4)應(yīng)提供審計記錄數(shù)據(jù)統(tǒng)計、查詢。4.26 數(shù)據(jù)及通信有效性管理規(guī)范(1)應(yīng)提供校驗碼技術(shù),保證通信過程的數(shù)據(jù)完整性。(2)應(yīng)具有在請求的情況下為數(shù)據(jù)原發(fā)者或接收者提供數(shù)據(jù)原發(fā)和接收數(shù)據(jù)的功能。(3)提供有效性驗證功能,保證人機接口或通過通信接口輸入的數(shù)據(jù)格式或長度符合系統(tǒng)設(shè)定要求。(4)提供自動保護功能,當(dāng)故障發(fā)生時自動保護當(dāng)前狀態(tài),保證系統(tǒng)能夠恢復(fù)。(5)當(dāng)應(yīng)用

15、系統(tǒng)的通信雙方中的一方在一段時間內(nèi)未作任何響應(yīng),另一方應(yīng)能夠自動結(jié)束會話。(6)應(yīng)能夠?qū)ο到y(tǒng)的最大并發(fā)會話連接數(shù)進(jìn)行限制。(7)應(yīng)能夠?qū)蝹€帳戶的多重并發(fā)會話進(jìn)行限制。(8)應(yīng)能夠?qū)σ粋€時間段內(nèi)可能的并發(fā)會話連接數(shù)進(jìn)行限制。(9)應(yīng)能夠?qū)σ粋€訪問帳戶或一個請求進(jìn)程占用的資源分配最大限額和最小限額。(10)、應(yīng)能夠?qū)ο到y(tǒng)服務(wù)水平降低到預(yù)先規(guī)定的最小值進(jìn)行檢測和報警。(11)應(yīng)提供服務(wù)優(yōu)先級設(shè)定功能,并在安裝后根據(jù)安全策略設(shè)定訪問帳戶或請求進(jìn)程的優(yōu)先級,根據(jù)優(yōu)先級分配系統(tǒng)資源。5 編碼軟件編碼是指把軟件設(shè)計轉(zhuǎn)換成計算機可以接受的程序,即寫成以某一程序設(shè)計語言表示的“源程序清單”。5.1 編碼階段的

16、主要工作:1、基于軟件產(chǎn)品開發(fā)質(zhì)量要求,充分了解開發(fā)語言、工具的特性和風(fēng)格,選取合適的編程語言。2、編碼。3、提供源程序清單。5.2 編碼階段需要考慮的安全問題包括:1、內(nèi)存安全的實現(xiàn) 編程過程中內(nèi)存數(shù)據(jù)出現(xiàn)的常見安全問題,如緩沖區(qū)溢出、整數(shù)溢出、字符串格式化等。2、線程/進(jìn)程安全如線程同步、線程死鎖等3、科學(xué)地處理異常異常是程序設(shè)計中必須處理的,主要解決怎樣處理異常能夠保證系統(tǒng)的安全性。4、輸入輸出的安全保障如對輸入的合法性檢測。5、權(quán)限控制的處理系統(tǒng)中涉及授權(quán)和限制訪問,需要有完善的權(quán)限控制機制。6、數(shù)據(jù)的保護數(shù)據(jù)篡改和抵賴的防護和檢驗除了加密解密外,還需要對對信息來源的鑒別、對信息的完整

17、和不可否認(rèn)等功能進(jìn)行保障。7、代碼的優(yōu)化處理所有的程序,都需經(jīng)過代碼優(yōu)化,代碼性能的好壞有時候不僅關(guān)系到系統(tǒng)的運行效率,也關(guān)系到系統(tǒng)的安全。8、Web編程安全。Web編程中安全問題多種多樣,但至少應(yīng)有應(yīng)付跨站腳本、SQL注入、Web認(rèn)證攻擊、URL操作攻擊等安全問題。 9、參數(shù)變量處理如果需要設(shè)置變量,不能使用缺失的默認(rèn)值,如需設(shè)置PATH為一個已知的值,而不能使用啟動時的缺省值。10、SQL規(guī)范(1)系統(tǒng)須有完善的防止sql注入處理機制。(2)SQL 語句的參數(shù)應(yīng)以變量形式傳入。11、頁面請求處理應(yīng)校驗參數(shù)的長度WEB 服務(wù)器在接受頁面請求時,應(yīng)校驗參數(shù)的最大長度,截斷超出最大長度的范圍。1

18、2、登錄失敗信息錯誤提示W(wǎng)EB 服務(wù)器在接受用戶登錄請求時,不應(yīng)區(qū)分登錄失敗的提示信息(如:用戶名不存在、密碼錯誤、密碼已過期等),應(yīng)采用統(tǒng)一的失敗提示信息(如:錯誤的用戶名或密碼)。 13、錯誤提示信息規(guī)范所有對用戶顯示的錯誤信息都不應(yīng)暴露任何關(guān)于系統(tǒng)、網(wǎng)絡(luò)或應(yīng)用程序的敏感信息。如果需要的話,應(yīng)使用包含編號的一般的錯誤信息,這種信息只有開發(fā)者或支持小組才能理解。14、開源軟件管理(1)開源的產(chǎn)品、平臺及實現(xiàn)的功能應(yīng)符合項目的需求。(2)開源License需適用于產(chǎn)品,若無License或License不友好的,需進(jìn)行開源產(chǎn)品使用的風(fēng)險評估。(3)開源軟件的代碼需整潔、注釋完善。(4)選取的開

19、源產(chǎn)品的文檔說明需齊全。15、開發(fā)版本管理(1)在應(yīng)用系統(tǒng)開發(fā)過程中使用配置及版本管理工具管理開發(fā)過程中的權(quán)限控制、源代碼和相關(guān)文檔的版本控制、變更管理。(2)保證開發(fā)、測試、正式運營環(huán)境的隔離,控制開發(fā)代碼的安全傳輸。(3)不能使用正式運營環(huán)境的數(shù)據(jù)作為測試數(shù)據(jù),如必須使用,需要進(jìn)行數(shù)據(jù)處理。(4)應(yīng)用系統(tǒng)軟件版本審批。對應(yīng)用系統(tǒng)的版本的升級,應(yīng)確認(rèn)當(dāng)前的版本為最新的版本,舊的版本應(yīng)進(jìn)行歸檔,不得隨意丟棄或刪除。16、應(yīng)用系統(tǒng)版本升級計劃(1)制定相關(guān)的升級計劃,確保將系統(tǒng)升級對業(yè)務(wù)的影響降至最低。(2)應(yīng)用系統(tǒng)軟件版本升級后需進(jìn)行測試,確認(rèn)系統(tǒng)的各種安全特性。(3)應(yīng)使用軟件加鎖技術(shù)防止不

20、同版本相互覆蓋的情況。(4)當(dāng)版本變更時應(yīng)在更新的版本中記錄變更的詳細(xì)描述。(5)應(yīng)提供版本的合并功能。(6)版本的更改應(yīng)只允許指定的人員進(jìn)行操作。(7)應(yīng)記錄所有的版本變更的日志,其中包括更改日期、更改前版本號、更改后版本號、更改人、審批人等信息。17、開發(fā)日志管規(guī)范(1)系統(tǒng)開發(fā)中的相關(guān)日志文件應(yīng)根據(jù)開發(fā)周期定期審核。(2)開發(fā)人員權(quán)限定期(3個月)審核一次。18、外包的管理規(guī)范應(yīng)對外包開發(fā)進(jìn)行管理,保證軟件代碼的準(zhǔn)確性、控制惡意代碼、邏輯炸彈等,可以采用代碼抽查、簽署合同等模式來實現(xiàn)。19、開發(fā)環(huán)境安全管理規(guī)范(1)軟件開發(fā)環(huán)境由開發(fā)服務(wù)器、開發(fā)用戶終端、網(wǎng)絡(luò)控制域與端口、其他配套輸入輸

21、出和存儲設(shè)備構(gòu)成;(2)軟件開發(fā)環(huán)境應(yīng)與正式運營環(huán)境在物理上隔離;(3)軟件開發(fā)環(huán)境與測試環(huán)境在邏輯上分開;(4)規(guī)定軟件開發(fā)環(huán)境的配置標(biāo)準(zhǔn)和實際配置維護日志;(5)軟件開發(fā)環(huán)境避免無關(guān)軟件和數(shù)據(jù)文件的安裝復(fù)制,防止有害代碼植入和傳播;20、其它(1)應(yīng)從正規(guī)的軟件供應(yīng)商那里購買相關(guān)的軟件或程序或中間件。(2)應(yīng)檢驗和驗證源程序和源代碼。(3)在系統(tǒng)正式投入使用之前應(yīng)進(jìn)行評估,如一些行業(yè)的標(biāo)準(zhǔn)認(rèn)證評估。(4)在系統(tǒng)正式投入使用后,應(yīng)嚴(yán)格管理源代碼的訪問、升級和修改。(5)應(yīng)使用有資質(zhì)的開發(fā)人員操作密鑰系統(tǒng)。(6)不得隨便安裝別人給的軟件,特別是不得隨便打開電子郵件中的附件,一些可執(zhí)行文件必須先

22、進(jìn)行病毒及惡意代碼的掃描。6 測試軟件測試的目的是以較小的代價發(fā)現(xiàn)盡可能多的錯誤,軟件測試的關(guān)鍵在于設(shè)計一套出色的測試用例(測試數(shù)據(jù)與功能和預(yù)期的輸出結(jié)果組成了測試用例)。普通的功能測試的主要目的是:(1)確保軟件不會去完成沒有預(yù)先設(shè)計的功能(2)確保軟件能夠完成預(yù)先設(shè)計的功能安全測試的主要目的是:要搶在攻擊者之前盡可能多地找到軟件中的漏洞。以減少軟件遭到攻擊的可能性。安全性測試至少至少應(yīng)考慮的問題:6.1 用戶認(rèn)證安全的測試要考慮問題(1)明確區(qū)分系統(tǒng)中不同用戶權(quán)限(2)系統(tǒng)中會不會出現(xiàn)用戶沖突(3)系統(tǒng)會不會因用戶的權(quán)限的改變造成混亂(4)用戶登陸密碼是否是可見、可復(fù)制(5)是否可以通過絕

23、對途徑登陸系統(tǒng)(拷貝用戶登陸后的鏈接直接進(jìn)入系統(tǒng))(6)用戶推出系統(tǒng)后是否刪除了所有鑒權(quán)標(biāo)記,是否可以使用后退鍵而不通過輸入口令進(jìn)入系統(tǒng)6.2 數(shù)據(jù)庫安全考慮問題(1)系統(tǒng)重要數(shù)據(jù)是否機密(2)系統(tǒng)數(shù)據(jù)的完整性(3)系統(tǒng)數(shù)據(jù)可管理性(4)系統(tǒng)數(shù)據(jù)的獨立性(5)系統(tǒng)數(shù)據(jù)可備份和恢復(fù)能力6.3 安全測試的內(nèi)容案例和參考方法1、輸入驗證測試,包括如下方面(1)數(shù)據(jù)類型(字符串,整型,實數(shù),等)(2)允許的字符集的最小和最大的長度(3)是否允許空輸入(4)參數(shù)是否是必須的(5)重復(fù)是否允許(6)數(shù)值范圍(7)特定的值(枚舉型)(8)特定的模式(正則表達(dá)式)2、問題訪問控制測試主要用于需要驗證用戶身份以

24、及權(quán)限的頁面,復(fù)制該頁面的url地址,關(guān)閉該頁面以后,查看是否可以直接進(jìn)入該復(fù)制好的地址從一個頁面鏈到另一個頁面的間隙可以看到URL地址或直接輸入該地址,可以看到自己沒有權(quán)限的頁面信息3、會話管理測試系統(tǒng)的某些功能不允許用戶瀏覽,如果必須要一個用戶列表,并對列表中和未有在列表中的用戶進(jìn)行權(quán)限測試。4、跨站腳本(XSS)測試攻擊者使用跨站腳本來發(fā)送惡意代碼給沒有發(fā)覺的用戶,竊取他機器上的任意資料。測試參考方法:HTML標(biāo)簽:<>;轉(zhuǎn)義參考字符:&(&);<(<);>(>); (空格)。腳本參考語言:特殊字符、最小和最大的長度、是否允許空輸入。5

25、、緩沖區(qū)溢出測試用戶使用緩沖區(qū)溢出來破壞web應(yīng)用程序的棧,通過發(fā)送特別編寫的代碼到web程序中,攻擊者可以讓web應(yīng)用程序來執(zhí)行任意代碼。 6、注入式漏洞測試?yán)阂粋€驗證用戶登陸的頁面,如果使用的sql語句為: Select*from table A where username+username+and password=+ password +。Sql 輸入 or 11 就可以不輸入任何password進(jìn)行攻擊。7、不恰當(dāng)?shù)漠惓L幚沓绦蛟趻伋霎惓5臅r候給出了比較詳細(xì)的內(nèi)部錯誤信息,暴露了不應(yīng)該顯示的執(zhí)行細(xì)節(jié),網(wǎng)站存在潛在漏洞。8、不安全的存儲,沒有加密關(guān)鍵數(shù)據(jù)測試?yán)簐iews

26、ource:http地址可以查看源代碼 在頁面輸入密碼,頁面顯示的是*,右鍵,查看源文件就可以看見剛才輸入的密碼。9、拒絕服務(wù)測試攻擊者可以從一個主機產(chǎn)生足夠多的流量來耗盡狠多應(yīng)用程序,最終使程序陷入癱瘓。 10、不安全的配置管理測試Config中的鏈接字符串以及用戶信息,郵件,數(shù)據(jù)存儲信息都需要加以保護。至少應(yīng)配置所有的安全機制,關(guān)掉所有不使用的服務(wù),設(shè)置角色權(quán)限帳號,使用日志和警報。11、漏洞測試負(fù)責(zé)安全測試工作的人員應(yīng)通過工具或人工方式,對軟件執(zhí)行漏洞識別測試,盡可能識別軟件漏洞、后門等隱患,常見的隱患包括堆SQL注入漏洞、跨站腳本漏洞、緩沖區(qū)溢出漏洞、拒絕服務(wù)漏洞等。負(fù)責(zé)安全測試工作的人員應(yīng)對軟件執(zhí)行滲透測試,確定所識別漏洞被利用的難度及造成的后果。12、測試用例保護對于涉及公司及員工敏感數(shù)據(jù)或隱私數(shù)據(jù)的測試用例,測試人員應(yīng)采取插入冗余數(shù)據(jù)和訪問授權(quán)等保護措施,測試結(jié)束后,測試人員應(yīng)及時刪除這些測試數(shù)據(jù)。13、測試過程中的安全測試數(shù)據(jù)應(yīng)選擇、保護和控制;應(yīng)避免使用包含涉密信息的運行數(shù)據(jù)庫用于測試。如果測試使用了涉密信息,那么在使用之前應(yīng)去除或修改所有的敏感細(xì)節(jié)和內(nèi)容。在應(yīng)用系統(tǒng)測試中,使用正式運行系統(tǒng)數(shù)據(jù)進(jìn)行測試應(yīng)由數(shù)據(jù)所有人授權(quán),使用敏感的正式運行數(shù)據(jù)測試應(yīng)進(jìn)行變形處理。6.4

溫馨提示

  • 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)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

最新文檔

評論

0/150

提交評論