跳过内容

MASTG-TEST-0008: 检查用户界面中的敏感数据泄露

此测试即将更新

此测试目前可使用,但将作为新的 OWASP MASTG v2 指南 的一部分进行全面修订。

请提交 PR 来帮助我们:MASTG v1->v2 MASTG-TEST-0008:检查用户界面中敏感数据泄露 (android)

发送反馈

概述

静态分析

仔细审查所有显示此类信息或将其作为输入的 UI 组件。 搜索任何敏感信息的痕迹,并评估是否应屏蔽或完全删除它。

文本字段

为确保应用程序屏蔽敏感用户输入,请检查EditText定义中的以下属性

android:inputType="textPassword"

通过此设置,文本字段中将显示点(而不是输入字符),从而防止应用程序将密码或 pin 码泄露到用户界面。

应用通知

在静态评估应用程序时,建议搜索任何对NotificationManager类的使用,这可能表明某种形式的通知管理。 如果正在使用该类,则下一步是了解应用程序如何生成通知

这些代码位置可以被输入到下面的动态分析部分,以提供应用程序可能动态生成通知的位置的想法。

动态分析

要确定应用程序是否将任何敏感信息泄露到用户界面,请运行该应用程序并识别可能泄露信息的组件。

文本字段

如果信息被屏蔽了,例如,用星号或点替换输入,则应用程序不会将数据泄露到用户界面。

应用通知

要确定通知的使用情况,请运行整个应用程序及其所有可用功能,寻找触发任何通知的方式。 请考虑你可能需要在应用程序之外执行操作才能触发某些通知。

在运行应用程序时,你可能希望开始跟踪对与通知创建相关的函数的调用,例如来自NotificationCompat.BuildersetContentTitlesetContentText。观察最终的追踪结果,并评估它是否包含任何敏感信息。