Facebook Mariana Trench hilft Entwicklern, Schwachstellen in Android- und Java-Apps zu finden

| |

Kürzlich Open Source von Facebook, Marianengraben (MT) soll Entwicklern dabei helfen, Sicherheits- und Datenschutzfehler in Android- und Java-Anwendungen zu erkennen und zu verhindern.

MT wurde entwickelt, um große mobile Codebasen zu scannen und potenzielle Probleme bei Pull-Requests zu erkennen, bevor sie in die Produktion gelangen. Es wurde als Ergebnis einer engen Zusammenarbeit zwischen Sicherheits- und Softwareingenieuren bei Facebook entwickelt, die MT darin schulen, Code zu betrachten und zu analysieren, wie Daten durch ihn hindurchfließen.

Die Kernidee von Mariana Trench ist, dass viele Datenschutzprobleme und Sicherheitslücken als Datenflussprobleme modelliert werden können, dh Daten erreichen Orte, an denen sie nicht hin sollten. Dieser Ansatz wird von anderen bei Facebook entwickelten Tools geteilt, wie z Zoncolan und Mosey, die sich auf Hack- und Python-Apps konzentrieren.

Ein Datenfluss in MT wird durch eine Quelle und eine Senke beschrieben. Eine Codebasis kann viele solcher Quellen und Senken haben und MT ist in der Lage, mögliche Pfade von einer Quelle zu ihrer entsprechenden Senke mithilfe einer statischen Analysetechnik, bekannt als abstrakte Interpretation. Um MT zu verwenden, geben Ingenieure an, wo sensible Daten in das System gelangen, z. B. das Dateisystem, und wohin sie nicht gehen sollen, z. B. eine Protokolldatei, eine API usw. Auch dieser Prozess erfordert einige Feinabstimmungen als gründliche Überprüfung aller identifizierten Probleme, einschließlich einer potenziell großen Anzahl von falsch positiven Ergebnissen.

Bei der Verwendung von MT bei Facebook legen wir Wert darauf, mehr potenzielle Probleme zu finden, auch wenn dies bedeutet, dass mehr Fehlalarme angezeigt werden. Denn wir kümmern uns um Randfälle: Datenflüsse, die theoretisch möglich und verwertbar sind, aber in der Produktion selten vorkommen.

Diese Triage wird schließlich zur Identifizierung eines Regelwerks führen, das auf jedem PR ausgeführt werden kann.

Lesen Sie auch  Recycling: WeFix kauft Ihre alten Smartphones

Eine wichtige Rolle in diesem Prozess spielt die Ergebnisüberprüfung und -analyse, die durch Facebook erleichtert wird Postprozessor für statische Analyse (SAPP), ein weiteres Open-Source-Tool von Facebook, das in der Lage ist, MT-Rohausgaben zu interpretieren und zu zeigen, wie Daten von einer Quelle zu einer Senke gelangen können. Das folgende Bild zeigt, wie ein SAPP-Trace aussehen kann:

Im obigen Beispiel hat Mariana Trench eine Remote-Code-Ausführung in gefunden MainActivity.onCreate mit Daten von Activity.getIntent und fließt in den Konstruktor von ProcessBuilder.

Mariana Trench ist sowohl auf GitHub als auch auf . verfügbar PyPI. Wie bereits erwähnt, kann MT auf jedem Java-Repository ausgeführt werden und ist nicht nur auf Android-Apps beschränkt.

.

Previous

Die National Soccer Hall of Fame führt die Klassen 2020, 2021 ein

Louisianna Purchase veranstaltet Best of Austin Drag beim ACL Fest

Next

Leave a Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.