您現在的位置是:首頁 > 音樂首頁音樂

安全性測試|安全測試的常用方法

由 川石軟體測試 發表于 音樂2023-01-30
簡介(2)動態滲透測試動態滲透測試法主要是藉助工具或手工來模擬駭客的輸入,對應用程式進行安全性測試,進而發現系統中的安全性問題

安全測試怎麼測

安全性測試|安全測試的常用方法

安全性測試(Security Testing)是指有關驗證應用程式的安全等級和識別潛在安全性缺陷的過程,其主要目的是查詢軟體自身程式設計中存在的安全隱患,並檢查應用程式對非法侵入的防範能力,安全指標不同,測試策略也不同。

但安全是相對的,安全性測試並不能最終證明應用程式是安全的,而只能驗證所設立策略的有效性,這些對策是基於威脅分析階段所做的假設而選擇的。例如,測試應用軟體在防止非授權的內部或外部使用者的訪問或故意破壞等情況時的運作。

軟體安全是軟體領域中一個重要的子領域,系統安全性測試包括應用程式和作業系統兩個方面的安全性。而系統安全性又包括兩個方面的測試:一是軟體漏洞,設計上的缺陷或程式問題;二是資料庫的安全性,這也是系統安全性的核心。

安全測試的常用方法有以下幾種:

(1)靜態程式碼檢查

靜態程式碼檢查主要是透過程式碼走讀的方式對原始碼的安全性進行測試,常用的程式碼檢查方法有資料流、控制流、資訊流等,透過這些測試方法與安全規則庫進行匹配,進而發現潛在的安全漏洞。靜態程式碼檢查方法主要是在編碼階段進行測試,儘可能早地發現安全性問題。

(2)動態滲透測試

動態滲透測試法主要是藉助工具或手工來模擬駭客的輸入,對應用程式進行安全性測試,進而發現系統中的安全性問題。動態滲透測試一般在系統測試階段進行,但覆蓋率較低,因為在測試過程中很難覆蓋到所有的可能性,只能是儘量提供更多的測試資料來達到較高的覆蓋率。

(3)掃描程式中的資料

系統的安全性強調,在程式執行過程中資料必須是安全的,不能遭到破壞,否則會導致緩衝區溢位的攻擊。資料掃描主要是對記憶體進行測試,儘量發現諸如緩衝區溢位之類的漏洞,這也是靜態程式碼檢查和動態滲透測試很難測試到的。

從使用者認證、網路、資料庫和Web 四個角度進行安全性測試,需要注意以下幾個方面:

(1)使用者認證安全性測試

1) 系統中不同使用者許可權設定;

2) 系統中使用者是否出現衝突;

3) 系統不應該因使用者許可權改變而造成混亂;

4) 系統使用者密碼是否加密、是否可複製;

5) 是否可以透過絕對途徑登入系統;

6) 使用者退出後是否刪除其登入時的相關資訊;

7) 是否可以使用退出鍵而不透過輸入口令進入系統。

(2)網路安全性測試

1) 防護措施是否正確裝配完成,系統補丁是否正確;

2) 非授權攻擊,檢查防護策略的正確性;

3) 採用網路漏洞工具檢查系統相關漏洞(常用的兩款工具為NBSI 和IPhackerIP);

4) 採集木馬工具,檢查木馬情況;

5) 採用各種防外掛工具檢查程式外掛漏洞。

(3)資料庫安全性測試

1) 資料庫是否具備備份和恢復的功能;

2) 是否對資料進行加密;

3) 是否有安全日誌檔案;

4) 無關IP 禁止訪問;

5) 使用者密碼使用強口令;

6) 不同使用者賦予不同許可權;

7) 是否使用檢視和儲存過程;

(4)Web 安全性測試

1) 部署與基礎結構;

2) 輸入驗證;

3) 身份驗證;

4) 授權;

5) 配置管理;

6) 敏感資料;

7) 會話管理;

8) 加密;

9) 引數操作;

10) 異常管理;

11) 稽核和日誌記錄;