Multiple vulnerabilities in Symfony framework



Published: 2019-04-18
Risk High
Patch available YES
Number of vulnerabilities 5
CVE ID CVE-2019-10909
CVE-2019-10910
CVE-2019-10911
CVE-2019-10912
CVE-2019-10913
CWE ID CWE-79
CWE-94
CWE-287
CWE-502
CWE-20
Exploitation vector Network
Public exploit N/A
Vulnerable software
Subscribe
Symfony
Web applications / CMS

Vendor SensioLabs

Security Advisory

1) Cross-site scripting

Risk: Medium

CVSSv3: 5.3 [CVSS:3.0/AV:N/AC:L/PR:N/UI:R/S:C/C:L/I:L/A:N/E:U/RL:O/RC:C] [PCI]

CVE-ID: CVE-2019-10909

CWE-ID: CWE-79 - Improper Neutralization of Input During Web Page Generation ('Cross-site Scripting')

Exploit availability: No

Description

The disclosed vulnerability allows a remote attacker to perform cross-site scripting (XSS) attacks.

The vulnerability exists due to insufficient sanitization of user-supplied data within the form theme of the PHP templating engine. A remote attacker can trick the victim to follow a specially crafted link and execute arbitrary HTML and script code in user's browser in context of vulnerable website.

Successful exploitation of this vulnerability may allow a remote attacker to steal potentially sensitive information, change appearance of the web page, perform phishing and drive-by-download attacks.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

Symfony: 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, 2.7.9, 2.7.10, 2.7.11, 2.7.12, 2.7.13, 2.7.14, 2.7.15, 2.7.16, 2.7.17, 2.7.18, 2.7.19, 2.7.20, 2.7.21, 2.7.22, 2.7.23, 2.7.24, 2.7.25, 2.7.26, 2.7.27, 2.7.28, 2.7.29, 2.7.30, 2.7.31, 2.7.32, 2.7.33, 2.7.34, 2.7.35, 2.7.36, 2.7.37, 2.7.38, 2.7.39, 2.7.40, 2.7.41, 2.7.42, 2.7.43, 2.7.44, 2.7.45, 2.7.46, 2.7.47, 2.7.48, 2.7.49, 2.7.50, 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.8.6, 2.8.7, 2.8.8, 2.8.9, 2.8.10, 2.8.11, 2.8.12, 2.8.13, 2.8.14, 2.8.15, 2.8.16, 2.8.17, 2.8.18, 2.8.19, 2.8.20, 2.8.21, 2.8.22, 2.8.23, 2.8.24, 2.8.25, 2.8.26, 2.8.27, 2.8.28, 2.8.29, 2.8.30, 2.8.31, 2.8.32, 2.8.33, 2.8.34, 2.8.35, 2.8.36, 2.8.37, 2.8.38, 2.8.39, 2.8.40, 2.8.41, 2.8.42, 2.8.43, 2.8.44, 2.8.45, 2.8.46, 2.8.47, 2.8.48, 2.8.49, 3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10, 3.4.11, 3.4.12, 3.4.13, 3.4.14, 3.4.15, 3.4.16, 3.4.17, 3.4.18, 3.4.19, 3.4.20, 3.4.21, 3.4.22, 3.4.23, 3.4.24, 3.4.25, 4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4, 4.1.5, 4.1.6, 4.1.7, 4.1.8, 4.1.9, 4.1.10, 4.2.0, 4.2.1, 4.2.2, 4.2.3, 4.2.4, 4.2.5, 4.2.6

CPE External links

https://symfony.com/blog/cve-2019-10909-escape-validation-messages-in-the-php-templating-engine

Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

2) Code injection

Risk: High

CVSSv3: 7.1 [CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C] [PCI]

CVE-ID: CVE-2019-10910

CWE-ID: CWE-94 - Improper Control of Generation of Code ('Code Injection')

Exploit availability: No

Description

The disclosed vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to insufficient sanitization of user-supplied data related to service identifiers. A remote attacker can send specially crafted HTTP request to the affected system and execute arbitrary PHP code.

Successful exploitation of this vulnerability may allow a remote attacker to compromise the affected application.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

Symfony: 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, 2.7.9, 2.7.10, 2.7.11, 2.7.12, 2.7.13, 2.7.14, 2.7.15, 2.7.16, 2.7.17, 2.7.18, 2.7.19, 2.7.20, 2.7.21, 2.7.22, 2.7.23, 2.7.24, 2.7.25, 2.7.26, 2.7.27, 2.7.28, 2.7.29, 2.7.30, 2.7.31, 2.7.32, 2.7.33, 2.7.34, 2.7.35, 2.7.36, 2.7.37, 2.7.38, 2.7.39, 2.7.40, 2.7.41, 2.7.42, 2.7.43, 2.7.44, 2.7.45, 2.7.46, 2.7.47, 2.7.48, 2.7.49, 2.7.50, 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.8.6, 2.8.7, 2.8.8, 2.8.9, 2.8.10, 2.8.11, 2.8.12, 2.8.13, 2.8.14, 2.8.15, 2.8.16, 2.8.17, 2.8.18, 2.8.19, 2.8.20, 2.8.21, 2.8.22, 2.8.23, 2.8.24, 2.8.25, 2.8.26, 2.8.27, 2.8.28, 2.8.29, 2.8.30, 2.8.31, 2.8.32, 2.8.33, 2.8.34, 2.8.35, 2.8.36, 2.8.37, 2.8.38, 2.8.39, 2.8.40, 2.8.41, 2.8.42, 2.8.43, 2.8.44, 2.8.45, 2.8.46, 2.8.47, 2.8.48, 2.8.49, 3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10, 3.4.11, 3.4.12, 3.4.13, 3.4.14, 3.4.15, 3.4.16, 3.4.17, 3.4.18, 3.4.19, 3.4.20, 3.4.21, 3.4.22, 3.4.23, 3.4.24, 3.4.25, 4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4, 4.1.5, 4.1.6, 4.1.7, 4.1.8, 4.1.9, 4.1.10, 4.2.0, 4.2.1, 4.2.2, 4.2.3, 4.2.4, 4.2.5, 4.2.6

CPE External links

https://symfony.com/blog/cve-2019-10910-check-service-ids-are-valid

Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

3) Improper authentication

Risk: Medium

CVSSv3: 6.5 [CVSS:3.0/AV:N/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:H/E:U/RL:O/RC:C] [PCI]

CVE-ID: CVE-2019-10911

CWE-ID: CWE-287 - Improper Authentication

Exploit availability: No

Description

The disclosed vulnerability allows a remote attacker to bypass authentication process.

The vulnerability exists due to the way application handles values within HTTP cookies, related to session expiration time and username. A remote attacker can modify the remember me cookie value and authenticate as a different user.

This attack is only possible if remember me functionality is enabled and the two users share a password hash or the password hashes (e.g. UserInterface::getPassword()) are null for all users (which is valid if passwords are checked by an external system, e.g. an SSO).

Mitigation

Install updates from vendor's website.

Vulnerable software versions

Symfony: 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, 2.7.9, 2.7.10, 2.7.11, 2.7.12, 2.7.13, 2.7.14, 2.7.15, 2.7.16, 2.7.17, 2.7.18, 2.7.19, 2.7.20, 2.7.21, 2.7.22, 2.7.23, 2.7.24, 2.7.25, 2.7.26, 2.7.27, 2.7.28, 2.7.29, 2.7.30, 2.7.31, 2.7.32, 2.7.33, 2.7.34, 2.7.35, 2.7.36, 2.7.37, 2.7.38, 2.7.39, 2.7.40, 2.7.41, 2.7.42, 2.7.43, 2.7.44, 2.7.45, 2.7.46, 2.7.47, 2.7.48, 2.7.49, 2.7.50, 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.8.6, 2.8.7, 2.8.8, 2.8.9, 2.8.10, 2.8.11, 2.8.12, 2.8.13, 2.8.14, 2.8.15, 2.8.16, 2.8.17, 2.8.18, 2.8.19, 2.8.20, 2.8.21, 2.8.22, 2.8.23, 2.8.24, 2.8.25, 2.8.26, 2.8.27, 2.8.28, 2.8.29, 2.8.30, 2.8.31, 2.8.32, 2.8.33, 2.8.34, 2.8.35, 2.8.36, 2.8.37, 2.8.38, 2.8.39, 2.8.40, 2.8.41, 2.8.42, 2.8.43, 2.8.44, 2.8.45, 2.8.46, 2.8.47, 2.8.48, 2.8.49, 3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10, 3.4.11, 3.4.12, 3.4.13, 3.4.14, 3.4.15, 3.4.16, 3.4.17, 3.4.18, 3.4.19, 3.4.20, 3.4.21, 3.4.22, 3.4.23, 3.4.24, 3.4.25, 4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4, 4.1.5, 4.1.6, 4.1.7, 4.1.8, 4.1.9, 4.1.10, 4.2.0, 4.2.1, 4.2.2, 4.2.3, 4.2.4, 4.2.5, 4.2.6

CPE External links

https://symfony.com/blog/cve-2019-10911-add-a-separator-in-the-remember-me-cookie-hash

Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote authenticated user via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

4) Insecure deserialization

Risk: Medium

CVSSv3: 7.1 [CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H/E:U/RL:O/RC:C] [PCI]

CVE-ID: CVE-2019-10912

CWE-ID: CWE-502 - Deserialization of Untrusted Data

Exploit availability: No

Description

The disclosed vulnerability allows a remote attacker to compromise vulnerable system.

The vulnerability exists due to insecure call of the unserialize() PHP function in untrusted user-input. A remote attacker can send specially crafted HTTP request to the affected system and delete arbitrary files on the system or display raw data output.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

Symfony: 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.8.6, 2.8.7, 2.8.8, 2.8.9, 2.8.10, 2.8.11, 2.8.12, 2.8.13, 2.8.14, 2.8.15, 2.8.16, 2.8.17, 2.8.18, 2.8.19, 2.8.20, 2.8.21, 2.8.22, 2.8.23, 2.8.24, 2.8.25, 2.8.26, 2.8.27, 2.8.28, 2.8.29, 2.8.30, 2.8.31, 2.8.32, 2.8.33, 2.8.34, 2.8.35, 2.8.36, 2.8.37, 2.8.38, 2.8.39, 2.8.40, 2.8.41, 2.8.42, 2.8.43, 2.8.44, 2.8.45, 2.8.46, 2.8.47, 2.8.48, 2.8.49, 3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10, 3.4.11, 3.4.12, 3.4.13, 3.4.14, 3.4.15, 3.4.16, 3.4.17, 3.4.18, 3.4.19, 3.4.20, 3.4.21, 3.4.22, 3.4.23, 3.4.24, 3.4.25, 4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4, 4.1.5, 4.1.6, 4.1.7, 4.1.8, 4.1.9, 4.1.10, 4.2.0, 4.2.1, 4.2.2, 4.2.3, 4.2.4, 4.2.5, 4.2.6

CPE External links

https://symfony.com/blog/cve-2019-10912-prevent-destructors-with-side-effects-from-being-unserialize...

Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.

5) Improper input validation

Risk: Medium

CVSSv3: 5.7 [CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:L/E:U/RL:O/RC:C] [PCI]

CVE-ID: CVE-2019-10913

CWE-ID: CWE-20 - Improper Input Validation

Exploit availability: No

Description

The disclosed vulnerability allows a remote attacker to bypass certain security restrictions.

The vulnerability exists due to absent validation of HTTP methods when processing methods directly or via X-Http-Method-Override header. A remote attacker can pass specially crafted string as HTTP method and bypass certain security restrictions.

Mitigation

Install updates from vendor's website.

Vulnerable software versions

Symfony: 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, 2.7.9, 2.7.10, 2.7.11, 2.7.12, 2.7.13, 2.7.14, 2.7.15, 2.7.16, 2.7.17, 2.7.18, 2.7.19, 2.7.20, 2.7.21, 2.7.22, 2.7.23, 2.7.24, 2.7.25, 2.7.26, 2.7.27, 2.7.28, 2.7.29, 2.7.30, 2.7.31, 2.7.32, 2.7.33, 2.7.34, 2.7.35, 2.7.36, 2.7.37, 2.7.38, 2.7.39, 2.7.40, 2.7.41, 2.7.42, 2.7.43, 2.7.44, 2.7.45, 2.7.46, 2.7.47, 2.7.48, 2.7.49, 2.7.50, 2.8.2, 2.8.3, 2.8.4, 2.8.5, 2.8.6, 2.8.7, 2.8.8, 2.8.9, 2.8.10, 2.8.11, 2.8.12, 2.8.13, 2.8.14, 2.8.15, 2.8.16, 2.8.17, 2.8.18, 2.8.19, 2.8.20, 2.8.21, 2.8.22, 2.8.23, 2.8.24, 2.8.25, 2.8.26, 2.8.27, 2.8.28, 2.8.29, 2.8.30, 2.8.31, 2.8.32, 2.8.33, 2.8.34, 2.8.35, 2.8.36, 2.8.37, 2.8.38, 2.8.39, 2.8.40, 2.8.41, 2.8.42, 2.8.43, 2.8.44, 2.8.45, 2.8.46, 2.8.47, 2.8.48, 2.8.49, 3.4.0, 3.4.1, 3.4.2, 3.4.3, 3.4.4, 3.4.5, 3.4.6, 3.4.7, 3.4.8, 3.4.9, 3.4.10, 3.4.11, 3.4.12, 3.4.13, 3.4.14, 3.4.15, 3.4.16, 3.4.17, 3.4.18, 3.4.19, 3.4.20, 3.4.21, 3.4.22, 3.4.23, 3.4.24, 3.4.25, 4.1.0, 4.1.1, 4.1.2, 4.1.3, 4.1.4, 4.1.5, 4.1.6, 4.1.7, 4.1.8, 4.1.9, 4.1.10, 4.2.0, 4.2.1, 4.2.2, 4.2.3, 4.2.4, 4.2.5, 4.2.6

CPE External links

https://symfony.com/blog/cve-2019-10913-reject-invalid-
http-method-overrides

Q & A

Can this vulnerability be exploited remotely?

Yes. This vulnerability can be exploited by a remote non-authenticated attacker via the Internet.

Is there known malware, which exploits this vulnerability?

No. We are not aware of malware exploiting this vulnerability.



ImmuniWeb® AI Platform for Application Security Testing