Mobile Apps in Gefahr durch eine drei Jahre alte Sicherheitslücke

Originalbeitrag von Veo Zhang, Mobile Threats Analyst

Insgesamt 6,1 Millionen Geräte, wie Smartphones, Routers und smarte Fernseher sind derzeit in Gefahr. Angreifer könnten aufgrund von bereits 2012 geschlossenen Sicherheitslücken aus der Ferne beliebigen Code ausführen. Die Lücken existieren im Portable SDK for UPnP™ Devices, auch libupnp genannt. Diese Bibliothek wird dafür verwendet, um Media Playback (DLNA) oder NAT Traversal (UPnP IGD) zu implementieren. Apps auf einem Smartphone können diese Fähigkeiten dazu nutzen, um Mediendateien abzuspielen oder sich im Heimnetzwerk eines Nutzers mit anderen Geräten zu verbinden.
Die Sicherheitslücken wurden bereits im Dezember 2012 geschlossen, doch viele Apps nutzen die ältere, angreifbare Version des SDKs. Die Sicherheitsforscher fanden 547 Apps mit den älteren Versionen von libupnp, von denen 326 in Google Play verfügbar sind, einschließlich solch weit verbreiteter wie Tencent QQMusic. Damit sind Millionen Nutzer in Gefahr, abgesehen von den Mobilgeräten, Routers und Smart TVs.


Bild 1. Angreifbarer Smart TV

Funktionsweise

Die Sicherheitslücke liegt in der Art, wie libupnp mit den Simple Service Discovery Protocol (SSDP)-Paketen umgeht. Diese Protokoll ist Teil des Universal Plug N’ Play (UPnP)-Standards. Während dieses Prozesses kommt es zu einem Stack Overflow. Der UDP Port 1900 muss offen sein:

Bild 2. Port Scan des betroffenen Systems zeigt den offenen Port

Ein speziell dafür erstelltes Paket kann die Buffer Overflows verursachen. Das Code-Beispiel zeigt, dass der TempBuf-Buffer zum Überlaufen gebracht werden kann und somit einen Absturz verursacht wird.

Bild 3. Code zeigt den Buffer, der zum Überlaufen gebracht werden kann

Auch könnte ein Exploit genutzt werden, um nicht nur einen Absturz zu verursachen, sondern auch um beliebigen Code auf dem betroffenen Gerät auszuführen. Damit erhielte der Angreifer die Möglichkeit, die Kontrolle über das Gerät, wie auf einem PC, zu übernehmen. Es gab schon Exploits, die Geräte ins Visier nahmen, die keine entsprechenden Schutzmaßnahmen wie Stack Canaries, DEP (Data Execution Prevention) oder ASLR (Address Space Layout Randomization) hatten. Für Systeme, die gut geschützt sind, ist es nicht sicher, ob die Exploits in der Lage sind, aus der Ferne Code auszuführen.

Die Sicherheitsforscher konnten bestätigen, dass bei mindestens 20 Apps die angreifbare libupnp-Bibliothek aktiviert werden kann:

Allgemeiner Name Paketname
AirSmartPlayer com.gk.airsmart.main
Big2Small com.alitech.dvbtoip
CameraAccess plus jp.co.pixela.cameraaccessplus
G-MScreen mktvsmart.screen
HexLink Remote (TV client) hihex.sbrc.services
HexLink-SmartTV remote control com.hihex.hexlink
Hisense Android TV Remote com.hisense.commonremote
Netflix com.netflix.mediaclient
nScreen Mirroring for Samsung com.ht.nscreen.mirroring
Ooredoo TV Oman com.ooredootv.ooredoo
PictPrint – WiFi Print App – jp.co.tandem.pictprint
qa.MozaicGO.Android Mozaic GO
QQMusic com.tencent.qqmusic
QQ音乐HD com.tencent.qqmusicpad
Smart TV Remote com.hisense.common
Wifi Entertainment com.infogo.entertainment.wifi
モバイルTV(StationTV) jp.pixela.px01.stationtv.localtuner.full.app
에브리온TV (무료 실시간 TV) com.everyontv
多屏看看 com.letv.smartControl
海信分享 com.hisense.hishare.hall

Tabelle 1. Einige betroffene Apps

Einzelheiten zu zwei Beispielen aus der Liste, nämlich die QQMusic- und Netflix-App gibt es im Originalbeitrag.

SDKs können auch auf anderen SDKs aufbauen. Das Linphone SDK liefert Voice-over-IP (VoIP)-Services für verschiedene Anwendungen. Das libupnp SDK ist eine von mehreren Optionen für das Linphone SDK, um NAT Traversal über UpnP zu liefern. Wird diese Option gewählt, so wird der angreifbare Service aktiviert.

Bild 4. Linphone stürzt ab, weil es libupnp nutzt

Trend Micro hat Linphone und Tencent (Entwickler der QQMusic-App) über das Problem in ihren Apps informiert, und beide erklärten, einen Fix veröffentlichen zu wollen.

  • 14. November —  Problem an Linphone und Tencent gemeldet.
  • 16. November — Tencent bestätigt die Sicherheitslücke.
  • 18. November — Linphone a bestätigt die Sicherheitslücke.
  • 23. November – Tencent veröffentlicht ein Update für ihre Android–App (Version 5.7.1.5).
  • 25. November – Linphone veröffentlicht einen Fix für dies Problem.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

*