Support for Destructive Panic Actions
PanicKit does distinguish between two kinds of panic responses: * default responses such as logging out which are non-destructive and do not require user interaction, so that the basics work without configuration * destructive responses such as deleting user data. These require some sort of authentication to make sure they are not triggered by malicious apps The second type of responses is implemented with this commit. Authentication is done by comparing the package name which is very weak. It requires the user to opt-in to destructive responses and to configure from which app to receive those (since there might be many different panic trigger apps). While possible to uninstall an app and install one with the same package name afterwards, this always triggers notifications to the user (if the attacker does not have root access). Still that is no sufficient security for Briar's requirements, so that TrustedIntents are used as well to make sure that the app sending the destructive trigger is signed by a signing key that we specified before. Currently, that is the one from the GuardianProject and from IilabEngineering who does the Amnesty International Panic App. The responsibility of checking that the panic TRIGGER is legitimate lies with the app responding to the trigger, so Briar in this case. This commit checks whether the TRIGGER comes from a trusted app before performing destructive actions, but does perform the default action even when triggered from untrusted apps. Closes #210
Showing
- briar-android/AndroidManifest.xml 5 additions, 0 deletionsbriar-android/AndroidManifest.xml
- briar-android/build.gradle 2 additions, 0 deletionsbriar-android/build.gradle
- briar-android/res/xml/panic_preferences.xml 18 additions, 0 deletionsbriar-android/res/xml/panic_preferences.xml
- briar-android/src/org/briarproject/android/panic/PanicPreferencesFragment.java 227 additions, 1 deletion.../briarproject/android/panic/PanicPreferencesFragment.java
- briar-android/src/org/briarproject/android/panic/PanicResponderActivity.java 78 additions, 6 deletions...rg/briarproject/android/panic/PanicResponderActivity.java
Loading
Please register or sign in to comment