陳強(qiáng)
【摘 要】隨著當(dāng)今社會(huì)信息化的日新月異的發(fā)展,為了企業(yè)創(chuàng)先進(jìn)、爭(zhēng)一流,為了企業(yè)的明天,許多領(lǐng)導(dǎo)已經(jīng)或正準(zhǔn)備投入高額資金,建立大規(guī)模的計(jì)算機(jī)管理信息系統(tǒng)(MIS)。與此同時(shí),信息的安全保密性嚴(yán)重程度亦隨之水漲傳高。在系統(tǒng)軟件投入使用之前,執(zhí)行系統(tǒng)的數(shù)據(jù)庫(kù)、WEB應(yīng)用及客戶(hù)端、主機(jī)等方面的安全測(cè)試更是是軟件開(kāi)發(fā)過(guò)程的重中之重。測(cè)試過(guò)程中的測(cè)試要點(diǎn)就成為軟件測(cè)試工程師在執(zhí)行安全測(cè)試之前首要確定的需求與策略。
【關(guān)鍵詞】軟件測(cè)試;安全測(cè)試;測(cè)試要點(diǎn);策略
軟件開(kāi)發(fā)的完善給測(cè)試人員帶來(lái)巨大的壓力,從開(kāi)發(fā)至軟件投入使用,都不缺測(cè)試工程師的身影。其中過(guò)程需要六大質(zhì)量特性的測(cè)試、性能測(cè)試、甚至安全測(cè)試。針對(duì)安全保密性方面,測(cè)試工程師需要利用資源進(jìn)行測(cè)試要點(diǎn)的收集及測(cè)試用例的設(shè)計(jì),從而更多的發(fā)現(xiàn)軟件運(yùn)行時(shí)可能出現(xiàn)的安全漏洞。
一、數(shù)據(jù)庫(kù)安全的測(cè)試策略
數(shù)據(jù)庫(kù)安全是整個(gè)系統(tǒng)的核心,系統(tǒng)中所有用戶(hù)的信息全依靠數(shù)據(jù)庫(kù)的校驗(yàn)。在數(shù)據(jù)庫(kù)測(cè)試策略中,針對(duì)B/S架構(gòu)軟件最常用的有身份鑒別、安全審計(jì)、漏洞安全等三方面。
(一)身份鑒別:為的是測(cè)試數(shù)據(jù)庫(kù)系統(tǒng)賬戶(hù)口令和傳輸?shù)陌踩裕瑘?zhí)行過(guò)程中主用SELECT * FROM DBA_PROFILES命令,其中包涵的內(nèi)容有:1.數(shù)據(jù)庫(kù)系統(tǒng)密碼復(fù)雜度函數(shù)必須實(shí)現(xiàn)配置,以避免密碼被破解而導(dǎo)致用戶(hù)敏感信息泄露。2.用戶(hù)登錄系統(tǒng)失敗有處理機(jī)制,以避免有意人員利用會(huì)話(huà)失敗,進(jìn)行用戶(hù)并發(fā)攻擊數(shù)據(jù)庫(kù),致使數(shù)據(jù)庫(kù)崩潰。3.在用戶(hù)連接數(shù)據(jù)庫(kù)后閑置超時(shí),必須有配置自動(dòng)退出,以避免用戶(hù)敏感信息被惡意抓包。
(二)安全審計(jì):對(duì)數(shù)據(jù)庫(kù)系統(tǒng)日志審計(jì)的安全性進(jìn)行測(cè)試,保證數(shù)據(jù)庫(kù)審計(jì)策略配置必須達(dá)到基線(xiàn)要求。
(三)漏洞安全:同樣是對(duì)數(shù)據(jù)庫(kù)系統(tǒng)日志審計(jì)的安全進(jìn)行測(cè)試,保證數(shù)據(jù)庫(kù)能達(dá)到安全配置要求:1.數(shù)據(jù)庫(kù)必須存在拒絕服務(wù)攻擊配置。2.不能有遠(yuǎn)程溢出等安全漏洞。3.數(shù)據(jù)庫(kù)組件必須安全配置完備,無(wú)漏洞。4.數(shù)據(jù)庫(kù)內(nèi)核漏洞均已修復(fù)。
二、WEB應(yīng)用安全:B/S架構(gòu)已成為市場(chǎng)信息系統(tǒng)開(kāi)發(fā)的主流,而WEB應(yīng)用的安全防護(hù)更需要謹(jǐn)而慎之,下面羅列出針對(duì)WEB應(yīng)用安全的常見(jiàn)的測(cè)試策略
(一)密鑰管理:要求根據(jù)某個(gè)指定的標(biāo)準(zhǔn)規(guī)定的算法和密鑰長(zhǎng)度來(lái)生成密鑰。操作步驟:1.進(jìn)入Web應(yīng)用系統(tǒng),打開(kāi)密碼修改功能;2.查看Web應(yīng)用的密碼修改功能是否需要輸入原密碼。3.設(shè)置簡(jiǎn)單密碼123456,記錄返回結(jié)果。期望結(jié)果:修改密碼是需要輸入原密碼,并且不能設(shè)置簡(jiǎn)單密碼。
(二)輸出到TSF控制之外:經(jīng)由本功能輸出的用戶(hù)數(shù)據(jù)輸出時(shí)沒(méi)有輸出相關(guān)的安全屬性。操作步驟:1.使用webscarab對(duì)登錄操作進(jìn)行抓包;2.查看數(shù)據(jù)包內(nèi)容是否為明文傳輸。期望結(jié)果:數(shù)據(jù)包中的密碼已進(jìn)行加密處理。
(三)信息流控制功能:對(duì)每一個(gè)操作,主體和信息的安全屬性之間必須支持基于安全屬性的關(guān)系,TSF應(yīng)允許信息在受控主體和受控信息之間經(jīng)由受控操作流動(dòng)。操作步驟:1.打開(kāi)appscanweb安全掃描軟件;2.新建任務(wù);3.輸入域名;4.開(kāi)始掃描;5.記錄掃描結(jié)果。期望結(jié)果:不存在注入漏洞及跨站漏洞。
(四)TOE內(nèi)部傳送:數(shù)據(jù)在傳輸過(guò)程中,期間的所有設(shè)備都必須對(duì)傳輸數(shù)據(jù)的完整性座監(jiān)視。操作步驟:1.使用webscarab進(jìn)行抓包;2.修改數(shù)據(jù)包中內(nèi)容;3.查看返回信息。期望結(jié)果:無(wú)法修改數(shù)據(jù)包中內(nèi)容
(五)殘余信息保護(hù)(TSF數(shù)據(jù)管理):確保系統(tǒng)內(nèi)文件、目錄等資源所在的存儲(chǔ)空間,被釋放或重新分配給其它用戶(hù)前得到完全清除。
(六)訪(fǎng)問(wèn)控制功能:提供訪(fǎng)問(wèn)控制功能,依據(jù)安全策略控制用戶(hù)組對(duì)系統(tǒng)功能、文件、數(shù)據(jù)庫(kù)表等客體的訪(fǎng)問(wèn)。
(七)鑒別失敗:檢測(cè)系統(tǒng)對(duì)用戶(hù)多次嘗試登錄失敗,系統(tǒng)做出相應(yīng)的處理。操作步驟:1.連續(xù)輸入十次賬號(hào)密碼;2.查看系統(tǒng)對(duì)該賬號(hào)是否鎖定。期望結(jié)果:賬號(hào)被鎖定。
(八)用戶(hù)標(biāo)識(shí):在登錄網(wǎng)站前要求用戶(hù)必須輸入用戶(hù)名。操作步驟:1.打開(kāi)web登錄頁(yè)面;2.查看是否需要輸入用戶(hù)名和密碼才可登錄。期望結(jié)果:必須輸入用戶(hù)名和密碼。
(九)不可觀察性:要求功能或資源的使用不能被規(guī)定的用戶(hù)或主體觀察到,規(guī)定用戶(hù)隱私有關(guān)的信息在評(píng)估對(duì)象內(nèi)是分布式的。期望結(jié)果:1.進(jìn)入應(yīng)用系統(tǒng)-使用最高權(quán)限管理員登錄系統(tǒng),在用戶(hù)管理中查看有哪些級(jí)別用戶(hù)和用戶(hù)的權(quán)限;2.退出系統(tǒng)使用普通用戶(hù)登錄系統(tǒng),去訪(fǎng)問(wèn)非授權(quán)資源,和查看非授權(quán)的信息。期望結(jié)果:無(wú)敏感信息泄露。
(十)時(shí)間戳:評(píng)估對(duì)象的安全功能需為它自己的使用提供可靠的時(shí)間源。
(十一)評(píng)估對(duì)象訪(fǎng)問(wèn)旗標(biāo):在建立一個(gè)用戶(hù)會(huì)話(huà)之前,評(píng)估對(duì)象安全功能應(yīng)顯示有關(guān)未授權(quán)使用評(píng)估對(duì)象的一個(gè)勸告性警示信息。
(十二)會(huì)話(huà)鎖定:在一定時(shí)間內(nèi),用戶(hù)沒(méi)有做任何操作,系統(tǒng)則自動(dòng)鎖屏或顯示一個(gè)非重要功能的頁(yè)面,當(dāng)用戶(hù)再次使用時(shí),需要重新登錄。操作步驟:1.進(jìn)入web系統(tǒng);2.閑置5-10分鐘;3.刷新頁(yè)面;4.記錄返回結(jié)果。期望結(jié)果:賬戶(hù)已自動(dòng)退出。
三、主機(jī)安全:主機(jī)是系統(tǒng)客戶(hù)端與數(shù)據(jù)庫(kù)進(jìn)行數(shù)據(jù)交換的中心,在其上的安全跟數(shù)據(jù)庫(kù)安全相同,需要針對(duì)身份鑒別、安全審計(jì)、漏洞安全進(jìn)行探察
(一)身份鑒別:1.系統(tǒng)配置避免重復(fù)UID策略。2.系統(tǒng)配置密碼安全策略。
(二)安全審計(jì):操作系統(tǒng)中必須開(kāi)啟安全審計(jì)策略。
(三)漏洞安全:系統(tǒng)不存在高風(fēng)險(xiǎn)安全漏洞。
總之上述只是簡(jiǎn)單常見(jiàn)的安全測(cè)試要點(diǎn),安全測(cè)試涉及的知識(shí)面很廣,不同的軟件領(lǐng)域需要的測(cè)試點(diǎn)不同,此時(shí)則需要我們?cè)趯?shí)際工作過(guò)程中自我總結(jié)出屬于自己并適合公司的測(cè)試要點(diǎn)。
參考文獻(xiàn):
[1]GB-T 16260.1-2006 軟件工程 產(chǎn)品質(zhì)量.
[2]GBT 15532-2008 計(jì)算機(jī)軟件測(cè)試規(guī)范.
[3]GBT 25000.51-2010 軟件工程 軟件產(chǎn)品質(zhì)量要求與評(píng)價(jià)(SquaRE)商業(yè)現(xiàn)貨(COTS)軟件產(chǎn)品的質(zhì)量要求和測(cè)試細(xì)則.