
Übertragung sensibler Informationen im Klartext in der Android-Anwendung EagleEyes Lite
In EagleEyes Lite (Version 2.0.0) überträgt die Methode GetHttpsResponse() sensible Informationen wie Konto-IDs, Passwörter, Geräte-Token und interne Server-URLs direkt innerhalb des Query-Strings einer HTTPS-Anfrage.
Da diese Anmeldeinformationen und Token in der URL eingebettet sind, anstatt sicher im Request-Body platziert zu werden, können sie von jedem Angreifer, der einen MITM-Angriff durchführt, leicht extrahiert werden.
Obwohl die Verbindung nominell HTTPS verwendet, erhöht die Offenlegung solcher sensibler Parameter im Klartext innerhalb der URL das Risiko von Anmeldedatenverlust und unbefugtem Zugriff auf AVTECH-CCTV-Systeme erheblich.
Diese Schwäche untergräbt die Vertraulichkeit von Benutzerdaten und macht die Anwendung besonders verwundbar, wenn sie in nicht vertrauenswürdigen Netzwerken betrieben wird.
Wenn das Gerät auf Android-Versionen unter 8.0 läuft, also SDK_API_26 auf false gesetzt ist, gibt die Methode nicht GetHttpsUrlResponse() zurück.
Stattdessen führt sie die anfällige Logik innerhalb des try-Blocks aus.
public static String GetHttpsResponse(String str) {
if (SDK_API_26) {
return GetHttpsUrlResponse(str);
}
try {
...
HttpResponse execute = new DefaultHttpClient(
new SingleClientConnManager(defaultHttpClient.getParams(), schemeRegistry),
defaultHttpClient.getParams()
).execute(new HttpPost(str));
...
}
...
}
Hier enthält der Parameter str die vollständige Request-URL, die sensible Informationen wie account_id und password direkt in den Query-String einbettet.
Infolgedessen werden Benutzeranmeldeinformationen im Klartext innerhalb der URL offengelegt, wodurch sie anfällig für Datenlecks sind, wenn sie durch einen MITM-Angriff abgefangen oder von zwischengeschalteten Systemen protokolliert werden.
Durch Ausführen des Frida-Hooking-Skripts hook.js haben wir bestätigt, dass die Methode GetHttpsResponse() aufgerufen wurde und dass die generierte Request-URL sensible Informationen (wie account_id und password) im Klartext enthielt.
Für eine detaillierte Analyse der anfälligen GetHttpsResponse()-Implementierung siehe CVE-2025-46408.
Die Anwendung sollte niemals sensible Informationen wie Konto-ID, Passwort oder Authentifizierungstoken in URL-Query-Parametern enthalten.
Stattdessen müssen Anmeldeinformationen sicher im HTTPS-Request-Body unter Verwendung von POST-Parametern übertragen werden. Dies verhindert, dass sensible Werte in URLs, Protokollen oder zwischengeschalteten Systemen offengelegt werden.