l 是否驗證所有的輸入參數
l 是否在參數過程中傳遞敏感數據
l 是否為了安全問題而使用HTTP頭數據
10) 異常管理
l 是否使用結構化的異常處理
l 是否向客戶端公開了太多的信息
11) 審核和日志記錄
l 是否明確了要審核的活動
l 是否考慮如何流動原始調用這身份
2. 應用及傳輸安全
WEB應用系統的安全性從使用角度可以分為應用級的安全與傳輸級的安全,安全性測試也可以從這兩方面入手。
應用級的安全測試的主要目的是查找Web系統自身程序設計中存在的安全隱患,主要測試區域如下。
l 注冊與登陸:現在的Web應用系統基本采用先注冊,后登錄的方式。
A. 必須測試有效和無效的用戶名和密碼
B. 要注意是否存在大小寫敏感,
C. 可以嘗試多少次的限制
D. 是否可以不登錄而直接瀏覽某個頁面等。
l 在線超時:Web應用系統是否有超時的限制,也就是說,用戶登陸一定時間內(例如15分鐘)沒有點擊任何頁面,是否需要重新登陸才能正常使用。
l 操作留痕:為了保證Web應用系統的安全性,日志文件是至關重要的。需要測試相關信息是否寫進入了日志文件,是否可追蹤。
l 備份與恢復:為了防范系統的意外崩潰造成的數據丟失,備份與恢復手段是一個Web系統的必備功能。備份與恢復根據Web系統對安全性的要求可以采用多種手段,如數據庫增量備份、數據庫完全備份、系統完全備份等。出于更高的安全性要求,某些實時系統經常會采用雙機熱備或多級熱備。除了對于這些備份與恢復方式進行驗證測試以外,還要評估這種備份與恢復方式是否滿足Web系統的安全性需求。
傳輸級的安全測試是考慮到Web系統的傳輸的特殊性,重點測試數據經客戶端傳送到服務器端可能存在的安全漏洞,以及服務器防范非法訪問的能力。一般測試項目包括以下幾個方面。
l HTTPS和SSL測試:默認的情況下,安全HTTP(Soure HTTP)通過安全套接字SSL(Source Socket Layer)協議在端口443上使用普通的HTTP。HTTPS使用的公共密鑰的加密長度決定的HTTPS的安全級別,但從某種意義上來說,安全性的保證是以損失性能為代價的。除了還要測試加密是否正確,檢查信息的完整性和確認HTTPS的安全級別外,還要注意在此安全級別下,其性能是否達到要求。
l 服務器端的腳本漏洞檢查:存在于服務器端的腳本常常構成安全漏洞,這些漏洞又往往被黑客利用。所以,還要測試沒有經過授權,就不能在服務器端放置和編輯腳本的問題。
l 防火墻測試:防火墻是一種主要用于防護非法訪問的路由器,在Web系統中是很常用的一種安全系統。防火墻測試是一個很大很專業的課題。這里所涉及的只是對防火墻功能、設置進行測試,以判斷本Web系統的安全需求。
另推薦安全性測試工具:
Watchfire AppScan:商業網頁漏洞掃描器(此工具好像被IBM收購了,所以推薦在第一位)
AppScan按照應用程序開發生命周期進行安全測試,早在開發階段就進行單元測試和安全保證。Appscan能夠掃描多種常見漏洞,例如跨網站腳本、HTTP應答切開、參數篡改、隱藏值篡改、后門/調試選項和緩沖區溢出等等。
Acunetix Web Vulnerability Scanner:商業漏洞掃描器(目前用的比較多,不過這東東N占內存)
Acunetix WVS自動檢查您的網頁程序漏洞,例如SQL注入、跨網站腳本和驗證頁面弱密碼破解。Acunetix WVS有著非常友好的用戶界面,還可以生成個性化的網站安全評估報告。
文章來源于領測軟件測試網 http://www.k11sc111.com/