SensioLabs Symfony up to 2.3.36/2.6.12/2.7.8 on PHP5 SecureRandom Class SecureRandom.php nextBytes cryptographic issue
| CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
|---|---|---|
| 7.2 | $0-$5k | 0.00 |
Summary
A vulnerability has been found in SensioLabs Symfony up to 2.3.36/2.6.12/2.7.8 on PHP5 and classified as critical. The impacted element is the function nextBytes of the file Symfony/Component/Security/Core/Util/SecureRandom.php of the component SecureRandom Class. Performing a manipulation results in cryptographic issue.
This vulnerability is cataloged as CVE-2016-1902. It is possible to initiate the attack remotely. There is no exploit available.
The affected component should be upgraded.
Details
A vulnerability, which was classified as critical, was found in SensioLabs Symfony up to 2.3.36/2.6.12/2.7.8 on PHP5 (Programming Tool Software). This affects the function nextBytes of the file Symfony/Component/Security/Core/Util/SecureRandom.php of the component SecureRandom Class. The manipulation with an unknown input leads to a cryptographic issue vulnerability. CWE is classifying the issue as CWE-310. This is going to have an impact on confidentiality, integrity, and availability. The summary by CVE is:
The nextBytes function in the SecureRandom class in Symfony before 2.3.37, 2.6.x before 2.6.13, and 2.7.x before 2.7.9 does not properly generate random numbers when used with PHP 5.x without the paragonie/random_compat library and the openssl_random_pseudo_bytes function fails, which makes it easier for attackers to defeat cryptographic protection mechanisms via unspecified vectors.
The weakness was shared 06/01/2016 as #17359 as confirmed git commit (GIT Repository). It is possible to read the advisory at github.com. This vulnerability is uniquely identified as CVE-2016-1902. It is possible to initiate the attack remotely. No form of authentication is needed for exploitation. Technical details of the vulnerability are known, but there is no available exploit. The attack technique deployed by this issue is T1600 according to MITRE ATT&CK.
By approaching the search of inurl:Symfony/Component/Security/Core/Util/SecureRandom.php it is possible to find vulnerable targets with Google Hacking. The vulnerability scanner Nessus provides a plugin with the ID 91365 (Debian DSA-3588-1 : symfony - security update), which helps to determine the existence of the flaw in a target environment. It is assigned to the family Debian Local Security Checks. The commercial vulnerability scanner Qualys is able to test this issue with plugin 175750 (Debian Security Update for symfony (DSA 3588-1)). The 0-day price calculation could be verified by monitoring Darknet markets.
Upgrading to version 2.3.37, 2.6.13 or 2.7.9 eliminates this vulnerability. Applying a patch is able to eliminate this problem. The bugfix is ready for download at github.com. The best possible mitigation is suggested to be upgrading to the latest version. A possible mitigation has been published immediately after the disclosure of the vulnerability. The vulnerability will be addressed with the following lines of code:
return random_bytes($nbBytes);
The vulnerability is also documented in the vulnerability database at Tenable (91365). The entry VDB-87705 is related to this item. Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
Product
Type
Vendor
Name
Version
- 2.3.0
- 2.3.1
- 2.3.2
- 2.3.3
- 2.3.4
- 2.3.5
- 2.3.6
- 2.3.7
- 2.3.8
- 2.3.9
- 2.3.10
- 2.3.11
- 2.3.12
- 2.3.13
- 2.3.14
- 2.3.15
- 2.3.16
- 2.3.17
- 2.3.18
- 2.3.19
- 2.3.20
- 2.3.21
- 2.3.22
- 2.3.23
- 2.3.24
- 2.3.25
- 2.3.26
- 2.3.27
- 2.3.28
- 2.3.29
- 2.3.30
- 2.3.31
- 2.3.32
- 2.3.33
- 2.3.34
- 2.3.35
- 2.3.36
- 2.6.0
- 2.6.1
- 2.6.2
- 2.6.3
- 2.6.4
- 2.6.5
- 2.6.6
- 2.6.7
- 2.6.8
- 2.6.9
- 2.6.10
- 2.6.11
- 2.6.12
- 2.7.0
- 2.7.1
- 2.7.2
- 2.7.3
- 2.7.4
- 2.7.5
- 2.7.6
- 2.7.7
- 2.7.8
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 7.4VulDB Meta Temp Score: 7.2
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 7.5
NVD Vector: 🔍
CVSSv2
| AV | AC | Au | C | I | A |
|---|---|---|---|---|---|
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| 💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
| Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
|---|---|---|---|---|---|
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
| Unlock | Unlock | Unlock | Unlock | Unlock | Unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Cryptographic issueCWE: CWE-310
CAPEC: 🔍
ATT&CK: 🔍
Physical: No
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
Google Hack: 🔍
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
| 0-Day | Unlock | Unlock | Unlock | Unlock |
|---|---|---|---|---|
| Today | Unlock | Unlock | Unlock | Unlock |
Nessus ID: 91365
Nessus Name: Debian DSA-3588-1 : symfony - security update
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
OpenVAS ID: 703588
OpenVAS Name: Debian Security Advisory DSA 3588-1 (symfony - security update)
OpenVAS File: 🔍
OpenVAS Family: 🔍
Qualys ID: 🔍
Qualys Name: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: UpgradeStatus: 🔍
Reaction Time: 🔍
0-Day Time: 🔍
Exposure Time: 🔍
Upgrade: Symfony 2.3.37/2.6.13/2.7.9
Patch: github.com
Timeline
01/14/2016 🔍06/01/2016 🔍
06/01/2016 🔍
06/01/2016 🔍
06/02/2016 🔍
08/22/2022 🔍
Sources
Advisory: #17359Status: Confirmed
CVE: CVE-2016-1902 (🔍)
GCVE (CVE): GCVE-0-2016-1902
GCVE (VulDB): GCVE-100-87699
OVAL: 🔍
See also: 🔍
Entry
Created: 06/02/2016 13:23Updated: 08/22/2022 15:53
Changes: 06/02/2016 13:23 (52), 06/14/2018 22:17 (20), 08/22/2022 15:41 (2), 08/22/2022 15:47 (11), 08/22/2022 15:53 (1)
Complete: 🔍
Cache ID: 216::103
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.
No comments yet. Languages: en.
Please log in to comment.