阿碼外傳-阿碼科技非官方中文 Blog: 2010/4/7

2010年4月7日

輕鬆看懂CWE/SANS Top 25

常有人會問,什麼XX工具是否符合 SANS Top20還是 OWASP Top 10,那我們企業是否要照單全收?或者為什麼要有 SANS Top 25 、SANS Top 20 、OWASP Top 10 之類的規範?答案當然是不需要照單全收,而是因時因地制宜,譬如依照不同的IT環境,這些Top N項目不見得全部都適用,例如公司中沒有採用 Unix相關的作業系統,有些只會出現在特定環境組態的風險就不會出現。而這些規範是幫助我們了解企業資訊環境所面臨的威脅與潛在問題,讓企業在決策時有一個比較的參考水準,因此就有了 Compliance 的工具需求以及作法,例如在滲透測試或弱點掃描時就會以 Top N的呈現方式,讓業主可以清楚地了解自家環境的資安級數。



續前文

SANS與 CWE在2月公布了新版的Top 25 最危險的程式錯誤(Most Dangerous Programming Errors),總共分為三大類型元件之間不安全的互動(Insecure Interaction Between Components)、具風險的資源管理(Risky Resource Management)以及防禦不周全(Porous Defenses)。入選的時候有41項,後來評比之後選出最高風險的 25項,排名是一個在此時空環境之下的先後次序,我們在運用這份文件時,應該著重於了解其中的精髓以及他要傳達的意義。本文希望可以透過如何輕鬆地運用 SANS Top 25的方法,讓有需要的人可以順利地取用此珍貴資源,協助企業營造更完善的資安環境。協助發展 Top 25的專家認為現在面對網站應用系統的攻擊,必須從系統設計、開發過程就具有對抗常見攻擊的安全程式,若是程式本身設計與實作忽略安全,要找到攻擊網站的弱點、入侵資料庫就變得更容易。

面面俱到的SANS Top 25輕鬆上手

在SANS Top 25的文件中,非常貼心地設計了幾個章節項目,包含建議對象與閱讀方式,哪些角色應該閱讀哪些章節,閱讀的順序等。適合了解的人包含,例如:剛開始接觸安全議題,可以從25項的摘要列表開始,接著從修補方式依照您熟悉的程式語言,進行了解,這樣可以很快地知道如何從簡單的修正方式,來避免常犯下的安全錯誤。當然也可以僅挑選您有興趣的重點項目。其他角色包含:對資安熟稔的程式設計人員、軟體專案經理、軟體測試人員、軟體之使用者、教育訓練講師等,幾乎涵蓋所有相關角色,企業同時也可以運用此文件作為內部作業流程的參考範本。

其內容包含25項常見危險錯誤的描述、 該項錯誤所造成的後果、矯正的成本、偵測的難易度、攻擊頻率與攻擊者之熟稔度、技術資料說明、程式碼範例、偵測方法與預防方式,尤其是預防矯正方式中還告訴各位在軟體發展生命週期(SDLC)中的甚麼階段該介入,該做甚麼事情。像需求發展確認階段、架構與設計、建構實作、測試與上線營運的重點指引。摘要如下:

1. 教育訓練之重點提示,可以讓學校可以參考此文件之作法教學,讓畢業學生都知道該知道的安全程式方法與其源由。Top 25 也很貼心地列舉在程式設計人員教育訓練可強調之項目與內容,按照藥方來調理體質,應該可以獲得不錯的成效。

2. 依照程式語言分類的弱點項目與相關性。語言項目包含C/C++、Java、PHP、Perl。程式範例涵蓋更多語言。

3. 黑白箱工具對於該項弱點的效用分析。利用工具或人工,所做的白箱與黑箱分析檢驗,能夠涵蓋 Top 25 高中低或者是有限(Ltd)的程度。

4. 軟體開發人員認為最重要的順序 v.s 軟體用戶/客戶心中的順序。程式開發人員建立安全程式撰寫實務(security practice)之優先順序,也包含客戶最重視的優先順序,其中是有落差的,似乎問題的答案就呼之欲出。

5. 依照技術面的衝擊,包含惡意程式碼執行、資訊洩漏、取得高權限、繞過(Bypass)安全防禦機制、阻斷服務。

填補文件到現實的落差

通常一份好的文件或參考指引,到真正能夠發揮效用,這中間是有實務上的落差的。原因從大而小不外乎組織文化無法調整接納、人員能力訓練不足或人力不足空有文件亦無發揮之處、現有流程難以更動或未標準化,以及缺乏合適的工具或服務輔助完成。因此,在運用SANS Top 25時,可能會遭遇到理想與現實的重大斷層,要達到善加利用人家現成天上掉下來的禮物,還得有一套漸進、穩扎穩打的戰略。一般會建議先針對您所使用的相關語言或資訊環境涵蓋哪些問題項目,做好對自己的了解;然後利用弱點掃描、滲透測試或程式碼檢查的方式先找出問題,進行體檢與評估;接著SANS Top 25就可以派上用場,參照其計畫落實如何防禦及偵測涵蓋項目;最後則回到強化人員、流程、工具及組織文化調整,人員訓練可以參考表二,並且要定期去稽核確保是否落實以上項目。發揮 Due Care、Due Diligence的精神持之以恆。

本文投稿於資安人雜誌

阿碼科技在資安展 亞太資訊安全論壇 有兩場演講

1. 洞悉與展演 2010 Web 攻擊與應變趨勢2. 雲端、組改、個資無限好,資訊安全如何來確保?

記得來參加啊! 如果要學習網站安全程式,也可參考這個網頁安全程式撰寫技巧實戰養成班


繼續閱讀全文...