CVE-2016-1902
Description
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.
Predictions
Heuristic predictions, AS-IS, for prioritization only.
Mitigations
Vendor advisory: debian — https://security-tracker.debian.org/tracker/CVE-2016-1902
Vendor advisory: cve@mitre.org — https://github.com/symfony/symfony/pull/17359
Vendor advisory: cve@mitre.org — http://symfony.com/blog/cve-2016-1902-securerandom-s-fallback-not-secure-when-openssl-fails
OS impact
| OS | Version | Status | Fixed in |
|---|---|---|---|
| debian | 8.0 | affected | |
| debian | bookworm | fixed | 2.7.9+dfsg-1 |
| debian | bullseye | fixed | 2.7.9+dfsg-1 |
| debian | forky | fixed | 2.7.9+dfsg-1 |
| debian | sid | fixed | 2.7.9+dfsg-1 |
| debian | trixie | fixed | 2.7.9+dfsg-1 |
Package impact
| Ecosystem | Package | Vulnerable | Fixed |
|---|---|---|---|
| Packagist | symfony/security-core | >=2.4.0,<2.6.13 | 2.6.13 |
| Packagist | symfony/security-core | >=2.7.0,<2.7.9 | 2.7.9 |
| Packagist | symfony/security | >=2.3.0,<2.3.37 | 2.3.37 |
| Packagist | symfony/security | >=2.4.0,<2.6.13 | 2.6.13 |
| Packagist | symfony/security | >=2.7.0,<2.7.9 | 2.7.9 |
| Packagist | symfony/symfony | >=2.3.0,<2.3.37 | 2.3.37 |
| Packagist | symfony/symfony | >=2.4.0,<2.6.13 | 2.6.13 |
| Packagist | symfony/symfony | >=2.7.0,<2.7.9 | 2.7.9 |
Application impact
| Vendor | Product | Versions | Fixed |
|---|---|---|---|
| sensiolabs | symfony | {"endIncluding":"2.3.36"} | |
| sensiolabs | symfony | 2.6.0 | |
| sensiolabs | symfony | 2.6.1 | |
| sensiolabs | symfony | 2.6.2 | |
| sensiolabs | symfony | 2.6.3 | |
| sensiolabs | symfony | 2.6.4 | |
| sensiolabs | symfony | 2.6.5 | |
| sensiolabs | symfony | 2.6.6 | |
| sensiolabs | symfony | 2.6.7 | |
| sensiolabs | symfony | 2.6.8 | |
| sensiolabs | symfony | 2.6.9 | |
| sensiolabs | symfony | 2.6.10 | |
| sensiolabs | symfony | 2.6.11 | |
| sensiolabs | symfony | 2.6.12 | |
| sensiolabs | symfony | 2.7.0 | |
| sensiolabs | symfony | 2.7.1 | |
| sensiolabs | symfony | 2.7.2 | |
| sensiolabs | symfony | 2.7.3 | |
| sensiolabs | symfony | 2.7.4 | |
| sensiolabs | symfony | 2.7.5 | |
| sensiolabs | symfony | 2.7.6 | |
| sensiolabs | symfony | 2.7.7 | |
| sensiolabs | symfony | 2.7.8 | |
References
- http://symfony.com/blog/cve-2016-1902-securerandom-s-fallback-not-secure-when-openssl-fails
- http://www.debian.org/security/2016/dsa-3588
- https://github.com/symfony/symfony/pull/17359
- https://www.landaire.net/blog/cve-2016-1902-symfony-securerandom/
- https://nvd.nist.gov/vuln/detail/CVE-2016-1902
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/security-core/CVE-2016-1902.yaml
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/security/CVE-2016-1902.yaml
- https://github.com/FriendsOfPHP/security-advisories/blob/master/symfony/symfony/CVE-2016-1902.yaml
- https://symfony.com/cve-2016-1902
- https://www.landaire.net/blog/cve-2016-1902-symfony-securerandom
- https://security-tracker.debian.org/tracker/CVE-2016-1902
CWEs
CWE-310
Verify integrity in audit chain (admin only). AS-IS.