Sensible Aktivitäten schützen

In diesem Dokument wird beschrieben, wie Sie sensible Aktivitäten wie Nutzeranmeldungen und Onlinekäufe überwachen können.

FLAG_SECURE

FLAG_SECURE ist ein Window-Flag, das Android anweist, keine Screenshots zuzulassen oder die Fensteransicht auf einem nicht sicheren Display anzuzeigen (z. B. beim Streamen des Bildschirms). Dies ist nützlich für Anwendungen, die vertrauliche Informationen wie Banking-Apps oder Passwortmanager schützen müssen. Wenn ein Fenster mit FLAG_SECURE gekennzeichnet ist, verhindert Android, dass Screenshots aufgenommen werden, und verhindert, dass das Fenster auf einem unsicheren Display wie einem Fernseher oder Projektor angezeigt wird. So wird verhindert, dass Unbefugte auf die im Fenster angezeigten Informationen zugreifen können.

So wird Betrug dadurch eingedämmt

Eine schädliche App oder Einheit kann Screenshots im Hintergrund abrufen. Wenn sich der Status Ihrer App in den Hintergrund ändert, kann FLAG_SECURE verwendet werden. Wenn der Screenshot erstellt wird, ist das resultierende Bild leer.

FLAG_SECURE kann auch bei der Remote-Bildschirmfreigabe helfen. Es muss sich nicht immer um eine schädliche App handeln, die Screenshots abruft. Auch legitime Bildschirmfreigabe-Apps werden häufig in betrügerischen Situationen verwendet.

Implementierung

Fügen Sie für Ansichten mit den Informationen, die Sie schützen möchten, Folgendes hinzu:

Kotlin

window?.setFlags(
    WindowManager.LayoutParams.FLAG_SECURE,
    WindowManager.LayoutParams.FLAG_SECURE
)

Java

window.setFlags(
  WindowManager.LayoutParams.FLAG_SECURE,
  WindowManager.LayoutParams.FLAG_SECURE
);

Best Practices

Dieser Ansatz ist nicht zuverlässig, um Overlay-Angriffe zu verhindern. In einigen Fällen wird nicht richtig vorhergesagt, ob die Bildschirmaufzeichnung aktiv ist. Die meisten Anwendungsfälle werden jedoch abgedeckt. Informationen zum Schutz vor Overlay-Angriffen finden Sie im nächsten Abschnitt zu HIDE_OVERLAY_WINDOWS-Berechtigungen.

HIDE_OVERLAY_WINDOWS

HIDE_OVERLAY_WINDOWS ist eine in Android 12 hinzugefügte Berechtigung, mit der Ihre App die Möglichkeit hat, die Darstellung von App-Overlays über ihr zu deaktivieren. In Android 12 haben wir es erschwert, die Berechtigung SYSTEM_ALERT_WINDOW zu erhalten, mit der Ihre App Overlays von Drittanbieter-Apps blockieren kann.

So wird Betrug dadurch eingedämmt

Wenn Sie die Berechtigung HIDE_OVERLAY_WINDOWS aktivieren, wird verhindert, dass Anwendungs-Overlays über Ihrer App angezeigt werden. Diese Berechtigung bietet einen Schutzmechanismus gegen Cloak-and-Dagger-Angriffe.

Implementierung

Wenn Sie diese Berechtigung aktivieren möchten, fügen Sie HIDE_OVERLAY_WINDOWS dem Manifest Ihres Projekts hinzu.

Best Practices

Wie bei jeder Berechtigung sollten Sie einer Overlay-App mindestens so viel Vertrauen schenken wie jeder anderen App auf dem Gerät. Mit anderen Worten: Ihre App sollte anderen Apps nicht erlauben, Overlays darüber zu zeichnen, es sei denn, Sie wissen, dass die andere App vertrauenswürdig ist. Wenn eine App über anderen Apps angezeigt werden darf, kann das gefährlich sein, weil sie Passwörter stehlen oder Nachrichten lesen kann.