什么是應用安全開發(fā)的最佳實踐?
對于移動開發(fā)人員來說,什么才是最重要的應用安全最佳實踐?安全專家Kevin Beaver給出了答案。
回答關于移動開發(fā)最佳實踐是一項技巧,需要考慮多個變量。所有的應用程序,包括傳統(tǒng)的客戶端/服務器端的和web應用,開發(fā)人員都要考慮如下的一些事情:
◆對于用戶來說,什么樣的功能是必須有的?這通常定義了許多安全方面。
◆如何在最小的攻擊表面平衡豐富功能?
◆什么樣的信息需要輸入和處理?這也很大的安全隱患。
那么,當然所有的安全“最佳實踐”文檔,如OWASP Top 10 Project和 SANS Top 25包含了輸入驗證,會話管理之類的。
在很多方面,移動可以更簡單,因為功能往往都是受限的。也就是說,當為移動設備考慮額外的安全措施時,你需要考慮如下的一些事情 :
信息是如何輸入到應用中的?進行模糊測試和為web應用對移動注入的工具并不多,但你仍然需要確保這類信息已經(jīng)被驗證。
怎樣從應用程序中提取信息?這對于移動應用往往都是馬后炮。然而,當使用如Elcomsoft iOS Forensic Toolkit的Oxygen Forensic Suite這樣的工具時,以設備的固件升級模式連接手機或平板時,一些鑒證工具是可用的,也是很開眼界的。
信息是如何轉換的?對于傳統(tǒng)的應用來說,加密傳統(tǒng)要擺在一個很重要的位置上,但在移動上往往會被忽視。我曾看到過大量的應用程序以純文本的HTTP形式轉轉換所有東西。
信息最終將被轉換存儲到什么地方,而且如何保護它?這含有安全和法律的含義,尤其當涉及到未受到保護的移動設備和第三方云應用時。
回到最初的問題上,我已經(jīng)說過對于移動開發(fā)人員來說,最重要的應用實踐是看到未來大的前景。退一步,看看一切將如何操作和交互,來確保你掌握了一切。否則,你將把一切置于危險之中,這將不是所愿意看到的。