When an application defines multiple firewalls, the authenticated token delivered by one of the firewalls is available to all other firewalls. This can be abused when the application defines different providers for different parts of an application. In such a situation, a user authenticated on one part of the application is considered authenticated on the whole application.
We now ensure that the authenticated token is only available for the firewall that generates it.
The patch for this issue is available here for branch 5.3.
I would like to thank Bogdan, gndk, PaweΕ WarchoΕ, Warxcell, and Adrien Lamotte for reporting the issue and Wouter J for fixing the issue.
CPE | Name | Operator | Version |
---|---|---|---|
symfony/security-http | eq | 5.3.0 | |
symfony/symfony | eq | 5.3.1 | |
symfony/symfony | eq | 5.3.0 | |
symfony/security-http | eq | 5.3.1 |
github.com/FriendsOfPHP/security-advisories/blob/master/symfony/security-http/CVE-2021-32693.yaml
github.com/FriendsOfPHP/security-advisories/blob/master/symfony/symfony/CVE-2021-32693.yaml
github.com/symfony/security-http
github.com/symfony/security-http/commit/6bf4c31219773a558b019ee12e54572174ff8129
github.com/symfony/symfony/commit/3084764ad82f29dbb025df19978b9cbc3ab34728
github.com/symfony/symfony/security/advisories/GHSA-rfcf-m67m-jcrq
nvd.nist.gov/vuln/detail/CVE-2021-32693
symfony.com/blog/cve-2021-32693-authentication-granted-to-all-firewalls-instead-of-just-one
symfony.com/cve-2021-32693