Search for:

Auspacken der Android-Sicherheit: Teil 1 – Unsachgemäße Nutzung der Plattform Lähde: Ed George | Februar 2022

Ed George
Bildnachweis: Mohn

👋 Hallo und willkommen zu der neuen Reihe von Blogbeiträgen, in denen wir tief in die Android-Sicherheit eintauchen werden. Diese Serie konzentriert sich hauptsächlich auf Top 10 mobil Sicherheitsbedrohungen zu Open Web Application Security Project Foundation (OWASP).die führende Community für Anwendungssicherheit in unserem Bereich.

Während sich diese Posts auf die Android-Plattform konzentrieren, sind viele der Ideen und Gefühle dahinter völlig agnostisch für die Plattform, ebenso wie die OWASP-Top-10-Liste selbst.

Diese Beiträge sind auch eine Ergänzung zu meiner Rede vom Januar 2022 „Don’t Be Stunned by OWASP – An Introduction to Writing Code for Greater Android Security“, in der ich die 5 größten Probleme ausführlicher bespreche. Bitte überprüfen Sie meine Diskussionsseite für weitere Details und relevante Links. EIN begleitender Antrag die die in der Rede vorgestellten Probleme demonstriert, steht ebenfalls zum kostenlosen Download zur Verfügung.

Bitte beachten Sie, dass diese Serie zu Bildungszwecken dient nur. Denken Sie daran, nur Anwendungen zu testen, für die Sie die Erlaubnis dazu haben, und vor allem, sei nicht gemein.

Wenn Ihnen diese Serie gefällt oder Sie Feedback haben, Bitte sende mir eine Nachricht. Danke!

In diesem ersten Teil meiner Serie über Android-Sicherheit werden wir uns mit der Bedrohung Nummer 1 für die Sicherheit mobiler Apps befassen, die von OWASP als unsachgemäße Nutzung der Plattform bezeichnet wird.

Auf den ersten Blick scheint die missbräuchliche Nutzung der Plattform eine etwas vage Aussage über etwas zu sein, das sein sollte das brennendes Problem in der Sicherheit mobiler Anwendungen. Was dieser Titel jedoch subtil auszudrücken versucht, ist, dass die Hauptbedrohung für die Sicherheit unserer mobilen Anwendungen tatsächlich darin besteht uns. Geradeheraus, Wir sind das Problem! ¹

Was meine ich mit dieser hyperbolischen Aussage? Nun, normalerweise führt unbeabsichtigter Missbrauch von Entwicklern, Fahrlässigkeit oder einfach Unverständnis für die Android-Plattform zu unseren schwerwiegendsten Sicherheitsproblemen.

Niemand kann erwarten, dass er die gesamte Plattform von innen kennt, und Entwickler sind auch nicht unfehlbar. Fehler passieren unvermeidlich, aber ich hoffe, dass Sie durch die Einführung einiger der häufigsten Sicherheitsprobleme, die wir versehentlich in unseren Code schreiben, es sich zweimal überlegen, bevor Sie selbst denselben Fehler machen, und sich vor einer potenziellen Sicherheitskatastrophe bewahren.

Entschuldigung für das schreckliche Wortspiel, das erste häufige Beispiel für den Missbrauch der Android-Plattform fällt in die Definition Intent. Für diejenigen, die neu bei Android sind, profitiert die Plattform Intent Klasse als eine Möglichkeit, eine Art von Aktion zu initiieren. Dies kann in Form des Navigierens auf einem neuen Bildschirm in Ihrer App, des Startens eines Hintergrund-/Vordergrund-Dienstes oder der Registrierung eines Rundfunkempfängers erfolgen, um regelmäßige Updates von einer Quelle zu erhalten. Der Intent -Klasse bietet eine einfache Möglichkeit, Daten zu parsen und an separate Anwendungskomponenten zu übergeben, und ist die häufigste Methode, dies mithilfe eines Frameworks zu erreichen.

Allerdings ist das Android-Framework Auch ermöglicht anderen Anwendungen das Senden und Empfangen Intent Instanzen zwischen ihnen, um die „Kommunikation“ zwischen Anwendungen zu erleichtern. Hierin liegt die erste gemeinsame Falle.

Um die Kommunikation zwischen Anwendungen zu ermöglichen, die Komponente der Anwendung, die wir erhalten möchten Intent muss als gekennzeichnet sein android:exported=true Innerhalb AndroidManifest.xml Datei. Wenn Sie eine Komponente mit diesem Flag markieren, können Sie eine „ausdrückliche Absicht“ an eine andere Anwendung (oder ein anderes System) senden, um die angegebene Aktion auszuführen, die die empfangende Komponente verwalten kann.

Darüber hinaus können auch Komponenten definiert werden <intent-filter> Blöcke innerhalb des Manifests, um die Arten von Absichten anzugeben, auf die die Aktivität, der Dienst oder der Broadcast-Empfänger reagieren kann. Durch diese Definition kann eine andere Anwendung „implizite Absicht“ verwenden, um das System aufzufordern, Ihre Anwendung als kompatibel anzuzeigen, wenn sie eine bestimmte Absicht anbietet. Beispielsweise die Weiterleitung an ein implizites Intent-System, um Anwendungen anzuzeigen, die URLs verarbeiten können https://spght.dev kann eine Liste der installierten Webbrowser anbieten. Was jedoch für Anfänger vielleicht nicht offensichtlich ist, ist, dass durch die Angabe des Intent-Filters die Komponente im System als Export gekennzeichnet wird obwohl android:exported=true es ist im Manifest nicht explizit definiert.

Meiner Erfahrung nach ist es nicht ungewöhnlich, dass App-Komponenten versehentlich als „Exportieren“ gekennzeichnet werden, obwohl dies eigentlich nicht der Fall sein sollte. Diese falsch definierten Anwendungskomponenten stellen ein großes Sicherheitsrisiko dar, da sie direkt verfügbar sind und daher potenziell ausgenutzt werden können.

Der Hauptgrund, warum schlecht verwaltete Exporte so gefährlich sind, liegt darin, dass es trivial ist, diese Schwachstellen in der Anwendung zu finden und darauf abzuzielen.

Böswillige Akteure können manuell nach Reverse-Engineering-Anwendungen suchen oder Befehlszeilentools wie z drozer oder Cutter um gefährdete exportierte Komponenten zu scannen. Einmal gesammelt, kann es verwendet werden adb entweder um eine Komponente auszuführen oder um eine Absicht zu erstellen, die die gewünschte Aktion des Hackers ausführt.

Ein bemerkenswertes Beispiel dafür aus der realen Welt wurde vom Käferjäger Mehtab Zafar (mzfr) in seinem November 2020 entdeckt. Blogeintrag die detailliert beschreibt, wie die falsch konfigurierte „Deep-Link-Aktivität“ die Ausnutzung von Multi-Site-Scripting (XSS) auf der offiziellen mobilen GitHub-App ermöglichte. Huch.

Bildnachweis: https://blog.mzfr.me/posts/2020-11-07-exported-activities

U begleitender Antrag für meine Rede geschrieben wurde, wurde dies durch Fehlkonfigurationen von Aktivitäten demonstriert MainActivity dass es gemeldet werden kann, obwohl normalerweise eine “Authentifizierung” für den Zugriff von der Anwendung erforderlich ist.

Wie MainActivity exportiert wird, ist es möglich, einfach anzurufen adb dass das System die Aktivität öffnet und somit die Notwendigkeit einer Authentifizierung umgeht.

All dies mag ein wenig entmutigend klingen, aber zum Glück ist es so einfach, diesen Angriffsvektor zu stoppen, wie die relevanten Komponenten in Ihrem zu sichern AndroidManifest.xml die Datei(en) korrekt mit gekennzeichnet sind android:exported.

Tatsächlich ist es ab Android 12 (API 31) nun eine Anfrage zu setzen android:exported Eigentum an allen Ihren Activity, Serviceich BroadcastReceiver Definitionen in Ihrer Anwendung AndroidManifest.xml Datei(en), wenn Sie auf dieses SDK abzielen.

Als zusätzlichen Schutz ermöglicht die Android-Plattform der App auch, eine „benutzerdefinierte Lizenz“ zu definieren Elemente der Genehmigung im Manifest für Wechselwirkungen einschränken mit seinen exponierten Komponenten.

Beispielsweise kann eine Anwendung eine “Signatur”-Berechtigung definieren, die es ihr erlaubt, nur mit anderen Anwendungen zu interagieren, die dieselbe Berechtigung teilen. ich werden mit demselben Signaturzertifikat erstellt:

Um das Schicksal von GitHub zu vermeiden, ist es außerdem eine bewährte Methode, Inhalte zu überprüfen und zu validieren Intent die Sie erhalten, wenn Sie mit Daten umgehen von a <intent-filter>. Tu es Nein blind glauben, dass das, was Sie bekommen, das sein wird, was Sie erwarten!

In zukünftigen Beiträgen dieser Serie werden wir weitere Fälle von „Plattformmissbrauch“ und mehr als die OWASP Top 10 für mobile Geräte untersuchen.

Danke wie immer fürs Lesen! Ich hoffe, Sie fanden diesen Beitrag interessant, zögern Sie nicht, mich mit Feedback zu twittern @Sp4ghettiCode und vergessen Sie nicht zu klatschen, zu liken, zu twittern, zu teilen, zu markieren usw.

Weiterlesen

Auspacken von Metas dunklem Verdienst im vierten Quartal

Meta, geboren auf Facebook, verzeichnete im nachbörslichen Handel einen Rückgang der Aktienkurse von mehr als 20 % gab gestern seine Ergebnisse für das vierte Quartal bekannt. Während ich dies schreibe, liegt der Aktienkurs des Unternehmens bei 249,05 $, verglichen mit 351,24 $ vor sechs Monaten und 268,10 $ vor einem Jahr. Die Marktkapitalisierung des Unternehmens, die Ende Juni vergangenen Jahres mehr als 1 Billion US-Dollar erreichte, liegt derzeit bei knapp 700 Milliarden US-Dollar.

Äpfel Anwendungsverfolgungstransparenz (ATT) Datenschutzrichtlinie versetzte Matt einen harten Schlag. Dass dieses Ergebnis unvermeidlich war, war seit der Ankündigung der Richtlinie im Juni 2020 offensichtlich, aber es war wahrscheinlich – oder zumindest vorhersehbar – schon lange vorher. 2017 habe ich geschrieben Der kommende Krieg zwischen Apple und Facebook, in dem ich ausführlich erklärte, warum Apple den Zugriff auf den Unique iOS Device Identifier (IDFA) widerrufen könnte, der zur Messung digitaler Werbung verwendet wird, um das beängstigende Wachstum von Meta zu stoppen. Und im Februar 2020, vier Monate bevor Apple ATT einführte, schrieb ich Apocalypse Coming Soon: Was passiert, wenn Ihre iOS-Werbe-ID veraltet ist?in dem ich eine hypothetische Kette von Ereignissen darstelle, die auf Apples Ankündigung zurückzuführen sind, dass die IDFA obsolet werden würde.

ATT oder eine ähnliche Politik wird seit Jahren vom Werbeökosystem erwartet. Dennoch ist der Schaden an den Aktienkursen sozialer Plattformen seit ATT bisher in Wellen aufgetreten, vierteljährlich, während die öffentlichen Märkte aufgrund der Realität von ATT aufgewacht sind. Im Januar 2021, vor mehr als einem Jahr, schrieb ich Facebook könnte 7 % der Einnahmen aus den Datenschutzänderungen von Apple erzielen. In dem Beitrag habe ich eine Analyse mehrerer Szenarien vorgestellt, wie ATT die Fähigkeit von Facebook beeinträchtigen kann, Anzeigen im Auftrag von Werbetreibenden gezielt zu schalten – und somit den Einnahmemechanismus des Unternehmens beeinträchtigt – mit den schlimmsten, zugrunde liegenden und besten Ergebnissen. Wie Das ist mir nach dem Ergebnisbericht von Meta für das dritte Quartal aufgefallen, selbst meine anfängliche Einschätzung des Worst-Case-Szenarios in diesem Beitrag war optimistisch. Und mit dem zusätzlichen Kontext der Ergebnisse dieses Quartals sieht das Worst-Case-Szenario aus dieser Analyse ziemlich sonnig aus.

Für das vierte Quartal übertraf Meta die Erwartungen der Analysten an Werbeeinnahmen auf 33,67 Milliarden US-Dollar (im Vergleich zu den erwarteten 33,4 Milliarden US-Dollar), verfehlte jedoch das obere Ende seiner Richtlinien für das letzte Quartal, das sich auf 34 Milliarden US-Dollar belief. Meta verfehlte die Erwartungen bezüglich des Gewinns je Aktie von 3,67 US-Dollar (im Vergleich zu Erwartungen von 3,84 US-Dollar). Aber insbesondere nahm Meta-in DAU von Q3 zu Q4 ab und seine MAU stieg nur um 2 mm.

In ihrer Forderung nach Verdiensten führte Meta ihre schwache Leistung im vierten Quartal auf eine Kombination aus ATT und einer Dysfunktion der Lieferkette zurück (ich beschreibe diese unglücklichen Umstände in Dieser Beitrag). Aber ATT als spezifische Krankheit dominierte Metas Ergebnisgespräch mit Analysten. Der gesamte Aufruf ist aufschlussreich, da eine Reihe wichtiger Auszeichnungen von Metas CFO David Wehner verliehen wurden, aber ich glaube, dass diese Antwort von Sheryl Sandberg den größten Kontext dafür bietet, wie lange ATT weiterhin Metas Werbeleistung belästigen wird:

Auf die Frage, was wir sehen müssen, um Werbeprodukte zu erneuern und den Return on Advertising Investment weiter zu steigern. Kurzfristig arbeiten wir, wie ich bereits sagte, an Metriken und führen neue ein, um Unternehmen dabei zu helfen, Kampagnen weiterhin mit Apples SK-Werbenetzwerk, API und Metas aggregierter Ereignismessung und Konversionsmodellierung zu messen. Wir haben also spezifische Produkte, die Menschen übernehmen können und die uns helfen.

Langfristig müssen wir Technologien zur Verbesserung der Privatsphäre entwickeln, um die Menge an personenbezogenen Daten, die wir lernen und verwenden, zu reduzieren. Verwenden Sie mehr aggregierte Daten, verwenden Sie anonymere Daten, während Sie uns dennoch ermöglichen, relevante Anzeigen zu zeigen, und es wird einige Zeit dauern. Aber eines möchte ich betonen: Es gibt viele Dinge, die kleine und große Unternehmen tun können, um die Vorteile der vielen Targeting- und Messinstrumente zu nutzen, die wir haben. Obwohl wir die Auswirkungen dieser Änderungen gesehen haben, haben wir auch nicht dort angefangen, wo 100 % unserer Millionen und Abermillionen von Werbetreibenden die verfügbaren Tools verwenden.

Während wir also weiterhin diejenigen ermutigen, die sich auf der Akzeptanzkurve befinden, diese Änderungen zu lernen und sich an sie anzupassen, gibt es auch Werbetreibende, die noch nicht einmal die Grundlagen bereitstellen, an denen wir weiter arbeiten und ihre Leistung verbessern können. Wir glauben immer noch, dass es noch viele Leistungsverbesserungen im System gibt.

Der Aufwand, den Sandberg in Metas Gewinnaufruf beschreibt, ist eine langfristige Sanierung des Werbegeschäfts von Meta: Es wird nicht geübt, Kleiderschränke aufzurüsten und Teppiche durch Holzböden zu ersetzen, sondern abzureißen und ein neues Szenario aufzubauen. Die Werbeinfrastruktur von Meta muss aufgrund von ATT und anderen unvermeidlichen Datenschutzinitiativen vollständig ersetzt werden. Das Unternehmen deutete diese Bemühungen zum Wiederaufbau an die Öffentlichkeit Vorschläge, und sie sind beeindruckend und teilweise sehr elegant. Aber das sind langfristige Projekte.

Unterdessen fordert die ATT-Reibung ihren Tribut. Und nicht nur auf Mattie; Snap-Aktien fielen wenige Stunden nach Metas Gewinnbekanntgabe um 17 %. Unter Verwendung historischer Wachstumsraten als Basislinie, wenn auch nicht perfekt, Meta verlor in der zweiten Jahreshälfte 2021 mehr als 10 Milliarden US-Dollar an Werbeeinnahmen als Folge von ATT. Das folgende Modell ist das gleiche, das verwendet wird dieser Beitragaktualisierte Daten für das vierte Quartal 2021.

Etwas, das Klarheit verdient: ATT ist eine Manifestation eines breiteren Datenschutztrends, der letztendlich die offene Übertragung von Daten zwischen Kontexten von Erst- und Drittanbietern stören wird. Ich bin ein Verfechter dieser Störung, wie ich ausgeführt habe IDFA ist der Kohlenwasserstoff des mobilen Werbeökosystems. Aber ATT ist keineswegs die einzige Initiative dafür, und tatsächlich geht die Landschaft des Datenschutzes in der Verbrauchertechnologie seit vielen Jahren in diese Richtung.