Facebook Google Plus Twitter LinkedIn YouTube RSS Menu Search Resource - BlogResource - WebinarResource - ReportResource - Eventicons_066 icons_067icons_068icons_069icons_070

CVE-2019-11043: Vulnerability in PHP-FPM Could Lead to Remote Code Execution on nginx

Web servers using nginx and PHP-FPM are vulnerable to this flaw under certain conditions.

Background

On October 22, security researcher Omar Ganiev published a tweet regarding a “freshly patched” remote code execution vulnerability in PHP-FPM, the FastCGI Process Manager (FPM) for PHP. The tweet includes a link to a GitHub repository containing a proof of concept (PoC) for the vulnerability.

Analysis

CVE-2019-11043 is an env_path_info underflow flaw in PHP-FPM’s fpm_main.c. The vulnerability was first reported to the PHP bug-tracker by security researcher Emil Lerner on September 26, 2019. Lerner also credits Andrew Danau, security researcher at Wallarm, who identified the “anomaly” during a Capture The Flag competition in September 2019, and Ganiev for helping to finalize the php.ini options for the PoC.

According to Lerner, under certain configurations where a web server is using nginx and PHP-FPM, the vulnerability can be exploited to gain remote code execution. These configurations require a certain set of preconditions in order for it to be exploitable. These preconditions include:

  1. The nginx location directive forwards requests to PHP-FPM
  2. The fastcgi_split_path_info directive is present and includes a regular expression beginning with a ‘^’ symbol and ending with a ‘$’ symbol
  3. The fastcgi_param directive is used to assign the PATH_INFO variable
  4. There are no checks in place to determine whether or not a file exists (e.g., using try_files or an if statement)

It appears such configurations and preconditions are not uncommon. According to a recent tweet, Nextcloud, the open-source file hosting software, originally recommended the vulnerable nginx configuration in their installation documentation. Nextcloud has since changed the documentation following the tweet that reported it.

The PoC script included in the GitHub repository can query a target web server to identify whether or not it is vulnerable by sending specially crafted requests. Once a vulnerable target has been identified, attackers can send specially crafted requests by appending “?a=” in the URL to a vulnerable web server.

Proof of concept

The PoC script is available in the following GitHub repository.

Lösung

On October 24, PHP 7.3.11 (current stable) and PHP 7.2.24 (old stable) were released to address this vulnerability along with other scheduled bug fixes. Those using nginx with PHP-FPM are encouraged to upgrade to a patched version as soon as possible.

If patching is not feasible, the suggested workaround is to include checks to verify whether or not a file exists. This is achieved either by including the try_files directive or using an if statement, such as if (-f $uri).

Identifying affected systems

A list of Tenable plugins to identify this vulnerability will appear here as they’re released.

Get more information

Join Tenable's Security Response Team on the Tenable Community.

Learn more about Tenable, the first Cyber Exposure platform for holistic management of your modern attack surface.

Get a free 60-day trial of Tenable.io Vulnerability Management.

Abonnieren Sie den Tenable Blog

Abonnieren
Kostenlos testen Jetzt kaufen

Testen Sie Tenable.io

30 TAGE KOSTENLOS

Wir bieten Ihnen vollen Zugriff auf eine moderne, cloudbasierte Schwachstellen-Management-Plattform, mit der Sie alle Ihre Assets mit beispielloser Genauigkeit sehen und nachverfolgen können. Melden Sie sich jetzt an.

Tenable.io kaufen

Wir bieten Ihnen vollen Zugriff auf eine moderne, cloudbasierte Schwachstellen-Management-Plattform, mit der Sie alle Ihre Assets mit beispielloser Genauigkeit sehen und nachverfolgen können. Erwerben Sie noch heute Ihre jährliche Subscription.

65 Assets

2.275,00 USD

Jetzt kaufen

Kostenlos testen Jetzt kaufen

Testen Sie Nessus Professional kostenlos

7 TAGE KOSTENLOS

Nessus® ist der umfassendste Schwachstellen-Scanner auf dem Markt. Nessus Professional unterstützt Sie bei der Automatisierung des Scan-Prozesses, spart Zeit in Ihren Compliance-Zyklen und ermöglicht Ihnen die Einbindung Ihres IT-Teams.

Nessus Professional kaufen

Nessus® ist der umfassendste Schwachstellen-Scanner auf dem Markt. Nessus Professional unterstützt Sie bei der Automatisierung des Scan-Prozesses, spart Zeit in Ihren Compliance-Zyklen und ermöglicht Ihnen die Einbindung Ihres IT-Teams.

Mehrjahreslizenz kaufen und sparen! Mit Advanced Support haben Sie rund um die Uhr, 365 Tage im Jahr Zugang zum Support – per Telefon, Chat und E-Mail sowie über die Community. Vollständige Details finden Sie hier.

Kostenlos testen Jetzt kaufen

Tenable.io Web Application Scanning testen

30 TAGE KOSTENLOS

Profitieren Sie vom vollen Zugriff auf unser neuestes Angebot zum Scannen von Web-Applikationen, das als Teil der Tenable.io-Plattform für moderne Applikationen entwickelt wurde. Scannen Sie auf sichere Weise Ihr gesamtes Online-Portfolio auf Schwachstellen – mit hoher Genauigkeit und ohne großen manuellen Aufwand oder Unterbrechung kritischer Web-Applikationen. Melden Sie sich jetzt an.

Tenable.io Web Application Scanning kaufen

Wir bieten Ihnen vollen Zugriff auf eine moderne, cloudbasierte Schwachstellen-Management-Plattform, mit der Sie alle Ihre Assets mit beispielloser Genauigkeit sehen und nachverfolgen können. Erwerben Sie noch heute Ihre jährliche Subscription.

5 FQDN

3.578,00 USD

Jetzt kaufen

Kostenlos testen Vertrieb kontaktieren

Tenable.io Container Security testen

30 TAGE KOSTENLOS

Profitieren Sie von vollem Zugriff auf die einzige Lösung für Containersicherheit, die in eine Schwachstellen-Management-Plattform integriert ist. Überwachen Sie Container-Images auf Schwachstellen, Malware und Richtlinienverstöße. Kann in Systeme für kontinuierliche Integration und Bereitstellung (CI/CD) eingebunden werden, um DevOps-Praktiken zu unterstützen, die Sicherheit zu stärken und die Einhaltung von Unternehmensrichtlinien zu fördern.

Tenable.io Container Security kaufen

Tenable.io Container Security ermöglicht eine nahtlose und sichere Umsetzung von DevOps-Prozessen, indem es die Sicherheit von Container-Images – einschließlich Schwachstellen, Malware und Richtlinienverletzungen – durch Integration in den Build-Prozess transparent macht.

Erfahren Sie mehr über Industrial Security

Demo für Tenable.sc anfordern

Bitte tragen Sie Ihre Kontaktdaten in das Formular unten ein. Ein Vertriebsmitarbeiter wird Sie in Kürze kontaktieren, um einen Termin für die Demo zu vereinbaren.Sie können auch einen kurzen Kommentar mitschicken (begrenzt auf 255 Zeichen). Bitte beachten Sie, dass Felder mit einem Sternchen (*) Pflichtfelder sind.

Kostenlos testen Vertrieb kontaktieren

Tenable Lumin testen

30 TAGE KOSTENLOS

Mit Tenable Lumin können Sie Ihre Cyber Exposure visualisieren und genauer untersuchen, die allmähliche Reduzierung von Risiken nachverfolgen und Benchmark-Vergleiche mit ähnlichen Unternehmen anstellen.

Tenable Lumin kaufen

Kontaktieren Sie einen Vertriebsmitarbeiter, um zu erfahren, wie Lumin Sie dabei unterstützen kann, Transparenz über Ihr gesamtes Unternehmen zu erhalten und Cyberrisiken zu managen.

Mehr über Indegy erfahren