Hacker füllen Projekte auf GitHub mit Code, der sich hinter schädlichem Programm versteckt.

Hacker füllen Projekte auf GitHub mit Code, der sich hinter schädlichem Programm versteckt.

12 hardware

Cyberkriminelle tarnen Schadcode mit „unsichtbaren“ Unicode-Zeichen

Neue Studien des Unternehmens Aikido Security haben gezeigt, dass Anfang März 151 Projekte auf GitHub erschienen sind, die versteckten Spionage-Code enthalten. Die bösartigen Pakete nutzen Unicode-Zeichen, die für Menschen wie Leerzeichen oder leere Zeilen aussehen, aber bei der normalen Ausführung von JavaScript in ausführbaren Bytecode umgewandelt werden und in die Funktion `eval()` gelangen.

Wie ein Angriff aussieht
1. Namen der Bibliotheken

Die Pakete nennen sich genauso wie bekannte kommerzielle Lösungen (zum Beispiel „React“ oder „Node.js“). Das führt Entwickler dazu, sie fälschlicherweise für sicher zu halten und in ihre Projekte einzubinden.

2. „Lesbarer“ Code + versteckte Fragmente

Der Großteil des Codes sieht aus wie ein gewöhnliches, leicht lesbares Programm. Innerhalb befinden sich jedoch Blöcke, die mit „unsichtbaren“ Zeichen gefüllt sind. Beim manuellen Durchsehen verschwinden sie, bei der Ausführung werden sie aktiviert.

3. Test-Repositories

Solche bösartigen Pakete wurden nicht nur auf GitHub entdeckt, sondern auch in NPM, Open VSX und dem Visual Studio Code Marketplace.

Warum es schwer zu erkennen ist
- Änderungen an Projekten wirken gewöhnlich: Versionsaktualisierung, Fehlerbehebungen, Refactoring.

- Die Angreifer nutzen laut Experten große KI-Sprachmodelle zur Automatisierung der Codefälschung. Das ermöglicht die schnelle Vorbereitung von mehr als 150 Projekten ohne manuellen Aufwand.

Geschichte der Zeichen
Unicode-Zeichen, die lateinischen Buchstaben entsprechen, wurden vor Jahrzehnten in das System aufgenommen. Seit 2024 nutzen Hacker sie, um bösartige Anfragen an Chatbots und Code in Repositories zu tarnen. Traditionelle statische Analysewerkzeuge erkennen sie nicht; nur bei der Ausführung von JavaScript enthüllen kleine Dekodierer den eigentlichen Bytecode.

Was Entwickler tun sollten
1. Abhängigkeiten prüfen – vor dem Einbinden externer Bibliotheken ihren Quellcode und die Versionsgeschichte sorgfältig untersuchen.

2. Automatische Prüfungen – Linter, Scanner auf „unsichtbare“ Zeichen und Werkzeuge zur Analyse des dynamischen Verhaltens einsetzen.

3. Aktualisieren – darauf achten, dass Pakete nach dem Herunterladen nicht entfernt werden; das kann ein Hinweis auf eine versteckte Bedrohung sein.

Perspektiven
Wenn die Annahmen über den Einsatz von KI in diesem Schema bestätigt werden, wird es immer schwieriger, solche Angriffe zu erkennen und zu beseitigen. Dennoch bleibt ein bewusster Ansatz zur Überprüfung des Quellcodes und der Abhängigkeiten die beste Verteidigung gegen ähnliche Bedrohungen.

Kommentare (0)

Teile deine Meinung — bitte bleib höflich und beim Thema.

Noch keine Kommentare. Hinterlasse einen Kommentar und teile deine Meinung!

Um einen Kommentar zu hinterlassen, melde dich bitte an.

Zum Kommentieren anmelden