[REVIVE-SA-2019-002] Revive Adserver Vulnerability

From: Matteo Beccati <matteo@beccati.com>
To: bugtraq@securityfocus.com,fulldisclosure@seclists.org
Cc:
Subject: [REVIVE-SA-2019-002] Revive Adserver Vulnerability
Date:


========================================================================
Revive Adserver Security Advisory                     REVIVE-SA-2019-002
------------------------------------------------------------------------
https://www.revive-adserver.com/security/revive-sa-2019-002
------------------------------------------------------------------------
CVE-IDs:               t.b.a.
Date:                  2019-05-21
Risk Level:            High
Applications affected: Revive Adserver
Versions affected:     < 4.2.1
Versions not affected: >= 4.2.1
Website:               https://www.revive-adserver.com/
========================================================================


========================================================================
Vulnerability 1 - Use of Cryptographically Weak PRNG
========================================================================
Vulnerability Type:    Use of Cryptographically Weak Pseudo-Random
                       Number Generator (PRNG) [CWE-388]
CVE-ID:                t.b.a.
CVSS Base Score:       8.1
CVSSv3 Vector:         AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H
CVSS Impact Subscore:  5.9
CVSS Exploitability Subscore: 2.2
========================================================================

Description
-----------
A Use of Cryptographically Weak Pseudo-Random Number Generator (PRNG)
vulnerability has been discovered in the generation of the token used
for the password recovery functionality of Revive Adserver by HackerOne
user paulos_. Such vulnerability could be used to gain access to
existing user accounts, if the attacker has access to the password
recovery URL and knows or can guess the email address associated to the
target account.

Details
-------
An attacker could request a password reset for a known user account and
exploit the usage of the weak uniqid() function to guess what the
generated password recovery token could be. If successful, they could
set a new password and gain access to the account.

References
----------
https://hackerone.com/reports/576504
https://github.com/revive-adserver/revive-adserver/commit/51fef40
https://cwe.mitre.org/data/definitions/338.html



========================================================================
Solution
========================================================================

We strongly advise people to upgrade to the most recent 4.2.1 version of
Revive Adserver. In case that is not immediately feasible, we especially
recommend to delete or block the www/admin/password-recovery.php script.


========================================================================
Contact Information
========================================================================

The security contact for Revive Adserver can be reached at:
<security AT revive-adserver DOT com>.

Please review https://www.revive-adserver.com/security/ before doing so.


-- 
Matteo Beccati
On behalf of the Revive Adserver Team
https://www.revive-adserver.com/





Copyright © 1995-2019 LinuxRocket.net. All rights reserved.