Actuele situatie: PHP2Shell. Twee kritieke PHP-kwetsbaarheden (CVSS 9.2) maken schadelijke code zonder inloggen mogelijk. Patches sinds 21-10-2026.Wat u nu moet doen →

Joomla-beveiligingslek PHP2Shell: Joomla-websites beveiligen

PHP2Shell raakt Joomla via de PHP van de server. Controleer na patch en herstart configuration.php, template-overrides, extensies en Super User-accounts.

Stand 4 min. leestijdPlatforms

Kort gezegd: Het Joomla-beveiligingslek waarover momenteel wordt gesproken, heet PHP2Shell en zit in de PHP van de server, niet in Joomla. Een Joomla-update sluit het niet. Controleer na PHP-patch en herstart configuration.php, template-overrides, extensies en de lijst met Super Users.

Wat PHP2Shell voor Joomla betekent

Joomla is een PHP-CMS en erft elke zwakte van de onderliggende PHP. De kwetsbaarheden CVE-2026-109618 en CVE-2026-109619 maken het volgens het PHP-team mogelijk om zonder inloggen schadelijke code uit te voeren. Getroffen zijn de gangbare uitvoeringsmodi PHP-FPM, Apache met mod_php, php-cgi, FrankenPHP en LiteSpeed.

Juist kleinere Joomla-websites van verenigingen, ambachtelijke bedrijven of verbanden draaien vaak op shared hosting en worden zelden onderhouden. Daar ligt de PHP-update bij de hostingprovider. Uw taak is de status op te vragen en de website op sporen te controleren. Welke versies getroffen zijn, toont Welke PHP-versies zijn getroffen?.

Joomla-beveiligingslek: PHP-versie controleren

In het beheergedeelte toont Systeem > Systeeminformatie de PHP-versie en de belangrijkste PHP-instellingen. Dat is de versie waarmee Joomla op het web daadwerkelijk draait. Verholpen upstreamversies zijn 8.5.12, 8.4.27, 8.3.36 en 8.2.35. Toont Joomla een ouder nummer, dan kan er toch een backport zijn doorgevoerd; dat moet uw hostingprovider bevestigen.

Bij shared hosting is de PHP-versie vaak per domein om te zetten in het klantenmenu van de hostingprovider. Dat wisselt echter alleen tussen de versies die de hostingprovider aanbiedt; of die zijn gepatcht, bepaalt de hostingprovider. Een overstap naar een nieuwere hoofdversie kan toch zinvol zijn, als uw Joomla-versie en alle extensies die ondersteunen. Test dat vooraf, want oudere extensies breken bij nieuwere PHP-versies vaak af met foutmeldingen.

Joomla noemt zelf minimumeisen voor PHP per hoofdversie. Welke PHP-versies uw Joomla-versie ondersteunt, controleert u volgens de systeemeisen op joomla.org. Bij zeer oude Joomla-versies kan een PHP-wissel eerst een Joomla-upgrade vereisen.

Typische schuilplaatsen voor schadelijke code in Joomla

Plek Inhoud Waar op letten
configuration.php Databasetoegang, $secret, paden voor logs en tijdelijke bestanden Wijzigingsdatum, ingevoegde code
images/, media/ Afbeeldingen en media PHP-bestanden zijn verdacht
tmp/ tijdelijke bestanden, ook van installaties Resten van vreemde pakketten
templates/<naam>/html/ Template-overrides met PHP-code onbekende of gewijzigde overrides
plugins/system/ Systeemplug-ins die bij elke aanroep laden onbekende plug-ins
administrator/logs/ Logbestanden vóór wijzigingen veiligstellen
.htaccess Doorverwijzingen, rewrite-regels Doorverwijzingen alleen voor zoekmachines

Systeemplug-ins zijn bijzonder geliefd, omdat ze bij elke paginaweergave worden uitgevoerd. Een onbekende plug-in in deze map moet u altijd kunnen verklaren.

Ongevaarlijke controles op de opdrachtregel (Joomla 4 en nieuwer heeft een eigen console):

# PHP-bestanden in media- en tijdelijke mappen
find images media tmp -type f -name "*.php"
# Gebruikers en extensies weergeven
php cli/joomla.php user:list
php cli/joomla.php extension:list
Belangrijk

Verwijst uw Joomla-website bezoekers van Google door naar vreemde sites of toont Google een waarschuwing, dan is de server zeer waarschijnlijk al gecompromitteerd. Dan volstaat geen update, maar is een reiniging nodig en daarna een controle in de Search Console.

Beheerderstoegang en extensies

Het beheergedeelte staat onder /administrator. Controleer de gebruikersgroep "Super Users" op onbekende accounts en op accounts van voormalige dienstverleners. Activeer de tweestapsverificatie die Joomla meebrengt en gebruik persoonlijke in plaats van gedeelde accounts.

Extensies uit de Joomla Extensions Directory en van derden zijn op veel websites talrijk: formulieren, galerijen, paginabouwers, nieuwsbrieven. Elke brengt eigen PHP-code en vaak eigen uploadfuncties mee. Extensies waarvan de aanbieder geen updates meer levert, zijn een blijvend risico en bemoeilijken elke PHP-upgrade. Verwijder wat ongebruikt is volledig.

Wat een Joomla-update wel en niet kan

Een Joomla-update vervangt de core-bestanden en dicht bekende kwetsbaarheden in Joomla. Ze patcht PHP niet, raakt template-overrides en extensies van derden niet aan en verwijdert geen bestanden die niet tot de core behoren. Ook database-items zoals nieuwe Super Users blijven bestaan.

Is uw website al gewijzigd, dan helpt het verloop onder Website gehackt? Noodhulp op afstand. Voor het zoeken naar achterdeuren loont de gids Webshells herkennen en verwijderen.

Is uw Joomla-website door een bureau of freelancer ingericht, vraag dan na welke extensies en templates individueel zijn aangepast. Aangepaste bestanden zijn niet zomaar met het originele pakket te vergelijken en vereisen een afzonderlijke controle.

Hoe helpt PHP SOS concreet?

  • Wij vragen de PHP-status op bij uw hostingprovider of controleren haar op uw server, inclusief herstart.
  • Wij maken een kopie van logs, bestanden en database vóór elke wijziging.
  • Wij vergelijken de core met het originele pakket en controleren overrides, systeemplug-ins, mediamappen en Super Users.
  • Bij vondsten reinigen wij de website, vernieuwen wij toegangen en begeleiden wij het verwijderen van Google-waarschuwingen.

Veelgestelde vragen

Is Joomla getroffen door PHP2Shell?

Joomla zelf heeft geen nieuwe kwetsbaarheid, maar draait op PHP. Is de PHP van de server niet gepatcht, dan kan een aanvaller volgens het PHP-team zonder inloggen code uitvoeren. Een Joomla-update verandert daar niets aan.

Waar vind ik in Joomla de PHP-versie?

In het beheergedeelte onder Systeem > Systeeminformatie. Daar ziet u ook de PHP-instellingen. Of er een backport is doorgevoerd, herkent u niet aan het nummer; dat moet uw hostingprovider bevestigen.

Waarom zijn template-overrides een risico?

Overrides staan in de templatemap en bevatten PHP-code die de uitvoer van componenten en modules vervangt. Binnengebrachte code valt daar nauwelijks op, omdat overrides bij Joomla-updates niet worden vervangen.

Bronnen

Direct contact

Elk uur telt. Schrijf ons nu.

Beschrijf kort het systeem, de PHP-versie en wat u opmerkt. Wij nemen contact op, brengen de situatie in kaart en werken op afstand tot het incident is afgerond en gedocumenteerd.

Directe hulp