2016 OWASP Mobile TOP 10 中文版

来源:互联网 发布:更改ssh 默认端口 编辑:程序博客网 时间:2024/06/05 13:33

M1-平台使用不当

这个类别包括平台功能的滥用,或未能使用平台的安全控制。它可能包括
Android 的意图( intent)、 平台权限、 TouchID 的误用、 密钥链
( KeyChain)、或是移动操作系统中的其他一些安全控制。有几种方式使移动应
用程序能受到这类风险。

M2-不安全的数据存储

这个新的类别是《 2014 年版十大移动安全威胁》中 M2 和 M4 的组合。这个类别
包括不安全的数据存储和非故意的数据泄漏。

M3-不安全的通信

这个类别包括不健全的握手通信过程、 SSL 版本的不正确使用、脆弱协议、敏
感信息的明文传输,等等。

M4-不安全的身份验证

这个类别包括对终端用户身份验证或坏的会话管理的意见。这可以包括:

  • 当被要求时,没有对所有用户进行身份识别。
  • 当被要求时,没有保持对用户身份的确认。
  • 会话管理中的漏洞。

M5-加密不足

代码使用加密技术对敏感信息资产进行加密。然而,加密技术的应用在某种程
度上是不足的。需要注意的是,任何与 TLS 或 SSL 有关的内容调整至 M3 中。此
外,如果应用程序在它应当使用加密技术时而没有成功使用,该类问题可能属
于 M2。本类别是在尝试使用加密技术时,却又没有成功使用的问题。
M6-不安全的授权
6 / 22
这个类别包括任何失败的授权行为(例如:在客户端的授权决策、强迫浏览
等。)。它有别于身份验证问题(例如:设备注册、用户标识等)。
如果应用程序在需要的时候没有验证用户的身份 (例如:当访问要求需经过身
份验证和授予权限时,授予匿名用户访问某些资源或服务的权限),那就是一起
身份验证失败事件,而不是授权失败事件。

M7-客户端代码质量问题

这个类别曾经是“通过不可信的输入做出安全决定” ,是我们较少使用的类别
之一。这将包括全部的移动客户端代码级别开发问题。这不同于服务器端的编
码错误。本类别包括例如缓冲区溢出、 字符串格式漏洞以及其他不同类型的代
码级错误,而这些错误的解决方法是重写在移动设备中运行的某些代码。

M8-代码篡改

本类别包括二进制修补、 本地资源修改、 方法钩用、方法调整和动态内存修
改。
一旦应用程序交付至移动设备,代码和数据资源就都存放在那里。攻击者要么
可以直接修改代码、动态修改内存中的内容、更改或替换应用程序使用的系统
API,要么可以修改应用程序中的数据和资源。这可以为攻击者提供颠覆本软件
用户的使用预期或是获得金钱利益的直接方法。

M9-逆向工程

本类别包含对核心二进制代码的分析,以确定它的源代码、 库文件、 算法和
其他资产。比如: IDA Pro、 Hopper、 otool 和其他二进制检验工具,使攻击
者能洞察到应用程序内部的工作原理。这可用于在应用程序中发现其他漏洞,
并可揭露有关后端服务器、加密常数、密码以及知识产权的信息。

M10-无关的功能

通常,开发人员不会打算将隐藏地后门程序功能或其他内部开发安全控件发布
到生产环境中。例如:开发人员可能在一个混合应用程序中无意包含了一个作
为注释的密码。另一个例子包括在测试阶段禁用了双因子身份验证。

1 0