6 Punkte von GN⁺ 16 일 전 | 8 Kommentare | Auf WhatsApp teilen
  • Derselbe Angreifer kaufte mehr als 30 WordPress-Plugins und infizierte die Lieferkette, indem er im ersten Commit Backdoor-Code einschleuste
  • Der Schadcode blieb rund 8 Monate lang verborgen und wurde Anfang April 2026 aktiviert, um auf zahlreichen Websites Spam-Links und Redirects einzuschleusen
  • WordPress.org schloss am 7. April 2026 innerhalb nur eines Tages die betreffenden 31 Plugins dauerhaft und verteilte ein Zwangs-Update
  • Der Angreifer übernahm auf Flippa das Portfolio „Essential Plugin“ für einen sechsstelligen Betrag und verschleierte die C2-Domain mithilfe von Ethereum-Smart-Contracts
  • Der Vorfall gilt als Neuauflage eines groß angelegten Supply-Chain-Angriffs, ähnlich dem Fall „Display Widgets“ von 2017, und zeigt das Fehlen von Vertrauensmanagement im WordPress-Plugin-Ökosystem

Fall eines Supply-Chain-Angriffs auf WordPress-Plugins

  • Mehr als 30 WordPress-Plugins wurden von demselben Angreifer übernommen und anschließend mit einer Backdoor versehen
  • Der Angreifer kaufte auf Flippa das Portfolio „Essential Plugin“ für einen sechsstelligen Betrag und fügte im ersten Commit Schadcode hinzu
  • Die Backdoor blieb 8 Monate lang inaktiv und wurde erst Anfang April 2026 aktiviert, wodurch zahlreiche Websites infiziert wurden
  • WordPress.org schloss am 7. April 2026 dauerhaft 31 Plugins innerhalb eines Tages
  • Der Vorfall wird als Wiederholung eines Supply-Chain-Angriffsmusters ähnlich dem Fall „Display Widgets“ von 2017 bewertet

Entdeckung des Angriffs und erste Reaktion

  • Die erste Infektion wurde durch eine wp-admin-Sicherheitswarnung auf der Website eines Kunden festgestellt
    • Das WordPress.org-Plugin-Team warnte, dass das Plugin „Countdown Timer Ultimate“ Code für unautorisierten Zugriff enthalte
    • WordPress.org verteilte zwar ein Zwangs-Update (v2.6.9.1), doch einige Websites waren bereits kompromittiert
  • Eine Sicherheitsprüfung ergab, dass das Modul wpos-analytics des Plugins eine Verbindung zu analytics.essentialplugin.com herstellte, die Datei wp-comments-posts.php herunterlud und darüber eine umfangreiche PHP-Code-Injektion in wp-config.php ausführte

Funktionsweise der Schadsoftware

  • Der injizierte Code bezog Spam-Links, Redirects und gefälschte Seiten vom C2-Server und zeigte sie nur Googlebot an
  • Der Angreifer verwaltete die C2-Domain dynamisch über Ethereum-Smart-Contracts
    • Da die Domain über einen Blockchain-RPC-Endpunkt abgefragt wurde, konnte sie nicht durch gewöhnliche Domain-Sperren blockiert werden
  • Das Zwangs-Update von WordPress.org deaktivierte nur die Home-Phone-Funktion des Plugins, der Schadcode in wp-config.php blieb jedoch bestehen

Nachverfolgung des Infektionszeitpunkts per Backup-Analyse

  • Mithilfe von restic-Backups von CaptainCore wurden die Größen von 8 Versionen der Datei wp-config.php verglichen
    • Zwischen dem 6. April 2026, 04:22 UTC, und 11:06 UTC wuchs die Datei von 3.345 Byte auf 9.540 Byte an
    • Damit wurde bestätigt, dass die Infektion innerhalb dieses Zeitfensters von 6 Stunden und 44 Minuten erfolgte

Zeitpunkt der Backdoor-Implantation und Codestruktur

  • In Plugin-Version 2.6.7 (8. August 2025) wurden 191 neue Codezeilen hinzugefügt und damit die Backdoor eingebaut
    • Im Changelog stand dazu: „Kompatibilität mit WordPress 6.8.2 bestätigt“
  • Hauptfunktionen des hinzugefügten Codes
    1. fetch_ver_info() verarbeitet Daten vom Server des Angreifers mit @unserialize()
    2. version_info_clean() führt einen aus den Remote-Daten erhaltenen Funktionsnamen aus
    3. Es wird ein ohne Authentifizierung aufrufbarer REST-API-Endpunkt erstellt (permission_callback: __return_true)
  • Diese Struktur ermöglicht beliebige Funktionsausführung (RCE) und blieb 8 Monate lang inaktiv, bevor sie am 5.–6. April 2026 aktiviert wurde

Ablauf der Plugin-Übernahme

  • Das ursprüngliche Entwicklerteam war WP Online Support aus Indien und entwickelte die Plugins seit 2015
    • Später erfolgte ein Rebranding zu Essential Plugin, das mehr als 30 kostenlose und kostenpflichtige Plugins betrieb
  • Als der Umsatz Ende 2024 um 35–45 % zurückging, wurde das gesamte Geschäft auf Flippa zum Verkauf angeboten
  • Anfang 2025 übernahm eine Person namens „Kris“ das Unternehmen, mit Hintergrund in SEO-, Krypto- und Online-Glücksspiel-Marketing
    • Flippa veröffentlichte diesen Deal im Juli 2025 als Erfolgsgeschichte im Blog
  • Direkt im ersten SVN-Commit nach der Übernahme (8. August 2025) wurde der Backdoor-Code hinzugefügt
  • Am 5.–6. April 2026 begann analytics.essentialplugin.com, schädliche Payloads an alle Websites auszuliefern
  • Am 7. April 2026 schloss WordPress.org alle Plugins von Essential Plugin (31 Stück) dauerhaft

Liste der geschlossenen Plugins

  • Mehr als 30 Plugins, darunter Accordion and Accordion Slider, Countdown Timer Ultimate, Popup Anything on Click, WP Blog and Widgets, WP Team Showcase and Slider
  • Bei einer Suche nach dem Autor auf WordPress.org erscheinen keine Ergebnisse
  • analytics.essentialplugin.com antwortet derzeit mit {"message":"closed"}

Frühere ähnliche Fälle

  • 2017 kaufte eine Person namens Daley Tias das Plugin Display Widgets (200.000 Installationen) für 15.000 US-Dollar und fügte Spam-Code ein
  • Danach wurden mehr als 9 weitere Plugins auf dieselbe Weise infiziert
  • Der aktuelle Vorfall bestätigt dieselbe Methode in noch größerem Maßstab (mehr als 30 Plugins)

Wiederherstellung und Patch-Arbeiten

  • Das Zwangs-Update von WordPress.org war nur eine vorläufige Maßnahme
    • Das Modul wpos-analytics selbst war weiterhin vorhanden
  • Es wurde eigenständig eine Patch-Version erstellt, die das Backdoor-Modul vollständig entfernt
    • Unter 22 Kundenseiten wurden auf 12 Essential-Plugin-Plugins gefunden, 10 davon direkt gepatcht
    • Die Patch-Version löscht das Verzeichnis wpos-analytics, entfernt die Loader-Funktion und ergänzt den Versionsnamen um -patched
  • Beispiele: Countdown Timer Ultimate, Popup Anything on Click, WP Testimonial with Widget

So patcht man direkt selbst

  • Das Verzeichnis wpos-analytics/ löschen
  • In der Hauptdatei des Plugins den Block „Plugin Wpos Analytics Data Starts“ oder wpos_analytics_anl entfernen
  • Im Version:-Header -patched ergänzen und das Plugin erneut packen
  • Mit wp plugin install your-plugin-patched.zip --force installieren
  • Wenn die Dateigröße von wp-config.php um etwa 6 KB gewachsen ist, gilt dies als aktive Infektion und eine vollständige Bereinigung ist erforderlich

Vertrauensproblem im WordPress-Plugin-Ökosystem

  • In den vergangenen 2 Wochen kam es wiederholt zu Supply-Chain-Angriffen
    • Vertrauenswürdige Plugins wurden übernommen und anschließend mit Schadcode versehen
    • Commit-Rechte auf WordPress.org wurden unverändert übernommen und ohne zusätzliche Prüfung für die Verteilung genutzt
  • Bei WordPress.org gibt es keine Überwachung von Eigentümerwechseln und kein Verfahren zur erneuten Code-Prüfung
    • Es fehlen Benutzerbenachrichtigungen oder automatische Reviews bei der Registrierung neuer Committer
  • Das Plugin-Team reagierte zwar schnell, doch die Backdoor blieb nach ihrer Einschleusung 8 Monate lang unentdeckt
  • Betreiber von WordPress-Websites sollten ihre Plugin-Liste prüfen, Plugins aus der Essential-Plugin-Familie sofort entfernen oder patchen und unbedingt auch die Datei wp-config.php kontrollieren

8 Kommentare

 
tebica 16 일 전

Ich nutze WordPress seit Jahrzehnten.
Ich verwende nur ein Minimum an Plugins, aber trotzdem habe ich immer ein mulmiges Gefühl.
Trotzdem ist es für mich noch immer bequemer als statische Seiten, deshalb möchte ich nicht wechseln!

 
turastory 16 일 전

In letzter Zeit gibt es wirklich viele Nachrichten über Supply-Chain-Angriffe. T_T

 
tangokorea 15 일 전

So ist es. Es hat stark zugenommen.

 
xguru 16 일 전

WordPress ist wirklich … da gibt es ständig Probleme. Wenn ihr es bereits nutzt, schaut euch in den entsprechenden Artikeln Dinge wie EmDash an.
Ich habe es schon aufgegeben und bin einfach auf statische Seiten umgestiegen.

 
colus001 15 일 전

Ich habe EmDash ausprobiert, aber es ist erst einmal viel zu langsam. Die TTFB liegt grundsätzlich bei etwa 3 Sekunden, sodass ich mich frage, ob das wirklich zum Einsatz gedacht ist.

 
xguru 15 일 전

Ach so. Dann gebe ich mich einfach mit Static zufrieden, haha.

 
tangokorea 15 일 전

Das lässt einen denken, dass KI die Verwaltung statischer Seiten übernehmen und ein von Legacy-Code überwuchertes CMS ersetzen könnte.

 
GN⁺ 16 일 전
Hacker-News-Kommentare
  • Die überzogene Reaktion auf Mythos ist immer wieder amüsant
    Automatisierte Schwachstellenerkennung könnte die Sicherheitsbranche zwar erschüttern, aber das ist nicht die eigentliche Sorge
    Der heutige Tech-Stack und die Unternehmens-Governance sind bereits jetzt aus der Zeit gefallen
    Wenn man den größten Treiber der Verschlechterung benennen müsste, wäre es Krypto. Dadurch ist Hacking zu einer Industrie im Milliardenbereich geworden und hat sogar Staaten wie Nordkorea hineingezogen
    Inzwischen leben wir in einer Realität, in der man einfach Abhängigkeiten aufkaufen oder Mitarbeitende bezahlen kann, um einen „Fehler“ zu provozieren
    Wir können Software mit fast keinen Bugs schreiben, aber wir haben keinen Plan, wie sich Großunternehmen in diesem Umfeld sicher halten lassen
    Autonome LLM-Agenten werden in Ransomware-Organisationen eingesetzt werden, aber dafür braucht man keine FreeBSD-Exploits

    • Die Aussage „Wir können Software mit fast keinen Bugs schreiben“ erscheint mir fragwürdig
      In der Praxis stoße ich jede Woche auf Bugs in PrimeVue, Vue, Spring Boot, dem Oracle-Treiber, Ansible, dem Nvidia-Treiber und anderem
      Realistisch scheint vollständig fehlerfreier Code höchstens bei Flugzeugen oder Raumfahrzeugen möglich zu sein
      Die meisten Entwickler schreiben nicht deshalb keinen bugfreien Code, weil sie nicht wollen, sondern weil es wegen Umgebungsbeschränkungen oft unmöglich ist
    • Wie im Fall von LAPSUS$ gab es auch Hackergruppen, die sich internen Zugriff einfach durch Bestechung von Mitarbeitenden verschafft haben
      Das ist keine Theorie, sondern Realität. Mit staatlicher Finanzierung ist die Bestechung von Insidern noch viel leichter
    • Ich sehe darin eher ein Problem der Organisationskultur als der Technik
      OSS-Projekte haben weniger „WTF-Bugs“ als Unternehmenssoftware großer Konzerne
      In Umgebungen mit Einzelentwicklern würde man Fehler, die dort aus gesundem Menschenverstand nie passieren würden, in Organisationen wegen Freigabeprozessen oder Gewohnheiten trotzdem ausrollen
      Eine unnormale Kultur, in der man nicht fragen kann „Ist das wirklich das Beste?“, produziert Bugs am Fließband
      In kleinen Teams lässt sich das leicht ändern, in großen Organisationen ist es teuer
    • Wenn Angreifer C2-Domains über Ethereum-Smart-Contracts aktualisieren können, frage ich mich, ob Firewalls dann alle Ethereum-Endpunkte blockieren müssten
    • Wie im Artikel von The Register beschrieben, ist es eine rationale Strategie, wenn Angreifer die Supply Chain unter dem Blickwinkel einer Kosten-Risiko-Analyse betrachten
  • Bei Webprojekten beginnt es immer mit „npm install“, und Dutzende Bibliotheken werden automatisch installiert
    Oft wissen nicht einmal die Autoren, welche transitiven Abhängigkeiten enthalten sind
    In so einer Struktur ist die Chance praktisch null, einen Supply-Chain-Angriff zu verifizieren

    • Deshalb vermeide ich externe Pakete so weit wie möglich
      Kürzlich habe ich nur mit der Python-Standardbibliothek ein Tool zur Wetter-Synchronisierung geschrieben
      Selbst ohne externe Pakete wie requests hat das völlig ausgereicht, und ich habe die Ruhe ohne Abhängigkeiten gewonnen
    • Es heißt zwar „Das Rad nicht neu erfinden“, aber man braucht einen vernünftigen Mittelweg
      Kernlogik wie Kryptografie sollte man nicht selbst implementieren, aber selbst für einfache Funktionen von Bibliotheken abhängig zu sein ist übertrieben
    • Das ist kein reines Webproblem, sondern ein gemeinsames Problem aller Ökosysteme wie maven, Python, Ruby usw.
    • Lockfiles helfen mehr, als man denkt
      Wenn Versionen festgeschrieben sind, hat ein verkauftes und mit Backdoor versehenes Paket keine Auswirkungen, bis man selbst ein Update durchführt
      Eher macht mir Dependabot Angst, wenn es automatisch PRs für „Patch-Versionen“ erstellt und so Risiken erzeugt
    • Noch schlimmer sind Gewohnheiten wie sudo curl URL | bash
  • Ich denke, das eigentliche Problem ist die Ideologie von Software-Updates
    Updates haben zwar den Vorteil von Sicherheits-Patches, bergen aber zugleich das Risiko, Änderungen zu erzwingen, die Entwickler nicht wollen, oder sogar bösartig zu werden
    Gerade bei WordPress-Erweiterungen einzelner Entwickler sollte man automatische Updates meiner Meinung nach niemals erlauben
    Der Marketplace von wordpress.org unterstützt eine solche Struktur nicht und ist dadurch riskant
    Ich habe früher einen Kommentar zu Chrome-Erweiterungen geschrieben, und wenn man Chrome durch WordPress ersetzt, gilt er immer noch unverändert

  • Die Supply-Chain-Angriffsfläche von WordPress-Plugins ist schon lange riskant
    Das liegt an einer Ökosystem-Struktur, die dazu verleitet, viele kleine Plugins einzelner Entwickler zu installieren
    Bereits vertrauenswürdige Plugins zu übernehmen und dann zu missbrauchen ist eine äußerst effiziente Angriffsmethode
    Weil eine „Update-Benachrichtigung“ faktisch als Vertrauenssignal funktioniert, merken Nutzer nicht einmal, dass sich der Autor geändert hat
    Es braucht ein System für Paketsignaturen und Transparenz, aber WordPress verbessert seine Sicherheitsinfrastruktur nur langsam

    • Die meisten Nutzer wollen nur kostenlose Plugins verwenden, sodass ihre Sites mit Premium- plus Werbe-Plugins überzogen werden
      Die Admin-Seite sah teilweise aus wie ein IE6-Toolbar-Meme
    • Das ist auch der Grund, warum ich aufgehört habe, WordPress-Sites für Kunden zu bauen
      Oft installierten sie nur die Gratisversionen von Securi oder Wordfence, konfigurierten nichts und erwarteten trotzdem vollständige Sicherheit
    • wp.org ist gegenüber bösartigen Akteuren viel zu nachsichtig
      Offensichtliche Malware wird zwar blockiert, aber Bait-and-Switch wie das Einfügen von Werbe-Widgets über Domains Dritter wird toleriert
      Auf diesem Niveau muss man es fast als beabsichtigtes Design ansehen
  • Schade, dass das Projekt FAIR Package Manager keinen Erfolg hatte
    fair.pm ist eine von atproto inspirierte dezentrale Struktur, die jeder ohne zentrales Repository betreiben kann
    Pakete werden über DIDs identifiziert, und Organisationen wie Socket können Analyseergebnisse als „Labeler“ anhängen
    Nutzer können Pakete mit bestimmten Labels blockieren oder sogar selbst KI-basierte Sicherheitsanalyse-Labeler betreiben
    Es ist nicht perfekt, aber ein deutlich besserer Ansatz als zentralisierte Paketmanager

    • Es wurde nicht aufgegeben, sondern auf eine technologiezentrierte Ausrichtung umgestellt
      Derzeit wird mit der Typo3-Community zusammengearbeitet und in andere Ökosysteme expandiert (der Verfasser ist Co-Chair von FAIR)
    • Als npm-Alternative könnte es eine interessante Plattform sein
      Die Anreizstruktur ist besser als bei WordPress, aber möglicherweise immer noch nicht ausreichend
    • Wenn viele Repositories wahrscheinlich mit SEO-Malware gefüllt werden, ist es unmöglich, allein über Suchmaschinen sichere Repositories zu finden
      Dezentralisierung bringt zwar Freiheit, ist aber aus Sicht der Nutzer umständlich
    • Ich frage mich, ob FAIR nur für WordPress gedacht ist
  • Interessant an diesem Vorfall ist, dass die Plugins über Flippa übernommen wurden
    Flippa ist kein nur auf WP beschränkter Marketplace, sondern ein allgemeiner Handelsplatz für Software
    Das macht Sorgen, weil gutgläubig übernommene Indie-Apps oder Erweiterungen später bewaffnet werden könnten
    Solche Apps sind für Angreifer wertvoller als für ihre eigentlichen Betreiber

  • Das Beängstigendste ist nicht die Backdoor selbst, sondern dass die Übernahme so vollkommen normal wirkte
    Ein vertrauenswürdiges Plugin zu kaufen und ein Update auszurollen ist von legitimer Wartung nicht zu unterscheiden
    Es gibt überhaupt kein Signal, bei dem Nutzer misstrauisch werden könnten

  • M&A, das den Wettbewerb am Markt einschränkt, braucht teils staatliche Genehmigung
    Daher frage ich mich, ob Übernahmen mit erheblichen Auswirkungen auf die Sicherheit nicht ebenfalls ein Genehmigungsverfahren durch Marketplace oder Staat benötigen sollten
    Siehe auch den Wikipedia-Artikel zu Mergers and acquisitions

  • WordPress war dank seiner Plugins großartig, ist aber inzwischen gerade wegen dieser Plugin-Struktur zu einem riskanten Ökosystem geworden
    Ich bin zu Hugo migriert und empfehle anderen ebenfalls diese Migrationsanleitung

  • Unternehmen scheinen nicht wirklich zu begreifen, wie viel Kontrolle sie verloren haben, indem sie „IT-Outsourcing“ betrieben haben