本文档详细介绍了监控敏感活动(例如用户登录)的方法 和网上购买。
FLAG_SECURE 标记
FLAG_SECURE
是一个 Window 标志,用于告知 Android 不允许屏幕截图
或是在不安全的显示屏上显示窗口视图(例如将
屏幕)。这对于需要保护
如银行应用或密码管理工具当窗口被标记时
与 FLAG_SECURE
搭配使用时,Android 会阻止截取屏幕截图,并防止
窗口不会显示在不安全的显示屏(例如电视或
投影仪这有助于保护
防止未经授权的人员访问。
这些信息如何帮助防范欺诈行为
恶意应用或实体可能会检索背景屏幕截图。当状态
切换到后台,可以使用 FLAG_SECURE
。当
截图,得到的图片是空白的。
FLAG_SECURE
还有助于实现远程屏幕共享用例。它并不总是
会检索屏幕截图的恶意应用,合法的屏幕共享应用
通常用于欺诈情况。
实现
对于包含您想要保护的信息的视图,请添加以下内容:
Kotlin
window?.setFlags( WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE )
Java
window.setFlags( WindowManager.LayoutParams.FLAG_SECURE, WindowManager.LayoutParams.FLAG_SECURE );
最佳做法
请务必注意,这种方法在阻止叠加层方面并不可靠
攻击。在某些情况下,它无法正确预测屏幕录制是否
但也涵盖大多数应用场景如需缓解叠加层攻击,请参阅
下一部分,介绍 HIDE_OVERLAY_WINDOWS
权限。
HIDE_OVERLAY_WINDOWS
HIDE_OVERLAY_WINDOWS
是 Android 12 中添加的权限,通过该权限,您的应用可以
选择不在其上面绘制应用叠加层。在 Android 12 中,
获取 SYSTEM_ALERT_WINDOW
权限更加困难,从本质上讲,
允许您的应用阻止来自第三方应用的叠加层。
这如何帮助防范欺诈行为
启用 HIDE_OVERLAY_WINDOWS
权限会停用
在应用上绘制应用叠加层此权限提供
防御机制,用于防范伪装真实内容攻击和匕首攻击。
实现
如需启用此权限,请将 HIDE_OVERLAY_WINDOWS
添加到项目的
清单。
最佳做法
与任何权限一样,您应该信任任何叠加层应用,至少应与您一样信任 信任此设备上的任何其他应用。换言之,您的应用不得 在其他应用中绘制叠加层 值得信赖。允许某个应用在其他应用上显示内容可能会带来危险, 可以窃取密码或读取邮件。