移动应用安全控制和设计原则 TOP 10 版本(原版最后修改时间 22 MAY 2013, AT 09:40) ©2007-2015 OWASP 中国 译者:卢彬良 沈明星 十大移动控制和设计原则 目录 1. 确认并保护设备上的敏感数据 .......................................................................................................................................... 3 2. 确保密码等身份认证信息的安全 ...................................................................................................................................... 4 3. 数据传输安全 ..................................................................................................................................................................... 4 4. 正确的身份认证、授权与会话管理 .................................................................................................................................. 5 5. 保障后端 API 服务和平台的安全 ...................................................................................................................................... 5 6. 与第三方应用程序或服务的安全交互 .............................................................................................................................. 6 7. 设置用户隐私使用条例...................................................................................................................................................... 6 8. 实现对付费资源的授权访问控制 ...................................................................................................................................... 6 9. 保证移动应用的分布式安全 .............................................................................................................................................. 7 10. 运行环境中的代码错误检查 .............................................................................................................................................. 7 11. 附录 ................................................................................................................................................................................... 7 OWASP/ENISA 合作 .................................................................................................................................................................. 7 贡献者 .................................................................................................................................................................................... 7 相关通用编码最佳实践 ......................................................................................................................................................... 8 企业指南 ................................................................................................................................................................................ 8 参考文献 ................................................................................................................................................................................ 9 www.owasp.org.cn 2 十大移动控制和设计原则 1. 确认并保护设备上的敏感数据 风险:废弃的移动设备(手机)会无意导致敏感信息泄露,保护设备上的敏感数据是把风险降到最低的方法。 1.1. 在设计阶段,按照敏感程度和应用的访问策略对数据存储区域分类(如密码、用户数据、位置信息、错 误日志等等),并检查调用这些敏感数据的 API 是否安全。 1.2. 敏感数据应安全保存在服务端,而不应存储在客户端。保存的前提是确保网络通信与服务端数据存储机 制的安全。 客户端的安全是相对的,它与服务端的安全相比还需具体问题具体分析(参考 ENISA 云风 险评估(3)与 OWASP Cloud top 10(4))。 1.3. 数据存储时应采用操作系统提供的文件加密函数或其它权威的加密函数。有的平台提供一种文件加密 API,它的密钥可以通过设备上的解锁码和远程删除功能来保护。如果具有这种可行方法,我们应当广 泛使用,加密不在终端进行从而既减小了负担而增加了安全性。然而我们应当注意,密钥是由设备解锁 码保护的,数据存储在设备上的安全将仅仅取决于解锁码和远程删除功能。 1.4. 敏感信息(包括密钥)的存储或缓存必须经过加密处理,并尽可能存储在防篡改区域(参考控制二)。 1.5. 基于上下文信息,限制对地理位置等敏感信息的访问(例如,GPS 显示位置在国外时手机钱包无法使用, 汽车钥匙在距离汽车 100 米外无法使用……) 。 1.6. 在应用程序所需要的有效时间外,不能保存 GPS 历史记录及其它敏感信息(参考 1.7、1.8)。 1.7. 假设共享的存储区是不可信的,数据很容易以各种方式泄露。尤其是: 当与其它应用共享缓存和临时存储区时; 公共的共享存储区——如地址簿,媒体库,音频文件等可能泄露信息的通道。例如,在媒体库中存储 包含位置信息的照片,可能会被其它恶意的应用程序访问。 不要在全局可读的目录中存放临时文件或缓存。 1.8. 个人敏感信息必须设置最大保存时间,超过时间必须删除(以防止数据还在无限期缓存)。 1.9. 由于没有针对闪存的标准安全删除程序(不可擦写的存储介质除外),所以数据的加密和安全密钥的管 理尤为重要。 1.10. 在编写应用程序时应考虑所有数据的生命周期安全(如网络连接信息、临时文件、缓存、备份、删除文 件等) 。 1.11. 遵循最小化原则,应用程序只能收集和公开业务功能相关所须的数据。在设计阶段定义出必须数据,包 括它的敏感度,是否能被收集、存储和使用。 1.12. 运用非持久的标识符,它们必须在任何地方都不与其它应用共享。例如,不能用设备 ID 号作为标识符, 应采用随机数生成器(参考 4.3),对应用程序的 session 和 http 的 session/cookie 遵循数据最小化原 则。 1.13. 在管理设备上的应用程序必须使用可以远程删除的“删除开关”API,以防止设备丢失造成损失(“删除 开关”这种功能是系统级的、专门设计用于可以远程删除程序或数据) 。 1.14. 开发者应当考虑设计一个内置的“数据删除开关”功能,允许用户在必要的时候能够远程删除该应用的 相关数据(为了保护这个功能被不当使用应设置强认证) 。 www.owasp.org.cn 3 2. 十大移动控制和设计原则 确保密码等身份认证信息的安全 风险:间谍程序、监控程序、金融恶意程序。用户的认证信息如果被盗,不仅会造成未授权的移动后端服务访 问,甚至可能对别的服务或账户带来潜在风险,这个风险是由于用户在不同地方使用了相同密码。 2.1. 可以考虑在设备上使用授权认证 token 的方法来取代密码,并在传输层进行加密(SSL/TLS),后端服务 进行验证。 智能手机安全开发指南最初为应用
OWASP 移动应用安全控制和设计原则 TOP 10
安全报告 >
OWASP >
文档预览
中文文档
9 页
50 下载
1000 浏览
0 评论
0 收藏
3.0分
温馨提示:本文档共9页,可预览 3 页,浏览全部内容或当前文档出现乱码
点击下载文档
本文档由 SC 于 2022-10-20 13:03:47上传分享