Amazon bestätigt und schließt gefährliche Broken-Authentication-Schwachstelle in Amazon-Photos-App für Android

Das Research-Team von Checkmarx hat herausgefunden, dass es die Amazon-Photos-App für Android einer auf dem Smartphone des Users installierten bösartigen App ermöglicht hätte, das Amazon-Access-Token des Benutzers zu stehlen. Die Android-App wurde über 50-Millionen-mal heruntergeladen.

Das Amazon-Access-Token dient dazu, Benutzer über multiple Amazon-APIs hinweg zu authentifizieren. Einige davon enthalten personenbezogene Daten wie den vollständigen Namen, die E-Mail-Adresse und die Adresse. Andere, wie die Amazon-Drive-API, geben Angreifern vollen Zugriff auf die Dateien des Benutzers.

Zurückzuführen ist dies auf eine Fehlkonfiguration der Komponente com.amazon.gallery.thor.app.activity.ThorViewActivity. Diese wird implizit in das Manifest-File der App exportiert, damit externe Anwendungen darauf zugreifen können. Immer, wenn diese Activity angestoßen wird, triggert dies einen HTTP-Request, dessen Header das Access Token des jeweiligen Kunden beinhaltet.

Im Folgenden sehen Sie die Definition der angreifbaren Activity im Android-Manifest-File:

Wie Sie sehen, ist die Activity mit einem Intent-Filter deklariert. Dieser wird von der Anwendung verwendet, um das Ziel des Requests mit dem Access-Token zu bestimmen.

Davon ausgehend könnte eine auf dem Smartphone des Opfers installierte bösartige Anwendung einen Intent versenden, der die angreifbare Activity anstößt und den Request an einen vom Angreifer kontrollierten Server sendet.

Wir nutzen adb, um diesen Intent zu replizieren:

Der vom Angreifer kontrollierte Server würde daraufhin den folgenden Request erhalten:

Wichtig ist hier vor allem der x-amz-access-token-Header mit dem Access-Token.

Dieses Token könnte dann genutzt werden, um auf sämtliche über die Amazon-API verfügbaren Kundeninformationen zuzugreifen, wie unten gezeigt:

Darüber hinaus ließe sich das Token auch nutzen, um über die Amazon-Drive-API eine Liste der Dateien des Kunden zu erhalten und dann deren jeweilige Inhalte zu lesen, zu überschreiben oder sogar zu löschen:

Insbesondere haben wir festgestellt, dass jeder mit diesem Access-Token die Files modifizieren und dabei ihre History löschen konnte. Auf diese Weise war es nicht mher möglich, den ursprünglichen Content aus der File History wiederherzustellen. Über einen anderen API-Endpoint wäre es möglich gewesen, Files und Ordner im Amazon-Drive zu löschen.

Mit Blick auf all die Optionen, die einem Angreifer offenstanden, ist es nicht schwer, ein plausibles Ransomware-Szenario als Angriffsvektor zu entwicklen. Der Angreifer müsste dafür lediglich die Dateien des Kunden auslesen, verschlüsseln und überschreiben, nachdem er ihre History gelöscht hat.

Hinzu kommt, dass die in diesem Artikel genannten APIs lediglich einen Bruchteil des Amazon-Ökosystems ausmachen. Es ist gut möglich, dass einem Angreifer über das gleiche Token auch andere Amazon-APIs offengestanden hätten.

Nachdem wir diese Schwachstellen entdeckt hatten, setzten wir uns zunächst mit dem Entwicklerteam von Amazon Photos in Verbindung. Mit Blick auf die potenziell schwerwiegenden Folgen der Schwachstelle und die hohe Erfolgswahrscheinlichkeit in realen Angriffsszenarien stufte Amazon das Problem als besonders schwerwiegend ein und veröffentlichte kurz nach der Meldung ein Update dafür.

  1. November 2021 Übergabe der Erkenntnisse an das Amazon Vulnerability Research Program.
  2. November 2021 Amazon bestätigt Eingang des Reports.
  3. Dezember 2021 Amazon gibt bekannt, dass die Lücken behoben sind und ein Fix in der Produktivumgebung bereitgestellt wurde.

Es war ein Vergnügen, so effektiv mit dem Amazon-Team zusammenzuarbeiten, das die Verantwortung übernommen hat und sich während der Aufdeckung und Behebung jederzeit professionell verhalten hat. Aus diesem Grund – und für die großartige Zusammenarbeit – verleihen wir dem Security-Team von Amazon das Checkmarx Seal of Approval.

Von Erez Yalon, VP of Security Research, Checkmarx

#Checkmarx