Published:2014/07/18  Last Updated:2014/07/18

JVN#94791545
FuelPHP vulnerable to remote code execution

Overview

FuelPHP contains a remote code execution vulnerability due to an issue in the Request_Curl class.

Products Affected

FuelPHP applications that are created using the following versions are affected:

  • FuelPHP versions 1.1 through 1.7.1

Description

FuelPHP is a PHP web framework for creating web applications. FuelPHP applications contain an issue in the Request_Curl class, which may result in arbitrary code execution.

Impact

When specially crafted input is processed, arbitrary files may be deleted or arbitrary code may be executed on the application server.

Solution

Update to the latest version of the framework and address any applications that use the Request_Curl class
Update the framework to the latest version according to the information provided by the developer.
After updating, search for all controllers in the application that use the Request_Curl class. For each instance found, verify if the response from the cURL call can be trusted. If so, auto formatting can be enabled on the instance manually. If not, validation code needs to be added to validate the response received after executing the request. After succesful validation auto formatting can be enabled and set_response() can be called manually to construct the response in the correct format.

The developer has provided documentation on the safety implications of these settings.

References

JPCERT/CC Addendum

Vulnerability Analysis by JPCERT/CC

Analyzed on 2014.07.18 (CVSS Base Metrics)

What is CVSS?

Measures Severity Description
Access Vector(AV) Local (L) Adjacent Network (A) Network (N) A vulnerability exploitable with network access means the vulnerable software is bound to the network stack and the attacker does not require local network access or local access. Such a vulnerability is often termed "remotely exploitable".
Access Complexity(AC) High (H) Medium (M) Low (L) Specialized access conditions exist.
Authentication(Au) Multiple (M) Single (S) None (N) Authentication is not required to exploit the vulnerability.
Confidentiality Impact(C) None (N) Partial (P) Complete (C) There is considerable informational disclosure. Access to some system files is possible, but the attacker does not have control over what is obtained, or the scope of the loss is constrained.
Integrity Impact(I) None (N) Partial (P) Complete (C) Modification of some system files or information is possible, but the attacker does not have control over what can be modified, or the scope of what the attacker can affect is limited.
Availability Impact(A) None (N) Partial (P) Complete (C) There is reduced performance or interruptions in resource availability.

Base Score:5.1

Credit

Masaaki Chida of GREE, Inc. reported this vulnerability to IPA.
JPCERT/CC coordinated with the developer under Information Security Early Warning Partnership.

Other Information

JPCERT Alert
JPCERT Reports
CERT Advisory
CPNI Advisory
TRnotes
CVE CVE-2014-1999
JVN iPedia JVNDB-2014-000082