c't 21/2021
S. 138
Praxis
Android-Apps: Updates verhindern

Losgelöst

Android-Apps mittels neuer Signatur vom Play Store entkoppeln

Hin und wieder gibt es Gründe, eine ältere Version einer bestimmten App auf dem Smartphone zu behalten. Das klappt auch, ohne dass der Play Store mit Update-Aufforderungen nervt.

Von Stefan Porteck

So mancher App-Anbieter hat nach einem großen Update Schelte von Nutzern einstecken müssen – sei es, weil die Nutzer ein umgekrempeltes Look-And-Feel nicht mochten oder weil das Update den Funktionsumfang beschnitt.

Wer sich aus solchen Gründen entscheidet, eine App dauerhaft nicht auf die neueste Version zu aktualisieren, muss einige Nachteile in Kauf nehmen. Zwar gibt es unter Android keinen Update-Zwang – wer will, schaltet die automatische App-Aktualisierung im Hintergrund einfach aus. Doch das hat mehrere Nachteile: Fortan gibt sich der Play Store redlich Mühe, mit immer wiederkehrenden Benachrichtigungen über neu verfügbare Aktualisierungen zu nerven. Zudem ist der Button „Alle Apps aktualisieren“ tabu, wenn man eine oder mehrere Apps in der installierten Version behalten will.

Mit einem einfachen Trick lässt sich aber für Ruhe sorgen. Die Idee dahinter: Man gaukelt dem Play Store einfach vor, dass die betreffende App nicht auf dem Handy installiert sei, worauf er Updates weder anbietet noch automatisch herunterlädt. Technisch wird die Koppelung einer App an den Google Play Store über die digitale Signatur der APK-Datei gewährleistet. Diese APK ist quasi die Roh- oder Installationsdatei, die ursprünglich aus dem Play Store heruntergeladen wurde und die eigentliche App auf dem Smartphone installiert.

Ihre Signatur stellt zum einen sicher, dass spätere Updates aus demselben Store stammen wie die ursprünglich installierte App und sorgt zum anderen dafür, dass Dritte die App auf dem Weg vom Store zum Endgerät nicht unberechtigterweise manipulieren – etwa, um den Nutzern bei einem Update einen Trojaner unterzuschieben.

Hat eine App eine gültige Signatur, die nicht vom Play Store stammt, lässt sie sich trotzdem problemlos installieren – zumindest nachdem man in den Android-Einstellungen die Installation aus unbekannten Quellen erlaubt hat. Das macht man sich zunutze, um eine App vom Play Store zu lösen.

Schlüsselmeister

Die Open-Source-App ZipSigner signiert Android-Apps neu. Mit denen lassen sich nervige Update-Aufforderungen vom Play Store umgehen.

Dafür braucht man also zunächst die ursprüngliche APK-Datei der gewünschten App. Mit kostenlosen Tools wie dem Dateimanager Total Commander für Android lassen sich beliebige installierte Anwendungen als APK-Datei im Download-Ordner des Smartphones sichern.

Nun fehlt nur noch ein Tool, das Apps neu signiert. Gute Erfahrungen haben wir mit der Android-App „ZipSigner“ gemacht, die im Quelltext bei GitHub zu finden ist. Dessen Entwickler beschreibt überdies auf seiner Website [1] detailliert, wie sie funktioniert. Leider listet der Play Store mittlerweile Zip Signer nicht mehr, man bekommt die App aber in der aktuellen Version 3.4. auf der Webseite apkmirror.com.

Nach dem Start der App braucht man lediglich über den Button „Input“ die vorab gesicherte APK-Datei über das Dateimenü auszuwählen. Danach wählt man über den „Output“-Button den Speicherort der neuen APK-Datei. Sie sollten den Dateinamen ändern, sodass Sie die beiden APKs anschließend auseinanderhalten können. Unter dem Auswahlfeld „Key/Mode“ bietet ZipSigner verschiedene interne Signatur-Keys an und erlaubt es auch, ein eigenes Paar aus öffentlichem und privatem Signaturschlüssel zu nutzen. Für unsere Zwecke reicht es aus, die Testkeys zu nutzen.

Nach einem Tipp auf die Schaltfläche „Sign The File“ erzeugt ZipSigner in Sekunden die neu signierte APK-Datei am vorab festgelegten Speicherort. Im nächsten Schritt installiert man lediglich die originale Version der App und wählt über einen Dateimanager die Version mit der neuen Signatur zur Installation aus.

Mit der neuen Signatur erkennt Android nicht mehr, dass die App ursprünglich aus dem Google PlayStore stammt.

Anschließend findet sich die App wie gewohnt und mit vollem Funktionsumfang auf dem Handy. Allerdings gehen alle vorab durchgeführten Einstellungen und Daten verloren, als hätte man die App wirklich neu installiert. Durch die Kappung der Verbindung zum Play Store wird dieser aber nun keine Updates mehr finden und anbieten. Im letzten Schritt können Sie dort also die automatische Aktualisierung aller installierten Apps wieder einschalten.

In unseren Tests funktionierte das bei mehreren Apps problemlos. Sofern man anschließend in den Android-Einstellungen die Installation aus unbekannten Quellen wieder deaktiviert, besteht kein Sicherheitsrisiko durch andere manipulierte Apps. Allerdings könnte die neu signierte App selbst Lücken und Bugs enthalten, die mit neueren Versionen behoben wurden. Das Neusignieren empfiehlt sich deshalb nur für Apps, die keine sensiblen Daten verwalten oder auf solche zugreifen können. (spo@ct.de)

Webseite des Zip-Signer-Entwicklers: ct.de/y56d

Kommentare lesen (3 Beiträge)