PT-2012-28: Administrator Privilege Gaining in DataLife Engine

CRITICAL
(9.0) (AV:N/AC:L/Au:S/C:C/I:C/A:C)

(PT-2012-28) Positive Technologies Security Advisory
Administrator Privilege Gaining in DataLife Engine

Vulnerable software

DataLife Engine
Version: 9.6 and earlier

Application link:
http://dle-news.ru/

Severity level

Severity level: High
Impact: Administrator privilege gaining
Access Vector: Remote  

CVSS v2:
Base Score: 9.0
Vector: (AV:N/AC:L/Au:S/C:C/I:C/A:C)

CVE: not assigned

Software description

DataLife Engine is a website management system.

Vulnerability description

Positive Research Center experts detected a vulnerability that exists as confirmation code (that is used to reset passwords for all accounts including administrator account) and new generated passwords are predictable.

Vulnerable code: engine/modules/lostpassword.php

$salt = "abchefghjkmnpqrstuvwxyz0123456789";
srand( ( double ) microtime() * 1000000 );

for($i = 0; $i < 15; $i ++) {
$rand_lost .= $salt{rand( 0, 33 )};
}

$lostid = sha1( md5( $lostname . $lostmail ) . time() . $rand_lost );

 

Vulnerable code: engine/modules/pm.php

$salt = "abchefghjkmnpqrstuvwxyz";
$random_key = "";

for($i = 0; $i < 8; $i ++) {
$random_key .= $salt{rand( 0, 23 )};
}

You need to know administrator login if you want to reset its password. An attacker can easily check if the login or email exists, if he tries to register with the login or email. The vulnerability is exploitable, as  DataLife Engine shows the results of rand function call that allows an attacker to get srand SEED, and then use it to predict all random numbers, including numbers used for password reset tokens and password  generating. Also, this code provides only 2^15 possible values of generated tokens in Windows. The attacker has to send 2 keep-alive requests to implement the attack. The first request allows the attacker to get SHA hash of the random value, the second one is used to call for the page that recovers administrator's password with predicted token. This allows the attacker to get confirmation code and change the password. The following data is necessary: administrator ID (it is always 1), email and login (in most case, admin@host.ru and admin).

How to fix

Update your software up to the latest version.

Advisory status

17.08.2012 - Vendor is notified
17.08.2012 - Vendor gets vulnerability details
12.09.2012 - Vendor releases fixed version and details
04.02.2013 - Public disclosure

Credits

The vulnerability has discovered by Timur Yunusov, Arseny Reutov, Positive Research Center (Positive Technologies Company)

References

http://en.securitylab.ru/lab/PT-2012-28

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.

Vendor:
Softnews Media Group
Vulnerable product:
DataLife Engine 9.x

Get in touch

Fill in the form and our specialists
will contact you shortly