利用 FLAG_SECURE 和 REQUIRE_SECURE_ENV 安全标志保护应用,打击滥用行为

作为 Google Play 开发者,您在确保应用及其用户的安全方面发挥着至关重要的作用。随着社会工程学滥用活动的日益猖獗(尤其是针对弱势群体的活动),现在采取主动措施来保护用户和应用的完整性比以往任何时候都更为重要。

本文概要介绍了两个可增强应用安全性的实用 Android 和 Play 安全标志:FLAG_SECUREREQUIRE_SECURE_ENV。通过了解并有效利用这些标志,您可以协助打击有针对性的滥用行为,并进一步保护应用的生态系统。

FLAG_SECURE

FLAG_SECURE 表示您的应用需要在较安全的环境中运行,以减轻潜在的漏洞风险、加强监控并防御攻击。它是一个在应用代码中声明的屏幕标志,用于表明应用界面 (UI) 包含敏感数据,且这些数据仅限于在使用应用时通过安全的途径访问。此标志会向其他应用和服务发出信号,表明这些数据不应显示在屏幕截图中或通过不安全的屏幕查看。如果应用内容不应在应用或用户设备以外进行广播、查看或以其他方式传输,开发者会声明此标志。例如,如果应用的某个界面包含敏感数据,而这些数据若被第三方(例如远程支持应用)看到,可能会造成安全风险,这种情况下就可以使用 FLAG_SECURE 声明数据的敏感性,从而有助于提供安全的环境。出于安全和隐私保护的目的,所有在 Google Play 上分发的应用都必须遵守 FLAG_SECURE,这意味着不得促成或设计任何规避方法来绕过其他应用中的相应标志设置。

REQUIRE_SECURE_ENV

老年人和其他弱势群体可能更容易受到操纵和欺骗,因此针对这类群体的社会工程学攻击尤其令人担忧。此类攻击通常会诱骗用户透露敏感信息(例如密码或财务信息)或下载恶意内容。

通过实现 FLAG_SECURE 标志和 REQUIRE_SECURE_ENV 标志,您可以帮助减轻应用中的社会工程学攻击问题。无论是单独使用还是同时使用,这两个标志都有助于防范攻击者常常利用的漏洞,避免攻击者访问个人数据和敏感用户数据或设备。

保护老年用户和弱势群体免受社会工程学滥用行为的侵害

老年人和其他弱势群体可能更容易受到操纵和欺骗,因此针对这类群体的社会工程学攻击尤其令人担忧。此类攻击通常会诱骗用户透露敏感信息(例如密码或财务信息)或下载恶意内容。

通过实现 FLAG_SECURE 标志和 REQUIRE_SECURE_ENV 标志,您可以帮助减轻应用中的社会工程学攻击问题。无论是单独使用还是同时使用,这两个标志都有助于防范攻击者常常利用的漏洞,避免攻击者访问个人数据和敏感用户数据或设备。

其他保护措施

除了利用安全标志之外,您还可以考虑采取以下额外措施,帮助保护用户免受社会工程学滥用行为的侵害:

  • 让用户知晓社会工程学攻击手段:在应用中提供清晰简洁的警告,让用户知晓常见的社会工程学手段,例如网络钓鱼欺诈和虚假支持电话。
  • 实现安全的身份验证机制:采用强大的身份验证方法(例如双重身份验证),以防止未经授权访问用户账号的行为。
  • 定期更新您的应用:及时为您的应用发布最新的安全补丁并进行 bug 修复,以消除任何可能被攻击者利用的潜在漏洞。

通力协作与持续宣传

打击滥用行为和保护用户是一个持续的过程,需要开发者、Google Play 以及更广泛的安全社区通力合作。不妨阅读我们的“Safety & Security”(安全与安保)博客,了解安全方面的最佳实践。

通过携手合作,我们可以为所有用户打造更安全、更值得信赖的 Android 生态系统。

常见问题解答

点击下方问题即可将其展开或收起。

使用这两个标志会对我的应用产生负面影响吗?实现标志的工作需要多长时间?

这些应用旨在增强安全性和隐私保护,而不是妨碍性能。不过,如果您的应用功能高度依赖于分享屏幕截图或屏幕录制内容,那么设置 FLAG_SECURE 可能会导致用户无法在相关页面上捕获这类影像内容。在这种情况下,您应在安全需求与用户体验之间做好平衡。此外,某些第三方应用自定义或扩展程序可能会依赖于屏幕截图方法,而这些方法可能会受到这两个标志的影响。如果您的应用与此类工具集成,建议进行兼容性测试。

实现过程通常快速而简单。这通常需要在您要应用标志的相关页面或 activity 中添加几行代码。具体用时取决于应用的复杂程度和涉及的页面数量。

FLAG_SECURE 标志和 REQUIRE_SECURE_ENV 标志有何区别?

FLAG_SECURE 是一个窗口级标志,设置后表示将窗口内容视为安全内容,从而防止其显示在屏幕截图中或防止他人在不安全的屏幕上进行查看,而 REQUIRE_SECURE_ENV 会向其他应用发出信号,表明您的应用必须在安全环境中运行。FLAG_SECUREREQUIRE_SECURE_ENV 都是安全标志,可用于保护 Android 应用/用户免遭滥用和攻击的侵害。

请举例说明 FLAG_SECURE 的预期作用方式

当银行应用在登录屏幕上使用 FLAG_SECURE 时,它会创建一个特殊窗口来保护用户的登录凭据等敏感信息。一般来说,此保护措施有助于防止窗口内容在不安全的屏幕上显示,同时避免在他人试图截屏、录屏或远程查看时被捕获。因此,在这些类型的屏幕上可能会看到空白区域,而不是用户的详细登录信息。

哪些类型的应用可以使用 FLAG_SECURE 标志和 REQUIRE_SECURE_ENV 标志?

举例来说,需要处理个人数据和敏感用户数据(如财务信息)的应用可以使用这两个标志。银行应用是通常会使用 FLAG_SECURE 的应用。另外,特别容易遭到滥用的应用(例如面向老年人或弱势群体的应用)也应考虑使用 REQUIRE_SECURE_ENV 标志。

使用这两个标志会对我的应用产生负面影响吗?实现标志的工作需要多长时间?

如需实现 FLAG_SECURE 标志,请将以下这行代码添加到 AndroidManifest.xml 文件中:

XML

<activity android:name=".MyActivity"
          android:exported="true"
          android:windowSoftInputMode="adjustPan">
  <intent-filter>
    <action android:name="android.intent.action.MAIN" />
    <category android:name="android.intent.category.LAUNCHER" />
  </intent-filter>
</activity>

如需实现 REQUIRE_SECURE_ENV 标志,请将以下这行代码添加到 AndroidManifest.xml 文件中:

XML

<manifest ...>
  <application ...>
        …

    <property android:name="REQUIRE_SECURE_ENV" android:value="1" />

    …


  •   </application>
    </manifest>

该内容对您有帮助吗?

您有什么改进建议?
搜索
清除搜索内容
关闭搜索框
主菜单
8211735582929354103
true
搜索支持中心
true
true
true
true
true
92637
false
false