Push-Nachrichten von MacTechNews.de
Würden Sie gerne aktuelle Nachrichten aus der Apple-Welt direkt über Push-Nachrichten erhalten?

Apple geht gegen Hot-Patching in iOS-Apps vor

Medienberichten zufolge weist Apple eine kleine Gruppe von App-Entwicklern daraufhin, dass deren eingereichte Apps Gefahr laufen, aus dem App Store verbannt zu werden. Apple stört sich in diesen Fällen offenbar an deren integrierten Hot-Patch-Mechanismen. Durch Erweiterungen wie Rollout.io und JSPatch lassen sich so abseits der offiziellen App-Store-Prüfung über Server jederzeit Updates einspielen und so die Funktionsweise anpassen.


Bereits im vergangenen Jahr hatten Sicherheitsexperten darauf hingewiesen, dass diese Mechanismen in einigen Fällen sowohl zum Guten als auch Bösen verwendet werden können. So lassen sich iOS-App damit um systemnahe Funktionen oder ganz neue Funktionen erweitern, die es so nicht durch die App-Store-Prüfung von Apple geschafft hätten. Beispielsweise könnten heimlich Bild-, Ton- und Video-Aufnahmen erstellt oder teure Telefonanrufe durchgeführt werden.

Betroffene Entwickler und auch die Anbieter derartiger Erweiterungen zeigen sich von Apples Vorgehen nun wenig begeistert, da so ein Weg genommen wird, zeitnah kritische Fehler in eine App zu beheben. Dabei liegt es in der Hand der Entwickler, entsprechende Sicherheitsfilter einzubauen, damit trotz Hot-Patching keine unerlaubten systemnahen Funktionsaufrufe über Internet-Server eingeschleust werden können. Das dies möglich ist und von Apple toleriert wird, zeigen alternative Lösungen wie Expo und CodePush.
Apples E-Mail an Entwickler
Your app, extension, and/or linked framework appears to contain code designed explicitly with the capability to change your app’s behavior or functionality after App Review approval, which is not in compliance with section 3.3.2 of the Apple Developer Program License Agreement and App Store Review Guideline 2.5.2. This code, combined with a remote resource, can facilitate significant changes to your app’s behavior compared to when it was initially reviewed for the App Store. While you may not be using this functionality currently, it has the potential to load private frameworks, private methods, and enable future feature changes.

This includes any code which passes arbitrary parameters to dynamic methods such as dlopen(), dlsym(), respondsToSelector:, performSelector:, method_exchangeImplementations(), and running remote scripts in order to change app behavior or call SPI, based on the contents of the downloaded script. Even if the remote resource is not intentionally malicious, it could easily be hijacked via a Man In The Middle (MiTM) attack, which can pose a serious security vulnerability to users of your app.

Please perform an in-depth review of your app and remove any code, frameworks, or SDKs that fall in line with the functionality described above before submitting the next update for your app for review.

Kommentare

gegy09.03.17 12:39
Wusste gar nicht, dass sowas überhaupt möglich war. Ich begrüße Apples Entscheidung aber.
+11
Raziel109.03.17 13:08
Viele Apps verwendeten das. Vor allem zb bei einer WebApp, die du mittels zb Cordova erstellt hast. Da gab es genügend Plugins (z.B. CodePush) über die man dann den Webanteil der App einfach updaten konnte ohne dafür eine neue App einreichen zu müssen.

Ich denke mal das dann oben auch erwähnte Plugins wie CodePush ebenfalls Geschichte sind.
+1
Hannes Gnad
Hannes Gnad09.03.17 13:20
Für die Entwickler unbequem, aus dem Blickwinkel der Sicherheit lange überfällig.
+11
Stefan S.
Stefan S.09.03.17 13:25
Gibt es eigentlich irgendwo eine Statistik, wieviele Apps von der NSA in Auftrag gegeben wurden?
-3
Lefteous
Lefteous09.03.17 13:48
Sprechen wir hier auch von Spielen, die sich auf offiziellem Weg aktualisieren und dann - wenn man das Spiel dann Tage später startet - erstmal Minuten lang noch etwas herunterlädt und dann patcht. Das nervt wie die Sau. Wenn das damit gemeint ist, dann bitte weg damit!
+2
Raziel109.03.17 14:20
Davon ist wohl auszugehen, denn auch hier könnte potentiell ja alles Mögliche geladen werden
+2
Hannes Gnad
Hannes Gnad09.03.17 14:44
Ihr meint "In-App-Contents", und das ist was anderes als eine sich selbst verändernde App.
0
cy2u509.03.17 21:38
Wird nicht WhatsApp auch auf diese Weise gepatcht? Es wurden doch öfter schon serverseitig Funktionen freigeschaltet.
0

Kommentieren

Sie müssen sich einloggen, um die News kommentieren zu können.