Updates uitvoeren is goed advies. Zo goed zelfs, dat bijna niemand meer kijkt wat er in zo’n update zit. Dat is meestal terecht, maar er is een scenario waarin het misgaat: een plugin overgenomen malware, waarbij een uitbreiding die u jaren vertrouwde van eigenaar wisselt en de nieuwe eigenaar er iets in stopt wat u niet wilt.

Dit is geen bedacht risico. Het gebeurt een paar keer per jaar in het WordPress-ecosysteem, en het treft juist de plugins die goed werken en veel installaties hebben. Hieronder leest u hoe zoiets ontstaat, wat u ervan merkt en welke gewoonten het risico beperken zonder dat u in paniek stopt met updaten.

Hoe een plugin van eigenaar wisselt

De meeste plugins worden gemaakt door één ontwikkelaar of een klein team. Dat werk is vaak grotendeels onbetaald. Op enig moment houdt iemand ermee op, en dan zijn er drie routes.

  • De plugin wordt verkocht. Er zijn partijen die actief plugins met veel installaties opkopen. De meeste doen dat om er een betaalde versie of reclame in te bouwen. Vervelend, maar niet gevaarlijk.
  • De plugin wordt overgedragen aan een vrijwilliger. Meestal gaat dat goed. Soms blijkt die vrijwilliger andere bedoelingen te hebben, en het kost hem één update om die uit te voeren.
  • Het account van de maker wordt gekaapt. Een gelekt wachtwoord bij de ontwikkelaar is genoeg om een kwaadaardige versie te publiceren onder zijn naam.

In alle drie de gevallen krijgt u het binnen via het normale updatescherm, met een geldige handtekening en een net versienummer. Uw beveiligingsplugin ziet er niets bijzonders in, want dit is precies wat een update hoort te zijn.

Wat er dan in kan zitten

De schade loopt uiteen. Van hinderlijk tot ernstig:

  1. Reclame en verwijslinks. Er verschijnen banners in uw beheerscherm, of er worden onzichtbare links naar andere sites in uw pagina’s gezet. Dat laatste schaadt uw vindbaarheid.
  2. Gegevens die weglekken. De plugin stuurt informatie over uw site, uw gebruikers of uw bezoekers naar een externe server. Dat is naast onwenselijk ook een probleem onder de privacywetgeving.
  3. Een verborgen beheerdersaccount. De update maakt stilletjes een account aan waarmee de nieuwe eigenaar later kan inloggen.
  4. Een achterdeur. Code die opdrachten van buitenaf accepteert en uitvoert. Dit is de zwaarste variant en het begin van een besmetting die terugkeert nadat u hem schoonmaakt.
  5. Omleidingen voor bezoekers. Uw klanten belanden op een andere site, meestal alleen vanaf mobiele apparaten of alleen vanuit zoekresultaten, zodat u het zelf niet merkt.

Die laatste twee zijn de reden dat dit meer is dan een ergernis. Ze geven iemand blijvende toegang tot een site waar u zelf verantwoordelijk voor bent.

Hoe u het merkt

Meestal niet aan de plugin zelf, maar aan de gevolgen. Let op deze signalen:

  • De plugin verdwijnt uit de officiële map. Bij misbruik grijpt het WordPress-team in en haalt de plugin offline. U ziet dan geen updates meer en soms een waarschuwing in uw dashboard. Dit is het duidelijkste signaal dat er iets speelt.
  • Er is opeens een beheerder bijgekomen die u niet kent.
  • Uw site is trager geworden zonder aanwijsbare reden, doordat er bij elke pagina contact wordt gezocht met een externe server.
  • Bezoekers of klanten melden vreemde doorverwijzingen terwijl u zelf niets ziet.
  • Google meldt iets in Search Console over ongewenste inhoud of over links die u niet heeft geplaatst.
  • De naam van de maker is veranderd op de pluginpagina, of de reviews van de laatste weken zijn opeens negatief.

Dat laatste is de goedkoopste controle die er is: de recensies van de afgelopen maand lezen op de pluginpagina voordat u bijwerkt. Gebruikers zijn er meestal binnen dagen bij.

Wat u eraan doet

Stoppen met updaten is niet het antwoord. Verouderde plugins zijn een veel groter en vooral veel waarschijnlijker risico dan een overgenomen plugin. Wat wel helpt:

Minder plugins. Elke plugin is een leverancier die u vertrouwt. Twaalf plugins is twaalf partijen die code op uw server mogen zetten. Wat u niet gebruikt, verwijdert u, en niet alleen deactiveren.

Kies op onderhoud, niet op functie alleen. Kijk vóór installatie naar de datum van de laatste update, het aantal actieve installaties en of er een bedrijf achter zit met een naam en een adres. Een plugin die twee jaar niet is aangeraakt, is een risico dat u vooruitschuift.

Werk niet blind bij op de dag van uitgave. Een wachttijd van een paar dagen kost u niets en vangt de meeste ellende af. Voor beveiligingsupdates geldt het omgekeerde: die installeert u juist wel meteen.

Zorg dat u kunt terugrollen. Een back-up van vlak vóór de update, en de wetenschap hoe u die terugzet, maakt dit hele scenario beheersbaar.

Houd bij welke plugins u draait. Een lijstje met versienummers in uw administratie klinkt saai, maar het is precies wat u nodig heeft op het moment dat er ergens een waarschuwing verschijnt.

En als het u overkomt

Verwijder de plugin, niet alleen deactiveren. Controleer daarna of er nieuwe gebruikers zijn aangemaakt, verander de wachtwoorden van alle beheerders en vernieuw de beveiligingssleutels zodat lopende sessies vervallen. Laat vervolgens een scan draaien op achtergebleven bestanden, want de plugin verwijderen betekent niet dat wat hij heeft neergezet ook weg is.

Kijk daarna of er een alternatief is dat wél goed wordt onderhouden, en of u de functie eigenlijk nog nodig heeft. In de helft van de gevallen blijkt het te gaan om iets wat ooit is geïnstalleerd voor een pagina die allang niet meer bestaat.

Het volgen van welke plugins in opspraak raken is precies het soort werk dat een ondernemer niet dagelijks kan doen. Wij houden bij WebMaintor kwetsbaarheidsmeldingen bij als vast onderdeel van het bewaken van de veiligheid van een WordPress-site, en dat betekent in de praktijk vooral: op tijd weten dat een plugin eruit moet, voordat er iets mee gebeurt.

Wat er verder bij zo’n opruiming komt kijken, staat in het artikel over het opnieuw dichtzetten van een site na een incident. Dat is de route die u volgt zodra u vermoedt dat er meer is achtergebleven dan alleen de plugin zelf.

Concrete volgende stap: open uw pluginoverzicht en kijk bij elke plugin wanneer die voor het laatst is bijgewerkt. Alles wat langer dan een jaar stilstaat, verdient vandaag een beslissing.