我已在我的应用中安装了一个Google验证码(适用于Android的SecurityNet Google Recaptcha:https://developer.android.com/training/safetynet/recaptcha#send-request)。
它放置在我的应用程序的“启动屏幕”上(加载屏幕显示1秒钟,并且只有徽标;该屏幕逐渐向左消失,以让路给我应用程序的真实主屏幕)。
在我的应用启动时:
如果用户已登录,则他/她将在没有按钮的情况下到达初始屏幕。如前所述,启动画面会动画设置
如果用户未登录,则他会通过“检查我是人而不是机器人”按钮到达初始屏幕。如果并且仅当该人单击该按钮时才触发Google ReCaptcha,并且如果该人填写了该验证码,则启动屏幕将转给Google Firebase AuthUI,后者显示登录的Google帐户按钮。当且仅当此人通过单击此AuthUI按钮使用其Google帐户登录时,然后启动屏幕才会如上所述进行动画处理。
我的应用程序的入口点是此“ SplashScreen”活动。因此,通常,将验证码放在其中就足够了。
但是。让我们想象一下,黑客将自己作为人类与他的智能手机连接到了我的应用程序。因此,他已经成功通过了Google ReCaptcha等。现在他已经在我的应用的真实主屏幕上,可以使用了。现在,他在我的应用程序上启动了他的机器人!该机器人无需经过验证码步骤,就可以在我的应用中执行任何操作。这种情况可以想象吗?如果是:如何补救?而且,如果黑客这样做,则该机器人很可能会重新启动该应用程序:它将被视为已连接,并且无需再次执行验证码步骤。