一、設計安全性測試用例
1.定義
安全測試是在軟件產(chǎn)品開發(fā)基本完成時,驗證產(chǎn)品是否符合安全需求定義和產(chǎn)品質(zhì)量標準的過程。
2.概念
安全測試是檢查系統(tǒng)對非法侵入滲透的防范能力。
3.準則
理論上來講,只要有足夠的時間和資源,沒有無法進入的系統(tǒng)。因此,系統(tǒng)安全設計的準則是使非法侵入的代價超過被保護信息的價值。
4.目標
通過對系統(tǒng)進行精心、全面的脆弱性安全測試,發(fā)現(xiàn)系統(tǒng)未知的安全隱患并提出相關建議,確保系統(tǒng)的安全性。安全性一般分為應用程序級別和系統(tǒng)級別,區(qū)別如下:
應用程序級別:包括對應數(shù)據(jù)或業(yè)務功能的訪問,核實應用程序的用戶權(quán)限只能操作被授權(quán)訪問的那些功能或數(shù)據(jù)。
系統(tǒng)級別:包括對操作系統(tǒng)的目錄或遠程訪問,主要核實具備系統(tǒng)和應用程序訪問權(quán)限的操作者才能訪問系統(tǒng)和應用程序。
5.安全測試工具
序號 | 名稱 | 簡介 |
1 | IBM AppScan | 一個名列前茅的web應用安全工具,可自動進行安全漏洞評估、掃描和檢測所有常見的web應用安全漏洞,如:SQL注入、跨站點腳本攻擊(CSS)、緩沖區(qū)溢出等 |
2 | Burp Suite | 一個用于攻擊web應用程序的集成平臺,包含大量的安全測試工具,并為這些工具設計了對外訪問接口,以加快攻擊應用程序的過程 |
3 | Metasploit | 一款開源的安全漏洞檢測工具,可以幫助安全人員和IT專業(yè)人士識別安全性問題,挖掘漏洞,攻擊漏洞,并評估漏洞風險級別 |
4 | Wireshark | 適用于Windows和Linux的網(wǎng)絡協(xié)議分析工具,也是一個很出名的數(shù)據(jù)包分析工具,可以檢查網(wǎng)絡流量,是觀察TCP/IP異常流量的很好的工具 |
5 | Kail Linux | 目前比較流行的安全滲透測試平臺,包含了最新的安全測試工具,允許用戶從CD或者U盤啟動,通過U盤來實施安全滲透測試 |
延伸閱讀:
二、Session安全
Session是客戶端與服務器端建立的會話,總是放在服務器上的,服務器會為每次會話建立一個sessionId,每個客戶會跟一個sessionID 對應。 并不是關閉瀏覽器就結(jié)束了本次會話,通常是用戶執(zhí)行“退出”操作或者會話超時時才會結(jié)束。
測試關注點:
Session互竄
Session互竄即是用戶A的操作被用戶B執(zhí)行了。 驗證Session互竄,其原理還是基于權(quán)限控制,如某筆訂單只能是A進行操作,或者只能是A才能看到的頁面,但是B的session竄進來卻能夠獲得A的訂單詳情等。
Session互竄方法: 多TAB瀏覽器,在兩個TAB頁中都保留的是用戶A的session記錄,然后在其中一個TAB頁執(zhí)行退出操作,登陸用戶B, 此時兩個TAB頁都是B的session,然后在另一個A的頁面執(zhí)行操作,查看是否能成功。 預期結(jié)果:有權(quán)限控制的操作,B不能執(zhí)行A頁面的操作,應該報錯,沒有權(quán)限控制的操作,B執(zhí)行了A頁面 操作后,數(shù)據(jù)記錄是B的而不是A的。
Session超時
基于Session原理,需要驗證系統(tǒng)session是否有超時機制,還需要驗證session超時后功能是否還能繼續(xù)走下去。
測試方法:打開一個頁面,等著10分鐘session超時時間到了,然后對頁面進行操作,查看效果。多TAB瀏覽器,在兩個TAB頁中都保留的是用戶A的session記錄,然后在其中一個TAB頁執(zhí)行退出操作,馬上在另外一個頁面進行要驗證的操作,查看是能繼續(xù)到下一步還是到登錄頁面。