如標題,是從資安人看到讓我傻眼的標題文。
(這篇文章主要是源碼檢測-白箱測試的廠商所撰)
寫這篇文章原因有二,一個是很訝異有人有這樣的想法、一個是自已的工作就在進行相關的服務。
我想有必要寫一些概念性的東西,理清一些觀念與疑問:
。我已做過弱掃了,為什麼還需要做滲透測試?
。滲透測試做完了,為什麼還要做弱點掃描?
。源碼檢測都做過了,幹麻煩需要做滲透?
了解這些問題的根本可以讓業務人員更清楚如何Push服務,也可以讓客戶了解還需要做些什麼服務來持續地增加安全防護。
要了解這些問題的差異,首先要做的就是了解資安技術服務的分類。
資安技術服務可以概分為三的類"黑箱""灰箱""白箱",很好奇為什麼會分成黑?灰?白?
大概的觀念就是什麼都看不到就是"黑",看到一些又沒看到全部就是"灰",完全一覽無遺就是"白",簡單的說明如下:
(1)黑箱 - 滲透測試 -
在完全不了解客戶環境的狀況下,摸擬駭客從外部進行資訊安全檢測。整個網路環境就像一個黑色的箱子一樣什麼也看不到。
(2)灰箱 - 弱點掃描 -
將資安檢測的設備置於客戶的網路環境內,直接對欲檢測的設備進行弱點掃描。整個網路睘境在有點熟又不太熟的灰色地帶。
(3)白箱 - 源碼檢測 -
將網頁原始程式碼置入源碼檢測設備進行掃描。全部白淨的源始程式碼一覽無疑~~
了解了分類還是會有疑問,那我做了這項服務,為什麼還需要做那項???這要了解各項服務的工作內容與目的,介詔如下:
(1)黑箱 - 滲透測試 -
這是最費時、費工、花人力、需要極大的創意與經驗的測試服務。
這部份會看到的技術服務方式有:滲透測試、社交工程、Web檢測、無線網路健檢、密碼測試…。
這個服務有一些標準流程可至OSSIM (http://www.ossim.net/)了解更進一步的流程,大致的流程是測試者會先透過網路或電話、或郵件…盡量收集目標相關資訊、接著利用許多軟體進行掃描、再來從掃描結果的弱點配合經驗與創意進行手工的測試。
而這就是滲透測試的重點!!人工的手動測試!這部份是無法複製與衡量的!這也就是為什麼滲透測試服務的收費標準差異如此的!原因就在於人工這部份,可能是一個沒經驗的工程師、可能是一個很有經驗的Hacker、或是一整個Team!!
(2)灰箱 - 弱點掃描 -
這是對於組織來講需要日常且常做的工作。
這個服務常見的是將測試設備放置於主機段,對主機群進行掃描,由於不需透過Firewall,可以得到許多從外部得不到的資訊,可對整個系統做安全診斷。比如Windows某個更新未做、Firewall系統版本需更新、某主機帳密不夠強…。最主要在檢測環境的系統、設備是否有新的弱點可被利用?而需進行補強動作。
(3)白箱 - 源碼檢測 -
這個服務是最快速的技術服務了!原因是它完全自動化!!
將您所設計好的網頁直接丟到設備裡面去掃描,掃描完後會告訴您!網頁有哪些攻擊手法可以攻?問題是哪裡沒有寫好?該如何做修正?哪些較嚴重的要先修?
目前市場上看到的可以拿來做程式開發的檢測、開發外包的驗收、學校的教學、服務的提供…。
這個服務的目的在了解,我的程式哪裡沒寫好?該怎麼寫才安全?寫好後從根本去解決問題。
OK!!問題來了!!
。我做源碼檢測,程式也都修完了!為什麼還要做滲透測試?為什麼還要定期做弱掃?
原因是程式碼是寫的很安全沒錯!那…那如果您Web的主機是Windows,Windows發佈了新的漏洞可被駭客利用!那~~~那還是要透過弱點掃描來掃描程式才知道哪裡需要修補!
那滲透呢?好…要這麼追根究底…我們假設你的程式很安全!系統全都更新到最新了!那~~如果我用社交工程取得管理員帳密呢?我透過其它主機攻擊完美主機呢?我透過帳號猜解取得權限呢?我…好了~~方法有許多的創意!!
所以技術服務必需三個大分類(黑箱、灰箱、白箱)並行,而且持續不斷的驗證!必竟你永遠不知道哪一個面項會被駭客利用!隨著時間的變化~哪一個面向成為駭客的最愛也不定!所以資訊安全必需多方考慮,加強防護的!
結論是~大家不用擔心滲透服務的消失!而是多面向的服務我們是否都能提供與協助客戶環境達到更安全的境界^^