Description
Symfony is a PHP framework for web and console applications and a set of reusable PHP components. Starting in versions 5.4.21 and 6.2.7 and prior to versions 5.4.31 and 6.3.8, `SessionStrategyListener` does not migrate the session after every successful login. It does so only in case the logged in user changes by means of checking the user identifier. In some use cases, the user identifier doesn't change between the verification phase and the successful login, while the token itself changes from one type (partially-authenticated) to another (fully-authenticated). When this happens, the session id should be regenerated to prevent possible session fixations, which is not the case at the moment. As of versions 5.4.31 and 6.3.8, Symfony now checks the type of the token in addition to the user identifier before deciding whether the session id should be regenerated.
Affected products
| Vendor | Product | Affected | Fixed |
|---|---|---|---|
| symfony | symfony | >= 5.4.21, < 5.4.31, >= 6.2.7, < 6.3.8 | — |
Fixed in Linux distributions
Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.
Debian
Security tracker ↗| Release | Package | Fixed in | Advisory |
|---|---|---|---|
| Debian 14 | symfony | 5.4.31+dfsg-1 | — |
| Debian 13 | symfony | 5.4.31+dfsg-1 | — |
| Debian 12 | symfony | 5.4.23+dfsg-1+deb12u1 | — |
Affected packages
| Ecosystem | Package | Affected | Fixed | Record |
|---|---|---|---|---|
| Packagist | symfony/security-http | >= 5.4.21, < 5.4.31 | 5.4.31 | GHSA-m2wj-r6g3-fxfx |
| Packagist | symfony/security-http | >= 6.2.7, < 6.3.8 | 6.3.8 | GHSA-m2wj-r6g3-fxfx |
| Packagist | symfony/symfony | >= 5.4.21, < 5.4.31 | 5.4.31 | GHSA-m2wj-r6g3-fxfx |
| Packagist | symfony/symfony | >= 6.2.7, < 6.3.8 | 6.3.8 | GHSA-m2wj-r6g3-fxfx |