Simple Science

Hochmoderne Wissenschaft einfach erklärt

# Computerwissenschaften # Kryptographie und Sicherheit # Software-Entwicklung

Risiken von VS Code Erweiterungen aufgedeckt

Ein tiefer Blick auf die Sicherheitsrisiken von VS Code-Erweiterungen.

Shehan Edirimannage, Charitha Elvitigala, Asitha Kottahachchi Kankanamge Don, Wathsara Daluwatta, Primal Wijesekara, Ibrahim Khalil

― 8 min Lesedauer


Achte auf VS Code Achte auf VS Code Erweiterungen! Sicherheitsbedrohungen dar. Über 5% der Erweiterungen stellen echte
Inhaltsverzeichnis

In letzter Zeit gibt's immer mehr schicke Softwareangriffe und viele Leute reden darüber, wie man die Softwareentwicklung sicher hält. Es geht darum, sicherzustellen, dass der ganze Code, den wir von anderen verwenden, nichts durcheinander bringt. Aber hier kommt der Haken: Es ist nicht viel darüber bekannt, wie die Tools, die Entwickler benutzen - also diese kleinen Add-Ons zum Programmieren wie VS Code-Erweiterungen - die Sicherheit beeinflussen. Deshalb haben wir uns 52.880 dieser Erweiterungen angeschaut, um zu sehen, ob sie ein Problem für Entwickler und deren Projekte darstellen.

Was Wir Gefunden Haben

Von all diesen Erweiterungen haben etwa 5,6% sich verdächtig benommen. Denk daran wie ein faules Obst im Fass. Diese schlechten Äpfel können das ganze Fass verderben und potenziell sensible Informationen aus den Projekten der Entwickler ausplaudern. Ausserdem hat der Ort, an dem diese Erweiterungen herumschwirren - der VS Code Marketplace - nicht genug Sicherheitsprüfungen. Es ist, als würde man Kindern erlauben, in einem Süsswarenladen ohne Aufsicht herumzulaufen!

Ein Bisschen Hintergrund

Erinnerst du dich, als Dennis Ritchie den Turing Award angenommen hat und uns davor gewarnt hat, Drittanbieter-Software zu vertrauen? Jetzt sind wir hier, und rate mal? Wir vertrauen diesen Drittanbieter-Komponenten immer noch, als wären sie Familie. Und das ist nicht cool! Entwickler setzen sich selbst in Gefahr, weil unseriöser Code durch diese Tools reinrutschen kann, was allerlei Kopfschmerzen verursacht.

In letzter Zeit haben grosse Angriffe auf Software-Lieferketten deutlich gemacht, dass es schlecht enden kann, wenn man untrusted Code wild herumlaufen lässt. Wenn Angreifer in ein beliebtes Tool eindringen können, können sie potenziell Hunderte von Firmen auf einmal erreichen. Es ist wie ein Dieb, der einen Generalschlüssel benutzt, um eine ganze Reihe von Häusern auszurauben!

Was Ist Das Problem?

Während Richtlinien wie das Software Bill of Materials (SBoM) allen helfen, zu sehen, welchen Code sie verwenden, lag der Fokus hauptsächlich auf Software, nicht auf den Tools, die sie erstellen. Viele Entwickler nutzen Erweiterungen, die ihre Projekte direkt beeinflussen können, aber wir haben nicht genug Informationen über diese Erweiterungen, um zu wissen, ob sie sicher sind.

Wir haben Geschichten über schlechte Erweiterungen gehört, die in der Vergangenheit Probleme verursacht haben, aber niemand hat wirklich untersucht, wie gut sie heutzutage funktionieren. Also haben wir uns die Ärmel hochgekrempelt, viele Erweiterungen analysiert und versucht herauszufinden, wie sicher diese Entwickler-Tools sind.

Wie Wir Es Gemacht Haben

Um all diese Erweiterungen zu überprüfen, haben wir verschiedene Methoden verwendet, um die Daten zu durchforsten:

  1. Statische Analyse: Wir haben den Code angesehen, ohne ihn auszuführen. Das hat uns geholfen, verdächtige Teile zu finden, die Probleme verursachen könnten.

  2. Dynamische Analyse: Wir haben einige der Erweiterungen in einer speziellen Version von VS Code ausgeführt, um zu sehen, wie sie sich im echten Leben verhalten.

  3. Virus-Scans: Wir haben Tools wie VirusTotal verwendet, um herauszufinden, ob irgendwelche Erweiterungen als potenzielle Bedrohungen aufgetaucht sind.

Diese Mischung hat uns ein klares Bild davon gegeben, was diese Erweiterungen so treiben.

Was Dann Passierte

Wir fanden heraus, dass 5,6% der Erweiterungen verdächtig aussahen. Das bedeutet, sie könnten die Entwicklungsumgebung schädigen oder sensible Informationen ausplaudern. Uff! Unsere Ergebnisse deuten darauf hin, dass die VS Code-Plattform mit diesem Risiko nicht richtig umgeht. Schlechter Code könnte frei herumlaufen, was so ist, als würde man einem Waschbären erlauben, nachts durch deine Küche zu streifen - sieht vielleicht niedlich aus, aber es wird auf jeden Fall Chaos verursachen!

Visual Studio Code: Die Grundlagen

Für die, die es vielleicht nicht wissen: Visual Studio Code (VS Code) ist ein beliebtes Programmierwerkzeug von Microsoft. Es ist nicht nur ein Texteditor; es ist eine richtige Codefabrik, in der Entwickler in vielen verschiedenen Sprachen schreiben können. Und um das Ganze aufzupeppen, können Entwickler Erweiterungen hinzufügen, die wie kleine Apps sind, die VS Code Superkräfte verleihen.

Diese Erweiterungen sind grossartig, aber sie öffnen auch die Tür zu Problemen. Wenn ein Entwickler versehentlich eine fragwürdige Erweiterung installiert, setzt er nicht nur seinen eigenen Code, sondern vielleicht auch sein ganzes Unternehmen in Gefahr.

Die Verborgenen Gefahren

Es gibt ein paar grosse Probleme, die wir bei diesen Erweiterungen gefunden haben:

  1. Bösartige Erweiterungen: Einige Erweiterungen sind einfach schlecht und können den Computer schädigen oder sensible Informationen stehlen.

  2. Anfällige Erweiterungen: Einige Erweiterungen sehen zwar gut aus, haben aber Löcher im Code, die Angreifer ausnutzen können. Es ist wie eine schöne Vase mit einem grossen Sprung - sieht gut aus, aber ein sanfter Stoss kann ein Durcheinander verursachen!

  3. Datenschutzverletzende Erweiterungen: Dann gibt es diese hinterhältigen Erweiterungen, die mehr schnüffeln, als sie sollten und Informationen einholen, ohne zu fragen. Stell dir vor, ein neugieriger Nachbar spitzt durch dein Fenster!

Der Angriffsprozess

Stell dir eine Situation vor, in der ein böser Akteur eine bösartige Erweiterung reinmogelt. Sobald ein Entwickler sie unwissentlich installiert, fängt diese Erweiterung an, mit anderen Erweiterungen und dem System des Entwicklers zu kommunizieren, was ein gefährliches Spiel von Telefonspielen wird. Sie kann mit dem Code des Entwicklers herumspielen, auf andere Erweiterungen zugreifen und sogar ins Internet gehen und Informationen ausplaudern wie ein Wasserhahn, der nicht aufhört zu tropfen.

Der Erweiterungs-Host-Prozess

Die Art und Weise, wie VS Code funktioniert, hat ihre Eigenheiten. Erweiterungen laufen in einer separaten Umgebung, die Erweiterungs-Host-Prozess genannt wird, was wie ein Hinterhof ist, in dem der ganze Spass passiert. Aber dieser Hinterhof ist nicht einzäunt, was bedeutet, dass untrusted Erweiterungen frei herumlaufen und auf die Dateien und Daten des Entwicklers zugreifen können, ohne viel Einschränkung. Dieses Setup ist ein bisschen so, als würde man Fremde ohne Überprüfung in dein Zuhause einladen.

Der Mangel an Kontrolle

Im Gegensatz zu Plattformen wie Android, die eine ausdrückliche Erlaubnis verlangen, damit Apps auf bestimmte Funktionen zugreifen können, erhalten Erweiterungen in VS Code freien Zugang. Sie können ins System eintauchen, ohne dass der Entwickler es merkt. Dieses Setup kann zu ernsthaften Problemen führen, da diese Erweiterungen allerlei Dinge tun können, wie Dateien ändern oder sogar sensible Informationen ohne Vorwarnung abgreifen.

Verborgene Risiken

Einige Erweiterungen könnten die Sicherheit des Systems verlangsamen. Zum Beispiel deaktivieren bestimmte Erweiterungen Sicherheitsfunktionen, ohne den Entwickler zu informieren. Stell dir vor, dein Antivirus beschliesst, eine Pause einzulegen, ohne dir Bescheid zu geben - das könnte zu Chaos führen!

Netzwerk und Drittanbieter-Abhängigkeiten

Erweiterungen verwenden oft Drittanbieter-Pakete für das Networking, was zu Sicherheitsproblemen führen kann, wenn diese Pakete kompromittiert werden. Es ist wie einen Freund zu haben, der viele andere dubiose Charaktere kennt. Du vertraust ihm vielleicht, aber du weisst nicht, mit wem er in seiner Freizeit abhängt!

Der Visual Studio Marketplace

All diese Erweiterungen sind im Visual Studio Marketplace zu finden, wo Entwickler nach ihrem nächsten Lieblingswerkzeug suchen. Der Marketplace hat einige Prüfungen, wie das Scannen auf Viren, bevor Erweiterungen live gehen. Allerdings haben unsere Recherchen viele Erweiterungen zutage gefördert, die immer noch Probleme verursachen.

Mangel an Transparenz

Ein grosses Problem ist, dass viele Erweiterungen nicht viel über ihre Sicherheitspraktiken preisgeben. Entwickler bleiben oft im Dunkeln darüber, was mit ihren Informationen passiert. Wenn du etwas installierst, sollte es keine Rätseltour sein - du solltest wissen, was vor sich geht!

Ergebnisse unserer Analyse

Mit unserer umfangreichen Analyse haben wir festgestellt, dass Tausende von Erweiterungen tatsächlich fragwürdig sind. Einige teilen sensible Daten ohne Zustimmung, während andere Schwachstellen aufweisen, die von jedem mit schlechten Absichten ausgenutzt werden könnten. Ziemlich uncool!

Die Zukunft der Erweiterungen

Was kommt als Nächstes für diese nervigen Erweiterungen? Entwickler und Unternehmen müssen sich der Risiken bewusster werden. Genau wie im echten Leben würdest du einen Fremden nicht in dein Haus lassen, ohne zu wissen, wer er ist. Das Gleiche gilt für Software; sie braucht bessere Kontrollen und Ausgleiche, um alles sicher zu halten.

Fazit

Zusammenfassend zeigt unsere Analyse des VS Code-Erweiterungs-Ökosystems, dass diese Tools echte Risiken für Entwickler, ihre Projekte und ihre Organisationen darstellen. Mit über 5,6% der untersuchten Erweiterungen, die verdächtiges Verhalten zeigen, ist klar, dass eine umfassende Neubewertung, wie wir diese Erweiterungen verwalten und sichern, überfällig ist.

Während Erweiterungen den Arbeitsablauf verbessern können, könnte es grosse Probleme geben, wenn Entwickler nicht wissen, was sie hereinlassen. Es ist an der Zeit, das Bewusstsein zu schärfen und nach Lösungen zu suchen, die helfen können, die Programmiergemeinschaft zu schützen, während sie die Vorteile dieser praktischen Tools geniessen. Schliesslich will niemand, dass ein Waschbär ihre Programmierparty durcheinanderbringt!

Originalquelle

Titel: Developers Are Victims Too : A Comprehensive Analysis of The VS Code Extension Ecosystem

Zusammenfassung: With the wave of high-profile supply chain attacks targeting development and client organizations, supply chain security has recently become a focal point. As a result, there is an elevated discussion on securing the development environment and increasing the transparency of the third-party code that runs in software products to minimize any negative impact from third-party code in a software product. However, the literature on secure software development lacks insight into how the third-party development tools used by every developer affect the security posture of the developer, the development organization, and, eventually, the end product. To that end, we have analyzed 52,880 third-party VS Code extensions to understand their threat to the developer, the code, and the development organizations. We found that ~5.6\% of the analyzed extensions have suspicious behavior, jeopardizing the integrity of the development environment and potentially leaking sensitive information on the developer's product. We also found that the VS Code hosting the third-party extensions lacks practical security controls and lets untrusted third-party code run unchecked and with questionable capabilities. We offer recommendations on possible avenues for fixing some of the issues uncovered during the analysis.

Autoren: Shehan Edirimannage, Charitha Elvitigala, Asitha Kottahachchi Kankanamge Don, Wathsara Daluwatta, Primal Wijesekara, Ibrahim Khalil

Letzte Aktualisierung: 2024-11-11 00:00:00

Sprache: English

Quell-URL: https://arxiv.org/abs/2411.07479

Quell-PDF: https://arxiv.org/pdf/2411.07479

Lizenz: https://creativecommons.org/licenses/by/4.0/

Änderungen: Diese Zusammenfassung wurde mit Unterstützung von AI erstellt und kann Ungenauigkeiten enthalten. Genaue Informationen entnehmen Sie bitte den hier verlinkten Originaldokumenten.

Vielen Dank an arxiv für die Nutzung seiner Open-Access-Interoperabilität.

Ähnliche Artikel