对于移动开发人员来说,什么才是最重要的应用安全最佳实践?安全专家Kevin Beaver给出了答案。
回答关于移动开发最佳实践是一项技巧,需要考虑多个变量。所有的应用程序,包括传统的客户端/服务器端的和web应用,开发人员都要考虑如下的一些事情:
◆对于用户来说,什么样的功能是必须有的?这通常定义了许多安全方面。
◆如何在最小的攻击表面平衡丰富功能?
◆什么样的信息需要输入和处理?这也很大的安全隐患。
那么,当然所有的安全“最佳实践”文档,如OWASP Top 10 Project和 SANS Top 25包含了输入验证,会话管理之类的。
在很多方面,移动可以更简单,因为功能往往都是受限的。也就是说,当为移动设备考虑额外的安全措施时,你需要考虑如下的一些事情 :
信息是如何输入到应用中的?进行模糊测试和为web应用对移动注入的工具并不多,但你仍然需要确保这类信息已经被验证。
怎样从应用程序中提取信息?这对于移动应用往往都是马后炮。然而,当使用如Elcomsoft iOS Forensic Toolkit的Oxygen Forensic Suite这样的工具时,以设备的固件升级模式连接手机或平板时,一些鉴证工具是可用的,也是很开眼界的。
信息是如何转换的?对于传统的应用来说,加密传统要摆在一个很重要的位置上,但在移动上往往会被忽视。我曾看到过大量的应用程序以纯文本的HTTP形式转转换所有东西。
信息最终将被转换存储到什么地方,而且如何保护它?这含有安全和法律的含义,尤其当涉及到未受到保护的移动设备和第三方云应用时。
回到最初的问题上,我已经说过对于移动开发人员来说,最重要的应用实践是看到未来大的前景。退一步,看看一切将如何操作和交互,来确保你掌握了一切。否则,你将把一切置于危险之中,这将不是所愿意看到的。