MASTG-TEST-0008: 检查用户界面中的敏感数据泄露
此测试即将更新
此测试目前可使用,但将作为新的 OWASP MASTG v2 指南 的一部分进行全面修订。
请提交 PR 来帮助我们:MASTG v1->v2 MASTG-TEST-0008:检查用户界面中敏感数据泄露 (android)
概述¶
静态分析¶
仔细审查所有显示此类信息或将其作为输入的 UI 组件。 搜索任何敏感信息的痕迹,并评估是否应屏蔽或完全删除它。
文本字段¶
为确保应用程序屏蔽敏感用户输入,请检查EditText
定义中的以下属性
android:inputType="textPassword"
通过此设置,文本字段中将显示点(而不是输入字符),从而防止应用程序将密码或 pin 码泄露到用户界面。
应用通知¶
在静态评估应用程序时,建议搜索任何对NotificationManager
类的使用,这可能表明某种形式的通知管理。 如果正在使用该类,则下一步是了解应用程序如何生成通知。
这些代码位置可以被输入到下面的动态分析部分,以提供应用程序可能动态生成通知的位置的想法。
动态分析¶
要确定应用程序是否将任何敏感信息泄露到用户界面,请运行该应用程序并识别可能泄露信息的组件。
文本字段¶
如果信息被屏蔽了,例如,用星号或点替换输入,则应用程序不会将数据泄露到用户界面。
应用通知¶
要确定通知的使用情况,请运行整个应用程序及其所有可用功能,寻找触发任何通知的方式。 请考虑你可能需要在应用程序之外执行操作才能触发某些通知。
在运行应用程序时,你可能希望开始跟踪对与通知创建相关的函数的调用,例如来自NotificationCompat.Builder
的setContentTitle
或setContentText
。观察最终的追踪结果,并评估它是否包含任何敏感信息。