滲透測試可以讓企業了解現有安全措施的成效或不足,進而幫助其調整安全項目,并主動發現漏洞。雖然大多數企業熟悉并進行手動滲透測試,但近年來自動滲透測試成為一種備受關注的選擇。自動滲透測試與手動滲透測試孰優孰劣?不妨比較一下各自的優缺點。
手動滲透測試的優缺點
手動滲透測試的最大優點是靈活,它更有可能發現和應對測試系統中的漏洞。手動滲透測試可以發現自動測試可能未發現的更狡猾漏洞和攻擊,比如盲SQL注入攻擊、邏輯缺陷和訪問控制漏洞。訓練有素的專業人員可以在手動滲透測試中分析應用程序對此類攻擊的響應,可以捕捉到自動測試軟件認為沒問題,但實際上有問題的響應。
手動滲透測試的另一個優點是專家隨時審查報告。雖然自動滲透測試工具也會生成報告,但安全分析員仍然要審查和修復發現的許多問題。手動滲透測試還可以在尋找漏洞時更靈活。Enterprise Strategy Group分析師Jon Oltsik說:“優秀的滲透測試人員會運用直覺,并根據結果,選擇朝出人意料的方向進行測試。”一些滲透測試也只能手動執行。例如,當企業想要分析防范社會工程攻擊的情況,就需要手動滲透測試,測試有無語音釣魚攻擊時更是如此。
手動滲透測試的最大缺點是成本和時間。滲透測試付出的成本和時間以其徹底程度而定,有時可能需要數周時間才能獲得結果,這并不總是盡如人意,在處理嚴重漏洞時更是如此。手動滲透測試也可能很燒錢,這就是為什么許多企業執行這種測試只是為了滿足合規和監管要求。如果企業沒錢設立內部紅隊或滲透測試團隊,會選擇第三方服務提供商用于滿足測試需求,這是另一項成本。
自動滲透測試的優缺點
手動滲透測試既復雜又燒錢,因此許多企業不常進行測試。自動測試成本較低、更容易進行,可能會改變這種局面。Gartner分析師Mitchell Schneider說:“組織有興趣進行更頻繁的測試。我們從自動滲透測試工具中看到的好處之一是,它使這類測試更頻繁了。企業希望及時消除相關的風險和威脅,而不是等待安排測試。”
自動滲透測試的另一個好處是,它為安全分析師節省了時間,使他們可以專注于測試期間可能被耽擱的其他任務。自動化還可以處理重復性任務,這些任務不一定復雜,但手動處理起來很耗時。頻繁的自動滲透測試還可以幫助企業評估全部計算機系統——這些系統的更新比測試來得更頻繁,比如在快速發布周期期間內。Forrester Research分析師Jeff Pollard說:“需要自動測試才能真實了解環境。”
自動滲透測試的一個潛在缺點是分析師仍將其視為新興市場。Oltsik說:“獨立的自動測試工具在過去幾年不斷改進。隨著風險資金繼續投入,這個創新市場在不斷壯大。”它的另一個缺點是測試結果取決于滲透測試工具本身的好壞以及用戶的知識水平。Oltsik說:“人是自動測試的累贅。軟件效果完全取決于人的知識庫。針對漏洞,用戶一定要會某些策略和技術。”如果滲透測試軟件開發人員沒有盡到本職工作,自動滲透測試就有缺陷,可能會錯漏關鍵問題。
一些人還擔心自動工具可能取代滲透測試人員,但Oltsik表示情況未必如此。他說:“自動測試有可能變得很出色,也許只需要監督員和審計員來管理自動化測試就可以完成相關工作,但這種局面不會很快出現。”此外,自動滲透測試在功能上依然有限,無法面向各種測試場景進行部署。大多數工具不支持面向無線網絡、Web應用程序和社會工程攻擊進行滲透測試。
手動自動相結合使用
在實際工作中,企業在選擇滲透測試方式時,往往不是二選一的問題。相反,自動滲透測試工具應該輔助手動滲透測試工作。Schneide表示,自動滲透測試工具并不完全適用于所有類型的滲透測試。至少在接下來幾年,它們不會完全取代滲透測試人員或紅隊。自動化還帶來了滲透測試即服務(PTaaS)的發展潮流。NetSPI、Cobalt和Pentest People等供應商已經提供一些服務。PTaaS產品結合了手動滲透測試和自動滲透測試,通過兩者的結合使用,企業更容易完成特定的滲透測試工作,例如滿足合規或監管要求等。
參考鏈接: