Nginx-webservers kwetsbaar door PHP7 RCE bug

Wanneer je een op PHP gebaseerde website draait op een Nginx webserver en de feature PHP-FPM is ingeschakeld voor betere prestaties, dan kunnen ongeautoriseerde aanvallers op afstand de webserver overnemen via een nieuw gevonden kwetsbaarheid.

Deze kwetsbaarheid is bekend als CVE-2019-11043, waarvoor alle websites met een bepaalde configuratie van PHP-FPM zijn. Deze configuratie is op basis van wat er bekend is niet ongewoon. Er is op dit moment al een Proof-of-Concept(PoC) publiekelijk beschikbaar, waarmee het eenvoudig is om gebruikt te maken van deze bug.

De feature PHP-FPM is een alternatieve implementatie van PHP FastCGI, dat geavanceerd en zeer efficiënt scripts verwerkt dit zijn geschreven in de PHP programmeertaal.

De belangrijkste kwetsbaarheid is een “env_path_info” “underflow memory corruption” probleem in de PHP-FPM module en door dit te combineren met andere problemen, kan ervoor zorgen dat aanvallers op afstand remote code execution (RCE) kunnen uitvoeren op kwetsbare webservers.

Welke versies zijn kwetsbaar?

De volgende PHP 7 versies zijn kwetsbaar:

  • PHP versie 7.1.x voor 7.1.33;
  • PHP versie 7.2.x voor 7.2.24;
  • PHP versie 7.3.x voor versie 7.3.11.

De beschikbare PoC exploit richt zich op PHP versie 7+, maar de PHP-FPM bug heeft ook impact op eerdere PHP versies en kan gewapend worden op een andere manier.

Samengevat is een website kwetsbaar wanneer:

  • Nginx is geconfigureerd om verzoeken van PHP pagina door te sturen naar de PHP-FPM proccesor;
  • “fastcgi_split_path_info directive” is aanwezig in de configuratie en bevat reguliere expressies die beginnen met het  ‘^’ symbool en eindigen met een ‘$’ symbool;
  • De “PATH_INFO” variabele is gedefinieerd met “fastcgi_param directive”;
  • Er is geen controle aanwezig zoals “try_files $uri =404 or if (-f $uri)” om te bepalen of een bestand wel/niet bestaat.

Onderstaand voorbeeld geeft aan hoe een kwetsbare configuratie eruit ziet:

In deze configuratie wordt de “fastcgi_split_path_info directive” gebruikt om de URL van PHP website te scheiden in 2 delen, waarbij de ene waarde wordt gebruikt om de PHP-FPM engine te leren wat de naam van het script is en de andere bevat informatie over waar het bestand zich bevindt “path info”.

Wordt de kwetsbaarheid actief misbruikt?

Er is een PoC uitgebracht, waarvan bekend is dat het eenvoudig is om deze uit te voeren. Ook is er bekend dat er op dit moment al actief misbruik wordt gemaakt van de exploit.

De lijst met voorwaarden voor een succesvolle exploit zoals hierboven vermeld is niet ongewoon, omdat de kwetsbare configuraties ook worden gebruikt door sommige web hosting providers en er zijn veel beschikbare PHP FPM tuturials video’s beschikbaar die deze configuratie gebruiken.

Advies

Gezien de er op dit moment al actief misbruik wordt gemaakt van de kwetsbaarheid, adviseren wij iedereen die gebruikt maakt van PHP-FPM configuratie voor je website(s) om te updaten naar een van de volgende php versies:

  • PHP versie 7.1.33;
  • PHP versie 7.2.24;
  • PHP versie 7.3.11.

Zelfs wanneer je geen gebruik maakt van de kwetsbare configuratie, is het aan te raden om je PHP versie te updaten naar een van de bovengenoemde versies.

Ook heeft één van de web hosting providers, Nextcloud gisteren een advisory uitgebracht, waarin alle systeem administrators worden opgeroepen om een update uit te voeren naar bovenstaande versies.

Backdoor gevonden voor Microsoft SQL server 2012 en 2014
Ransomware
Nieuwe Ransomware: Het .Meka virus

Gerelateerde berichten

Geef een reactie

Het e-mailadres wordt niet gepubliceerd. Vereiste velden zijn gemarkeerd met *

Fill out this field
Fill out this field
Geef een geldig e-mailadres op.
Je moet de voorwaarden accepteren voordat je het bericht kunt verzenden

8 + twaalf =

Menu