Schädliche Chrome-Erweiterungen



Das Publikum der Klassenkameraden beträgt 71 Millionen pro Monat. Neben dem gesamten Internetpublikum sind unsere Benutzer allgemeinen Sicherheitsbedrohungen ausgesetzt: Phishing, Viren, Wiederverwendung von Passwörtern. Der wirtschaftliche Motor für Angriffe auf Nutzer sozialer Netzwerke ist in der Regel die Verbreitung von Spam. Und obwohl solche Angriffe nicht direkt auf die Sicherheitslücke von Odnoklassniki zurückzuführen sind, sind wir daran interessiert, ihnen entgegenzuwirken, und untersuchen dafür alle wichtigen Spam-Vorfälle.

Eine typische Untersuchung eines neuen (erfolgreichen) Spam-Angriffs beginnt, nachdem wir bei Portalbenutzern abnormale Aktivitäten festgestellt haben. Dies kann sich in einer erhöhten Belastung einzelner Dienste (z. B. einem Bild-Upload- oder Suchdienst), in der aktiven Verteilung derselben Art von Inhalten (z. B. Links zu ähnlichen Websites) oder sogar in einer Zunahme der Anzahl von Anrufen beim Support-Dienst äußern.

Während der Untersuchung ist es für uns zunächst wichtig zu bestimmen, wie Spam innerhalb des sozialen Netzwerks verteilt wird. Das Ergebnis einer solchen Untersuchung ist häufig der Nachweis einer Gruppe von Geräten, die mit Viren infiziert sind. Manchmal finden wir unter den Spam-Mails, die sie verbreiten, Links zum Virus selbst. So schaffen wir es, das Verteilungsschema wiederherzustellen und beteiligte Benutzer zu finden.

Ein interessanter Sonderfall solcher Angriffe ist die Infektion mit böswilligen Browsererweiterungen. Erweiterungen für Chrome können sowohl in Chrome selbst als auch in auf Chromium basierenden Browsern installiert werden, z. B. Opera und Yandex.Browser. Das heißt, der Löwenanteil des Webs ist potenziell abgedeckt. Schädliche Erweiterungen für andere Browser (Firefox, Safari) sind weitaus seltener. Ich kann davon ausgehen, dass die Entwicklung von Viren in ihrem Fall aufgrund des relativ kleinen Publikums dieser Browser keine Vorteile bringt.

Wir können sogar das Ausmaß der Verbreitung böswilliger Erweiterungen unter unseren Benutzern berechnen:



Jeden Tag registrieren wir 100-200.000 infizierte Benutzer. Insgesamt wurden im Jahr 2018 1,2 Millionen Benutzer mit einem infizierten Browser gesehen.

Anfang 2017 haben wir beim OWASP Russia Meetup # 6 bereits über Odnoklassnikis Erfahrung im Kampf gegen die Verbreitung bösartiger Erweiterungen für Chrome gesprochen. In fast zwei Jahren hat sich viel geändert. Aber zuerst wollen wir herausfinden, wie die Erweiterungen funktionieren.

Mit Chrome können Benutzer den Browser anpassen, indem sie Erweiterungen installieren.
Erweiterungen werden mit einer Javascript-API bereitgestellt, mit der sie Folgendes können:

  • Abfangen und Ändern von HTTP-Anforderungen und -Antworten;
  • Ändern Sie das DOM der angezeigten Seiten.
  • Verwalten der Browser-Oberfläche (Öffnen und Schließen von Registerkarten, Hinzufügen von Elementen zum Kontextmenü);
  • die Liste der Erweiterungen verwalten;
  • Abonnieren Sie Systemereignisse beispielsweise über Maus und Tastatur.
  • Lesen Sie den Browserverlauf und die Site-Daten.

Erweiterungen werden über den Chrome Web Store in Form eines Archivs mit Quellcode und Ressourcen (Bilder, Stile, HTML-Seiten) verteilt. Die wichtigsten Komponenten der Erweiterung sind nachfolgend aufgeführt:

  • Das Manifest ist JSON mit Erweiterungskonfiguration. Das Manifest deklariert unter anderem die erforderlichen Berechtigungen und Domänen für die Daten, auf die die Erweiterung Zugriff erhält.
  • Hintergrundskripte werden im Hintergrund in ihrem eigenen Kontext ausgeführt, isoliert vom Code von Webseiten. Sie sind so konzipiert, dass sie eine Vielzahl von Ereignissen vom Browser empfangen und verarbeiten und vollen Zugriff auf die API haben.
  • Inhaltsskripte werden im Kontext der Webseite ausgeführt. Javascript-Umgebungen der Seite selbst und der Erweiterung sind voneinander isoliert, die Erweiterung hat keinen Zugriff auf die Variablen und Funktionen der Seite und umgekehrt. Skripte können mit XMLHttpRequest DOM-Seiten ändern und standortübergreifende Anforderungen ausführen. Im Gegensatz zu regulären Seiten gelten dieselben Ursprungsrichtlinien und CORS-Serverrichtlinien nicht für Anforderungen von Erweiterungen, sondern sind nur durch die im Manifest angeforderten Zugriffe beschränkt.

Angenommen, jemand hat beschlossen, seinen eigenen Virus zu schreiben. Was kann er realisieren?

Zugriff auf Benutzerdaten
Wie oben erwähnt, kann die Erweiterung Anforderungen und Antworten zwischen der Seite und dem Server abfangen. Es ist klar, dass der universelle Mechanismus zum Schutz von Daten während der Übertragung - SSL - in diesem Fall nicht zum Schutz von Seitendaten beiträgt, da der Browser diese an die bereits entschlüsselte Erweiterung überträgt.

Seiteninhalt ändern
Die Erweiterung hat Zugriff auf das DOM, kann Elemente hinzufügen und entfernen und die Seitenoberfläche ändern. Ein klassisches Beispiel ist das Ersetzen von Bannerwerbung.

Verfolgung der Benutzeraktivität
Die Erweiterung kann Ereignisse über Tastatur und Maus abonnieren und so Benutzeraktionen im Browser verfolgen und Passwörter, persönliche Daten und Bankkartennummern sammeln.

Aktionen für den Benutzer ausführen
Die Erweiterung kann Skripte im Kontext der Opferseite ausführen, die gegen dieselbe Ursprungsrichtlinie verstoßen. Dies bedeutet, dass alle Aktionen, die der Benutzer auf der Site ausführen kann, auch von der Erweiterung initiiert werden können.

Umgehen Sie die Zwei-Faktor-Authentifizierung und andere Kontoschutzfunktionen
Der Benutzer übergibt die Authentifizierung und Autorisierung selbst im Browser. Daher erhält die Erweiterung dieselbe Sitzung wie ein legitimer Benutzer.

Perfektes Botnetz
Intelligente Captcha- und Hochwasserschutzsysteme beruhen in der Regel auf der Tatsache, dass der Verkehr von Bots durch IP, Fingerabdrücke und die Verteilung von Anforderungen über die Zeit vom Verkehr von guten Benutzern unterschieden werden kann. Erweiterungsanforderungen können nicht von Anforderungen realer Benutzer getrennt werden.

In diesem Jahr kündigte Google mehrere Innovationen an, mit denen die Verbreitung von Malware im App Store gestoppt werden soll. Die Installation von Erweiterungen aus Quellen von Drittanbietern, die Inline-Installation wurde verboten, die Moderationsregeln wurden verschärft, die Verschleierung und die Ausführung von willkürlichem Code in Erweiterungen wurden verboten.

Trotzdem werden weiterhin böswillige Erweiterungen verwendet, um Benutzer anzugreifen. Typische Ziele sind Diebstahl von Konten ( Beispiel ), personenbezogene Daten ( Beispiel ), Spam oder Spoofing von Werbung ( Beispiel ).

Für einen erfolgreichen Angriff muss die Erweiterung mehrere Probleme lösen:

  • verstecke dich vor Mäßigung im Laden;
  • ein Publikum finden und behalten;
  • Geld verdienen.

Durch die strengere Moderation im Store suchten Virenautoren nach neuen Möglichkeiten, um Erweiterungen zu veröffentlichen. Hier haben wir ein klassisches Bild der Anpassung von Spammern an Spamfilter beobachtet: Eine Erweiterung mit Hunderttausenden von Benutzern wurde zu zehn verschiedenen Erweiterungen von verschiedenen Autoren mit einer kleinen Anzahl von Benutzern, und diese Erweiterungen begannen später, beliebte Anwendungen mit einem guten Ruf nachzuahmen. Erweiterungen werden jetzt in beliebten Cloud-Diensten mit ihrem Serverteil und dem „Kontrollzentrum“ gehostet, das das Verhalten infizierter Browser zu einem bestimmten Zeitpunkt definiert.

Nach dem Entfernen aus dem Store können als bösartig erkannte Erweiterungen in den Browsern der Benutzer deaktiviert werden, die sie installiert haben. Um eine infizierte Zielgruppe zu behalten und eine neue Erweiterung anstelle der Remote-Erweiterung installieren zu können, nehmen Virenschreiber Änderungen an den Browsereinstellungen vor, die nicht direkt mit der Erweiterung zusammenhängen: Registrieren Sie einen Servicemitarbeiter, abonnieren Sie Benachrichtigungen für den Benutzer, ersetzen Sie ihn durch die Startseite oder den Suchdienst. Auf diese Weise können Sie einen Link an den Browser senden, um eine neue Version des Virus zu installieren.



Für die von uns beobachteten Viren ist Spam die Haupteinnahmequelle. Unter den vielen Möglichkeiten, Spam für Erweiterungen zu verteilen, sind die folgenden wahrscheinlich am bequemsten:

  • Ersetzen Sie Anzeigen auf besuchten Seiten und fügen Sie sie hinzu . Wie oben erwähnt, können Erweiterungen willkürliche Änderungen am Inhalt der angezeigten Seiten vornehmen, einschließlich des Ersetzens legitimer Anzeigen auf Websites durch eigene oder der Anzeige zusätzlicher Anzeigen für Benutzer durch Öffnen von Popups, neuen Registerkarten oder Umleiten einiger Websites zur Werbung.

    Eine bemerkenswerte Form der Substitution von Erweiterungen durch Werbung ist die Verwendung von HTML5-Benachrichtigungen. Während die Erweiterung im Browser installiert und aktiv ist, reicht es aus, das Opfer auf eine Seite zu locken, auf der der Servicemitarbeiter registriert und der Benutzer für Benachrichtigungen signiert wird. Und da dieser Servicemitarbeiter auch nach dem Entfernen der Erweiterung aus dem Browser nicht direkt mit der Erweiterung verbunden ist, haben die Autoren weiterhin einen Kanal für die Kommunikation mit Benutzern in Form von Push-Benachrichtigungen.

    Ein ähnlicher Mechanismus wird auch in Verbindung mit Social Engineering verwendet, um das Opfer erneut zu infizieren, wenn die Erweiterung aus dem Geschäft entfernt wird: Der Benutzer erhält einen Push mit attraktiven Inhalten (z. B. "ok.ru Neue ungelesene Nachricht") und einem Link zum Installieren einer neuen Version des Virus anstelle der gelöschten.
  • Verwenden Sie das Konto des Opfers, um Spam in sozialen Netzwerken zu verbreiten . Die im Browser installierte Erweiterung kann Anforderungen im Namen des aktuellen Benutzers ausführen, einschließlich des Versendens von Spam unter dem Deckmantel des normalen Inhalts des Benutzers (Schreiben von Nachrichten an Freunde, Veröffentlichen von Notizen und öffentlichen Beiträgen, Hochladen von Fotos oder Videos).

Zusammenfassend können wir den Schluss ziehen, dass böswillige Browsererweiterungen immer noch eine erhebliche Bedrohung für Benutzer und Webanwendungen darstellen. Erweiterungen bieten einen praktischen Mechanismus zum Verbreiten von Schadcode: Sie erfordern keine hohen Qualifikationen zum Erstellen, verursachen weniger Verdacht bei Benutzern während der Installation und werden seltener von Virenschutzprogrammen erkannt.

Die Situation wird durch die Tatsache verschärft, dass Webseiten im Browser offensichtlich weniger Rechte als Erweiterungen haben und nichts zum Schutz ihrer Benutzer tun können. Es ist zu hoffen, dass die von Google angekündigte Antiviren-Kampagne im Store erfolgreich sein wird. Bis dies geschieht, arbeiten wir bei OK daran, die Verbreitung von Viren innerhalb des sozialen Netzwerks zu minimieren und die Nutzung des Dienstes so sicher wie möglich zu gestalten.

Source: https://habr.com/ru/post/de439552/


All Articles