image

20.000 WordPress-sites kwetsbaar door kritieke lekken in PHP Everywhere

donderdag 10 februari 2022, 10:08 door Redactie, 15 reacties

Ruim twintigduizend WordPress-sites zijn kwetsbaar door een lek in de plug-in PHP Everywhere waardoor aanvallers websites op afstand kunnen overnemen. PHP Everywhere is een plug-in voor WordPress-sites die het mogelijk maakt om PHP-code op onder andere pagina's, posts en de sidebar te gebruiken. De plug-in is op meer dan dertigduizend WordPress-sites geïnstalleerd.

Drie kwetsbaarheden in de plug-in maken het mogelijk voor geauthenticeerde gebruikers van elk niveau, waaronder abonnees en klanten, om willekeurige PHP-code op de website uit te voeren en die zo over te nemen. De impact van de drie kwetsbaarheden is op een schaal van 1 tot en met 10 met een 9.9 beoordeeld. De beveiligingslekken werden op 4 januari door securitybedrijf Wordfence aan de ontwikkelaar gerapporteerd.

Op 12 januari kwam de ontwikkelaar met PHP Everywhere versie 3.0.0 waarin de drie kwetsbaarheden zijn verholpen. Uit cijfers van WordPress blijkt dat deze versie pas op een kleine 31 procent van de WordPress-sites is geïnstalleerd, wat inhoudt dat nog ruim twintigduizend WordPress-sites risico lopen. Beheerders wordt aangeraden om naar de nieuwste versie te updaten.

Reacties (15)
10-02-2022, 11:54 door Anoniem
Het gebruik van eval() is zelden een goed idee en dat geldt dubbel wanneer het user input aanneemt, zelfs als het een 'trusted' user betreft.
10-02-2022, 12:41 door soeperees
Waarom PHP-everywhere per definitie een ontzettend slecht idee is?
In webontwerpland geldt de algehele rule number one: "Don't EVER trust user input anywhere".
Deze plugin maakt het mogelijk om als user PHP-code in te voeren en te laten uitvoeren op de server. Dat is als het ware op zichzelf een kwetsbaarheid, verkrijgbaar in plugin vorm.
10-02-2022, 14:35 door Anoniem
Door soeperees: Waarom PHP-everywhere per definitie een ontzettend slecht idee is?
In webontwerpland geldt de algehele rule number one: "Don't EVER trust user input anywhere".
Deze plugin maakt het mogelijk om als user PHP-code in te voeren en te laten uitvoeren op de server. Dat is als het ware op zichzelf een kwetsbaarheid, verkrijgbaar in plugin vorm.

Don't ever? Je bedoelt Never ;)
10-02-2022, 15:29 door Anoniem
Door soeperees: Waarom PHP-everywhere per definitie een ontzettend slecht idee is?
In webontwerpland geldt de algehele rule number one: "Don't EVER trust user input anywhere".
Deze plugin maakt het mogelijk om als user PHP-code in te voeren en te laten uitvoeren op de server. Dat is als het ware op zichzelf een kwetsbaarheid, verkrijgbaar in plugin vorm.

't Is natuurlijk ook weer niet direct aan te nemen dat al deze 20.000 kwetsbare Wordpress websites openstaan voor de buitenwereld. Kan natuurlijk ook zijn dat een deel van deze websites om wat voor reden dan ook voor intern gebruik zijn opgezet.
11-02-2022, 14:33 door Anoniem
Website laten developpen. Gelikte site, maar dan later geen onderhoud (laten) plegen. Weak PHP exploitje pats.
12-02-2022, 11:17 door Anoniem
Door Anoniem: Website laten developpen. Gelikte site, maar dan later geen onderhoud (laten) plegen. Weak PHP exploitje pats.

Klopt.....
Klanten zien meestal alleen de directe kosten voor ontwerp en bouw, maar als je gaat praten over regulier onderhoud zijn ze niet thuis.
Maar wel gillen als het misgaat, en de site offline is door een hack.

Frustrerend als fruck....
12-02-2022, 13:58 door Anoniem
Laat deze fatale fouten bij PHP eens de revue passeren:
https://www.fatalerrors.org/a/php-weak-type-code-commadn-injection.html

luntrus
12-02-2022, 20:54 door Anoniem
Door Anoniem: Het gebruik van eval() is zelden een goed idee
Je hebt eval() niet nodig om PHP uit te voeren, je antwoord is al jaren achterhaald.
13-02-2022, 22:53 door Anoniem
14-02-2022, 08:38 door S.A.T.A.N.
Door Anoniem:
Door Anoniem: Het gebruik van eval() is zelden een goed idee
Je hebt eval() niet nodig om PHP uit te voeren, je antwoord is al jaren achterhaald.

Vertel, hoe voer ik dan PHP code in een string uit zonder eval?

$myexpr = "12 + sin(1.5)";

https://objectiv.co/how-to-execute-php-code-in-a-php-string/
14-02-2022, 12:08 door S.A.T.A.N.
Nou?
14-02-2022, 19:47 door Anoniem
De genoemde plugin voor Wordpress is technisch gezien ook voor veel verbetering vatbaar.Daarom zal het niet erg populair zijn bij website ontwikkelaars met Wordpress.
14-02-2022, 21:48 door Anoniem
Door Ongemodereerd:
Door Anoniem:
Door Anoniem: Het gebruik van eval() is zelden een goed idee
Je hebt eval() niet nodig om PHP uit te voeren, je antwoord is al jaren achterhaald.

Vertel, hoe voer ik dan PHP code in een string uit zonder eval?

$myexpr = "12 + sin(1.5)";

Maak een stream wrapper en registreer als 'exec'
Dan: include 'exec:'.base64_encode($myexpr);

Bye bye eval()
En nee, expres niet een volledig voorbeeld. We willen geen scriptkiddies die beveiliging omzeilen
15-02-2022, 09:07 door Anoniem
Alleen maar amateuristische sites zijn kwetsbaar, is altijd al zo geweest. Diegene die beheerd worden krijgen natuurlijk frequent updates, dus die zijn niet tot zeer kortstondig kwetsbaar.

Bijna altijd hetzelfde, domweg geen updates draaien...
15-02-2022, 09:44 door S.A.T.A.N. - Bijgewerkt: 15-02-2022, 10:20
Door Anoniem:
Door Ongemodereerd:
Door Anoniem:
Door Anoniem: Het gebruik van eval() is zelden een goed idee
Je hebt eval() niet nodig om PHP uit te voeren, je antwoord is al jaren achterhaald.

Vertel, hoe voer ik dan PHP code in een string uit zonder eval?

$myexpr = "12 + sin(1.5)";

Maak een stream wrapper en registreer als 'exec'
Dan: include 'exec:'.base64_encode($myexpr);

Bye bye eval()
En nee, expres niet een volledig voorbeeld. We willen geen scriptkiddies die beveiliging omzeilen

Niet helemaal hetzelfde maar alla(h). Kijk, een 'programmeertaal' die functionaliteit biedt waarmee beveiliging is te omzeilen, die is zelf onveilig! (maar dat weet iedereen al dus geen verrassing)
Reageren

Deze posting is gelocked. Reageren is niet meer mogelijk.