GitHub Advisoryadvisory · Packagist
GHSA-prg5-hg25-8grq Ability to switch channels via GET parameter enabled in production environments
LOW
Official page ↗
- Aliases
- CVE-2020-5218
- Ecosystem
- Packagist
- Packages
- sylius/sylius
- Severity
- Low
- CVSS vector
- CVSS:3.1/AV:N/AC:H/PR:L/UI:R/S:C/C:L/I:L/A:N
- Weaknesses
- CWE-444
- Reviewed
- 2020-01-27
Affected packages
• Packagist sylius/sylius: < 1.3.16 → fixed in 1.3.16
• Packagist sylius/sylius: >= 1.4.0, < 1.4.12 → fixed in 1.4.12
• Packagist sylius/sylius: >= 1.5, < 1.5.9 → fixed in 1.5.9
• Packagist sylius/sylius: >= 1.6.0, < 1.6.5 → fixed in 1.6.5
Description
Impact
This vulnerability gives the ability to switch channels via the `_channel_code` GET parameter in production environments. This was meant to be enabled only when `%kernel.debug%` is set to true.
However, if no `sylius_channel.debug` is set explicitly in the configuration, the default value which is `%kernel.debug%` will be not resolved and cast to boolean, enabling this debug feature even if that parameter is set to false.
Patches
Patch has been provided for Sylius 1.3.x and newer - 1.3.16, 1.4.12, 1.5.9, 1.6.5. Versions older than 1.3 are not covered by our security support anymore.
Workarounds
Unsupported versions could be patched by adding the following configuration to run in production:
```yaml
sylius_channel:
debug: false
```
Related
Alias · CVE (1)
- CVE-2020-5218 Affected versions of Sylius give attackers the ability to switch channels via the _channel_code GET parameter in production environments. vulnerability
Weakness · CWE (1)
- CWE-444 Inconsistent Interpretation of HTTP Requests weakness
References
- https://github.com/Sylius/Sylius/security/advisories/GHSA-prg5-hg25-8grq web
- https://github.com/Sylius/SyliusResourceBundle/security/advisories/GHSA-8vp7-j5cj-vvm2 web
- https://nvd.nist.gov/vuln/detail/CVE-2020-5218 advisory
- https://github.com/FriendsOfPHP/security-advisories/blob/master/sylius/resource-bundle/CVE-2020-5220.yaml web