Menü
Developer

TZI identifiziert Sicherheitslücken in mit Cordova erstellten Apps

Viele Entwickler greifen auf Apache Cordova zurück, um Arbeitsaufwand zu reduzieren und ihre Anwendungen einem breiten Publikum zugänglich zu machen. Häufig übersehen sie dabei einige Punkte, die für die Sicherheit des Nutzers kritisch sein können.

Von
vorlesen Drucken Kommentare lesen 1 Beitrag

Mitarbeiter des Technologie-Zentrum Informatik und Informationstechnik (TZI) der Universität Bremen haben exemplarisch im Google Play Store bereitgestellte Anwendungen namhafter Anbieter überprüft und sind dabei auf zahlreiche Sicherheitslücken gestoßen, die auf den falschen Einsatz des Frameworks Apache Cordova zurückzuführen sind. Als häufige Schwachstellen konnten die Forscher unnötige Berechtigungen, falsch gesetzte Debug-Flags und die Whitelist identifizieren.

Bei der Betrachtung von Kommunikationsverhalten und Code unterschiedlicher Anwendungen fiel auf, dass viele Apps mehr Berechtigungen umfassen, als tatsächlich für ihr funktionieren notwendig ist. Dies kann unter anderem daran liegen, dass in Standardeinstellungen alter Versionen des Webframeworks eine Vielzahl von Berechtigungen gesetzt sind und einige Entwickler versäumen sie ihrem Anwendungsfall gemäß anzupassen. Angreifer haben so die Möglichkeit, Daten abzugreifen oder Funktionen wie Aufnahme oder Kamera des Anwendergeräts zu nutzen.

Eine weiteres Einfallstor sehen die Forscher im Debug-Flag, das vor der Veröffentlichung einer Anwendung entfernt werden sollte. Häufig deaktivieren Entwickler beim Programmieren wohl zudem SSL-Verschlüsselung und vergessen sie vor der Freigabe im App-Store der Wahl wieder einzuschalten. Auch falsch konfigurierte Whitelists können problematisch werden, da Angreifer sobald sie einmal zugreifen können die Möglichkeit haben, Daten direkt vom kontrollierten Gerät zu versenden.

Um Entwicklern für die gefundenen Schwachstellen zu sensibilisieren, hat Masterstudent Christian Liebig im Rahmen einer von Dr. Karsten Sohr (Geschäftsführer des TZI-Leitthemas Softwarequalität und Informationssicherheit) betreuten Masterarbeit eine Checkliste mit Sicherheitsregeln für die Arbeit mit Cordova erarbeitet. Die meisten lassen sich allerdings auch auf die allgemeine App-Entwicklung anwenden und können helfen, einigen Fallstricke aus dem Weg zu gehen:

  1. Eine aktuelle Apache Cordova/Phonegap-Version verwenden
  2. Auswahl der Android-Berechtigungen und Plug-ins genau prüfen
  3. Testhilfsmittel nur für Entwicklungszwecke verwenden
  4. API-Level definieren. Empfehlung: mindestens API-Level 17
  5. Externe Kommunikation nur über gesicherte Verbindungen durchführen
  6. Externe Websites im Standard-Browser öffnen
  7. Externe Kommunikation wo möglich vermeiden

(jul)