
Frida-basierter PoC, der eine fehlerhafte Zugriffskontrolle in der Owncloud-Android-APK v4.4.1 demonstriert und die Passcode-Validierung durch Hooking der checkPassCodeIsValid-Methode umgeht.
Ein Problem in der Owncloud Android APK v.4.4.1 ermöglicht es einem physisch nahen Angreifer, Privilegien zu eskalieren über die PassCodeViewModel-Klasse, insbesondere in der Methode checkPassCodeIsValid.
Inkorrekte Zugriffskontrolle
Owncloud
Owncloud android apk - 4.4.1
com.owncloud.android.presentation.security.passcode.PassCodeViewModel
Die Klasse PassCodeViewModel in der Anwendung verwaltet die Logik zur Passcode-Überprüfung. Die Methode checkPassCodeIsValid in dieser Klasse ist für die Bestimmung der Gültigkeit des eingegebenen Passcodes verantwortlich.
Ein Frida-Skript wird verwendet, um in die Methode checkPassCodeIsValid der Klasse PassCodeViewModel einzuhaken. Die Implementierung der Methode wird so geändert, dass sie immer true zurückgibt und so die tatsächliche Passcode-Überprüfung umgeht.
Das Frida-Skript wird ausgeführt, während die App läuft. Jede Passcode-Eingabe des Benutzers wird als gültig akzeptiert, was unbefugten Zugriff ermöglicht.
Java.perform(function() { // Locate the PassCodeViewModel class in the target application var PassCodeActivity = Java.use('com.owncloud.android.presentation.security.passcode.PassCodeViewModel');
// Hook the checkPassCodeIsValid method to modify its behavior PassCodeActivity.checkPassCodeIsValid.implementation = function(passcode) {
// Bypass the actual passcode check by always returning true return true;
};
});
Video POC Link : https://drive.google.com/drive/folders/1C-ZYjYhmKRGvWs9YN51XOiAS2WxxwdQd?usp=sharing
Diese Schwachstelle ist eine clientseitige Sicherheitsumgehungs-Schwachstelle. Sie betrifft Benutzer der Anwendung, die auf die Passcode-Funktion angewiesen sind, um sensible Daten zu schützen oder den Zugriff auf bestimmte App-Funktionen zu beschränken. Durch Ausnutzung dieser Schwachstelle kann ein Angreifer die Passcode-Überprüfung umgehen und unbefugten Zugriff auf Bereiche der App erhalten, die geschützt sein sollten, was möglicherweise die Offenlegung von Benutzerdaten oder die Durchführung unbefugter Aktionen in der App zur Folge hat.