測試應用程序的安全性.ppt
《測試應用程序的安全性.ppt》由會員分享,可在線閱讀,更多相關《測試應用程序的安全性.ppt(18頁珍藏版)》請在裝配圖網上搜索。
測試應用程序的安全性,姚礪東華大學計算機學院,軟件測試是一項非常復雜的、創(chuàng)造性的和需要高度智慧的挑戰(zhàn)性任務。,我測故我在,軟件測試的現狀,軟件測試在軟件生命周期中占據重要的地位,軟件測試慢慢的獨立發(fā)展成為一個行業(yè),并且在迅猛發(fā)展。對美國大量軟件項目的觀察結果表明,軟件項目的成功在很大程度上依賴于軟件測試的成功。軟件測試在軟件企業(yè)中擔當的角色是“質量管理”,即及時糾錯及時更正,為產品推向市場貼上“質量合格”的標簽。開發(fā)與測試進攻與防守:好看靠進攻,冠軍靠防守,軟件測試的現狀,對國際著名IT企業(yè)的統(tǒng)計數據表明,軟件測試在整個軟件項目中所占的比例為40%以上,占整個項目費用的50%以上,軟件測試人員與開發(fā)人員的人數比例接近1:1。國內軟件企業(yè)在軟件測試上的投入一般在5%以下,測試人員所占比例很小(軟件測試人員與開發(fā)人員之比僅為1:8),經常處于從屬地位。中國軟件工業(yè)要健康發(fā)展,必須正視和努力縮小這個差距。,微軟的測試,“很多人都認為微軟是一家軟件開發(fā)公司,而事實上,我們是一家軟件測試公司”-比爾蓋子在微軟內部,軟件測試人員與軟件開發(fā)人員的比率一般為1.5-2.5左右,軟件測試的作用,軟件質量與軟件質量保證教學考試與教學質量保證軟件開發(fā)的每個階段都要測試,測試人員應該參與設計階段:評審安全性設計傳說中的微軟測試部門的格言:沒有最BT,只有更BT。,軟件測試之獨孤九劍,全程測試,測試先行劍走偏鋒—不走尋常路完全測試程序是不可能的軟件測試是有風險的行為程序中的大部分錯誤往往是在一小部分模塊中發(fā)現的--帕雷托定律設計周密的測試用例先求開展,后求緊湊,乃可縝密矣----《九陰真經》框起你的測試來剛中帶柔,柔中帶剛,如海中波濤,剛柔并濟?!旁普频谖迨健霸坪2本哂辛己玫挠嬎銠C編程基礎優(yōu)秀的安全測試人員格言:給我一個socket,我能破壞任何軟件。,一次轉身最遠能產生多遠的距離—從傳統(tǒng)軟件測試轉向安全性測試,如果不付出相當大的努力去消除,每個復雜的軟件程序都會有代價高昂的安全漏洞。這些漏洞會造成病毒和蠕蟲的橫行,也會使得罪犯能夠攫取用戶的個人財務數據,而這些用戶已如驚弓之鳥,并且本來就很不愿意把他們的個人數據放在Internet上。2005年,CardSystems成為數字化攻擊的犧牲品,由于對信用卡數據在未加密情況下存儲,有4000多萬張借記卡和信用卡泄密,4個月后,這家公司倒閉出售。安全性測試:不是驗證軟件的正確性,而是挖掘軟件的漏洞(軟件中的“不應該”和“不允許”部分,例如:代碼中的緩沖區(qū)溢出漏洞,電子秤中的作弊后門等)。---越崩潰越快樂!RFC2828將漏洞定義為“系統(tǒng)設計、實現或操作和管理中存在的缺陷或弱點,能被利用而違背系統(tǒng)的安全策略”例如:對于一個web輸入界面的測試,其上有個字段【銀行賬號】(正確輸入是12個數字),對該字段的測試包括:正確輸入驗證:正好12個數字(分該賬號存在和不存在兩種情況驗證)異常輸入驗證:(模仿用戶的一些無意錯誤操作)輸入不滿12個數字,超過12個數字,有非數字字符,空,等等。安全測試:SQL注入攻擊(用web代理來輸入,繞過客戶端的檢驗檢查)、跨站點腳本輸出、整數溢出等。安全測試的出發(fā)點:像攻擊者一樣思考,一些攻擊模式的范例,驗證用戶輸入不會提供機會讓攻擊者通過已知的SQL注入攻擊來操縱后臺數據庫;驗證不存在跨站點執(zhí)行腳本的可能性;驗證在向服務器發(fā)送一個它不能正確處理的非法數據包的情況下,服務器不會崩潰;驗證用戶輸入不會導致數據處理溢出;驗證程序對錯誤的處理是恰當的;驗證數據在網絡傳輸中或存儲時是經過了保護的驗證不會出現信息泄露驗證訪問控制。。。。。,建立安全性測試計劃---基于風險的安全測試,威脅/風險建模:排定安全測試的優(yōu)先級。在對應用程序的設計和應用流程加以理解的基礎上,可假定潛在的安全風險并對其進行評價。然后,根據易于攻擊和攻擊的影響嚴重性,將這些威脅進行分級并依次消除。然后安全測試人員就可以將其注意力集中于那些攻擊難度最低而影響最大的領域。流程:信息搜集:需要測試哪個應用程序和應用程序中的哪些模塊(組件),對每一個模塊(組件)做哪些安全假設,每個組件的哪些安全因素需要測試,預期的結果是什么。登錄頁面:(見后)識別威脅將與威脅相關的風險進行分級潛在的破壞程度再現性和可利用性:探測并利用這個漏洞所做的努力受影響的用戶,登錄頁面的威脅分析,猜測口令:設計時應設計登錄試探次數,例如:只許試探三次,然后鎖定ip地址。利用password文件系統(tǒng)地猜測口令:加密文件(密碼強弱,文件存放是否安全)分析協(xié)議和濾出口令:不能明文傳輸,密碼的強弱重放攻擊:加時間戳木馬監(jiān)視登錄/口令:系統(tǒng)安全,一次性口令盜鏈:SQL注入漏洞異常輸入破壞:,安全測試技術之七種武器,一個完整的WEB安全性測試可以從以下幾個方面入手:1.安全體系測試網絡是否提供了安全的通信部署拓撲結構是否包括內部的防火墻部署拓撲結構中是否包括遠程應用程序服務器操作系統(tǒng)是否存在漏洞,例如Unix上的緩沖區(qū)溢出漏洞、Windows上的RPC漏洞、緩沖區(qū)溢出漏洞、安全機制漏洞等;2.輸入驗證如何驗證輸入是否清楚入口點是否驗證Web頁輸入是否對傳遞到組件或Web服務的參數進行驗證是否驗證從數據庫中檢索的數據是否依賴客戶端的驗證應用程序是否易受SQL注入攻擊應用程序是否易受XSS攻擊如何處理輸入,3.身份驗證和授權是否區(qū)分公共訪問和受限訪問如何驗證調用者身份如何驗證數據庫的身份如何向最終用戶授權4.敏感數據是否存儲機密信息如何存儲敏感數據是否在網絡中傳遞敏感數據5.加密為何使用特定的算法如何確保加密密鑰的安全性6.參數操作是否驗證所有的輸入參數是否在參數過程中傳遞敏感數據是否為了安全問題而使用HTTP頭數據7.審核和日志記錄是否明確了要審核的活動是否考慮如何流動原始調用這身份,應用服務器的安全性測試技術,一、應用服務器的安全性測試內容基于應用服務器的安全性測試內容主要包括:驗證隱私系統(tǒng)是否受到保護、數據是否加密,檢測系統(tǒng)是否有安全保密的漏洞,檢驗系統(tǒng)及其所在的網絡是否能夠承受各種類型的惡意攻擊。對于Web服務器而言,具體測試內容還有測試用戶登錄與注冊、是否有超時限制、服務器腳本語言、日志文件、目錄安全、SSL安全傳輸測試等。二、應用服務器的安全性測試方法與技術(一)全面搜集與應用服務器安全相關的各種信息,分析其可能出現的安全隱患應用服務器被使用的企業(yè)單位基本信息、管理中薄弱環(huán)節(jié)、應用服務器配置信息、系統(tǒng)可訪問的主機IP地址及對應的主機名、服務器所在網絡的拓樸結構等,這些信息可能成為被利用的安全隱患,有的可能在互聯(lián)網上搜索得到,要對其進行分析和安全隱患檢查。,應用服務器的安全性測試技術,(二)應用服務器的漏洞探測和掃描1、利用搜索引擎搜索已公布的漏洞??衫肎oogle等工具搜索資源,研究系統(tǒng)漏洞??稍L問CVE(公共漏洞和暴露)數據庫,查找漏洞。PacketStorm組織是由一些致力于提供必要信息以安全化全球網絡的安全專業(yè)人士組成的非盈利組織,在其網站上可以找到許多安全信息,如Windows中緩沖區(qū)溢出漏洞、Unix主機中遠程過程調用(RPC)的安全隱患、FTP漏洞,Sendmail郵件服務軟件的漏洞等。2、利用掃描工具進行漏洞探測。服務器漏洞掃描的工具很多,基于Linux的掃描工具有Namp、Netcat、Nessus?;赪indows的端口掃描器有NeWT等。還有很多掃描工具,如:著名的COPS、Tiger、Fluxay5(流光)、X-scan、N-Stealth、MetasploitFramework(:55555/)等。其中,很多工具可以在網上免費下載。可以利用上述工具探測系統(tǒng)漏洞,查看系統(tǒng)是否打了補丁。,應用服務器的安全性測試技術,(三)模擬攻擊測試采用拒絕服務、緩沖區(qū)溢出攻擊、密碼破解攻擊等方法進行測試。1、Web服務器利用測試。針對WindowsIIS5.0Web服務器中的目錄遍歷漏洞(CVE-2001-0333),可采用如下方法測試。若主機IP為:67.168.100.102,則在IE的地址欄中輸入:http://67.168.100.102/scripts/..%255c..//winnt/system32/cmd.exe?c+dir若在瀏覽器中看到目錄C:\inetpub\scripts中的內容,則說明存在漏洞。2、拒絕服務攻擊測試。Land攻擊:判斷網絡數據包的源地址和目標地址是否相同。PingOfDeath攻擊:判斷數據包的大小是否大于65535個字節(jié)。如果操作系統(tǒng)接收到長度大于65535字節(jié)的數據包時,就會造成內存溢出、系統(tǒng)崩潰等后果。Teardrop攻擊:對接收到的分片數據包進行分析,計算數據包的片偏移量(Offset)是否有誤。某些操作系統(tǒng)收到含有重疊偏移的偽造分片數據包時將會出現系統(tǒng)崩潰、重啟等現象。SYNFlood攻擊:從隨機的或欺騙來的IP地址產生大量的SYN數據包,導致合法請求被拒絕。SMBDie攻擊:利用SMB(服務器消息塊)中代號為CVE-CAN-2002-0274的緩沖區(qū)溢出漏洞攻擊,可能導致Windows計算機死亡藍屏。,應用服務器的安全性測試技術,3、E-mail炸彈攻擊測試。郵件炸彈不僅能造成收件人信箱爆滿而無法再接收其他的郵件,而且還會加重網絡的流量負荷,甚至會導致整個郵件系統(tǒng)癱瘓。常見的郵件炸彈軟件有KaBoom!、Avalanche等。4、密碼破解和特權提升測試。采用窮舉法、漏洞利用和字典法等方法破解系統(tǒng)用戶密碼,常用工具有:L0phtcrack、Crackerjack、JohntheRipper等,在試著破解前用pwdump5來獲取密碼的哈希,可參考網站:SQLServer弱口令測試:用scansql.exe工具測試SQLServer數據庫應用系統(tǒng)是否有默認用戶SA及弱口令。擊鍵記錄測試:采用擊鍵記錄工具(如keylog5.exe)進行測試。檢查能否記錄管理員的用戶名和口令。登錄測試:對用戶名和匹配的密碼進行校驗,以阻止非法用戶登錄??蓽y試輸入的密碼是否對大小寫敏感、是否有長度和條件限制、最多可以嘗試多少次登錄等情況。測試時可以將上述多種方法混合使用,進行暴力攻擊測試。,應用服務器的安全性測試技術,(四)使用計算機病毒及木馬測試系統(tǒng)的防護能力最典型的計算機病毒和木馬有“木馬代理”、“網游大盜”、“艾妮”、“熊貓燒香”、“QQ木馬”、“灰鴿子”等。有的木馬能繞過天網等大多數防火墻的攔截??梢岳眠@些典型病毒和木馬測試應用服務器系統(tǒng)的防護能力,驗證服務器檢測到病毒時的應急能力。許多病毒和木馬在網上很容易下載到??梢允褂镁W頁木馬生成器方便地生成木馬。也可以利用操作系統(tǒng)的Shell編程技術和Socket編程技術嘗試編寫新的攻擊程序,用于系統(tǒng)安全性測試。(五)數字取證測試利用系統(tǒng)中的日志、審計、Cookies、歷史記錄等功能,驗證應用服務器遭到攻擊后是否留下痕跡,便于取證。,- 配套講稿:
如PPT文件的首頁顯示word圖標,表示該PPT已包含配套word講稿。雙擊word圖標可打開word文檔。
- 特殊限制:
部分文檔作品中含有的國旗、國徽等圖片,僅作為作品整體效果示例展示,禁止商用。設計者僅對作品中獨創(chuàng)性部分享有著作權。
- 關 鍵 詞:
- 測試 應用程序 安全性
裝配圖網所有資源均是用戶自行上傳分享,僅供網友學習交流,未經上傳用戶書面授權,請勿作他用。
鏈接地址:http://www.hcyjhs8.com/p-3411297.html