CVE-2018-19789
Symfony Path Disclosure
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
Attack profile
How easy it is to exploit
- Attack vector
- Network
- Complexity
- Low
- Privileges needed
- None
- User interaction
- None
What an attacker can affect
- Confidentiality
- Low
- Integrity
- None
- Availability
- None
Exploit likelihood
What each source reports
NVD Score used
5.3
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
CVE-2018-19789- CVSS 3.0
- 5.3 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - CVSS 2.0
- 5.0 Medium
AV:N/AC:L/Au:N/C:P/I:N/A:N - Weakness
- CWE-434
- Updated
- 2026-11-02
CVE List No score
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
CVE-2018-19789- Updated
- 2026-11-02
EUVDEUVD-2022-5696 No score
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
EUVD-2022-5696- Updated
- 2026-11-03
GitHub AdvisoriesGHSA-x3cf-w64x-4cp2
5.3
Symfony Path Disclosure
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
GHSA-x3cf-w64x-4cp2- CVSS 3.0
- 5.3 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Weakness
- CWE-434
- Updated
- 2026-11-02
OSV
5.3
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
CVE-2018-19789- CVSS 3.0
- 5.3 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
OSVDEBIAN-CVE-2018-19789
5.3
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
DEBIAN-CVE-2018-19789- CVSS 3.0
- 5.3 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
OSVGHSA-x3cf-w64x-4cp2
5.3
Symfony Path Disclosure
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
GHSA-x3cf-w64x-4cp2- CVSS 3.0
- 5.3 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Weakness
- CWE-434
- Updated
- 2026-11-02
OSVUBUNTU-CVE-2018-19789
5.3
An issue was discovered in Symfony 2.7.x before 2.7.50, 2.8.x before 2.8.49, 3.x before 3.4.20, 4.0.x before 4.0.15, 4.1.x before 4.1.9, and 4.2.x before 4.2.1. When using the scalar type hint string in a setter method (e.g. setName(string $name)) of a class that's the data_class of a form, and when a file upload is submitted to the corresponding field instead of a normal text input, then UploadedFile::__toString() is called which will then return and disclose the path of the uploaded file. If combined with a local file inclusion issue in certain circumstances this could escalate it to a Remote Code Execution.
- Record
UBUNTU-CVE-2018-19789- CVSS 3.0
- 5.3 Medium
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N - Updated
- 2026-11-02
Affected products
Affected packages
| Package | Affected | Fixed |
|---|---|---|
symfony/symfonyPackagist |
2.7.0 up to 2.7.50 | 2.7.50 |
symfony/symfonyPackagist |
2.8.0 up to 2.8.49 | 2.8.49 |
symfony/symfonyPackagist |
3.0.0 up to 3.4.20 | 3.4.20 |
symfony/symfonyPackagist |
4.0.0 up to 4.0.15 | 4.0.15 |
symfony/symfonyPackagist |
4.1.0 up to 4.1.9 | 4.1.9 |
symfony/symfonyPackagist |
4.2.0 up to 4.2.1 | 4.2.1 |
symfony/formPackagist |
2.7.0 up to 2.7.50 | 2.7.50 |
symfony/formPackagist |
2.8.0 up to 2.8.49 | 2.8.49 |
symfony/formPackagist |
3.0.0 up to 3.4.20 | 3.4.20 |
symfony/formPackagist |
4.0.0 up to 4.0.15 | 4.0.15 |
Show 21 moreShow less
| Package | Affected | Fixed |
|---|---|---|
symfony/formPackagist |
4.1.0 up to 4.1.9 | 4.1.9 |
symfony/formPackagist |
4.2.0 up to 4.2.1 | 4.2.1 |
symfonyDebian:12 |
before 3.4.20+dfsg-1 | 3.4.20+dfsg-1 |
symfonyDebian:13 |
before 3.4.20+dfsg-1 | 3.4.20+dfsg-1 |
symfonyDebian:14 |
before 3.4.20+dfsg-1 | 3.4.20+dfsg-1 |
symfonyDebian:8 From an advisory covering 7 CVEs |
before 2.3.21+dfsg-4+deb8u4, plus listed versions 2.3.21+dfsg-42.3.21+dfsg-4+deb8u12.3.21+dfsg-4+deb8u22.3.21+dfsg-4+deb8u3 |
2.3.21+dfsg-4+deb8u4 |
symfonyDebian:9 From an advisory covering 8 CVEs |
before 2.8.7+dfsg-1.3+deb9u2, plus listed versions 2.8.7+dfsg-1.32.8.7+dfsg-1.3+deb9u1 |
2.8.7+dfsg-1.3+deb9u2 |
symfony/symfonyPackagist |
2.7.0 up to 2.7.50, plus listed versions v2.7.0v2.7.1v2.7.10v2.7.11v2.7.12 Show 45 moreShow lessv2.7.13v2.7.14v2.7.15v2.7.16v2.7.17v2.7.18v2.7.19v2.7.2v2.7.20v2.7.21v2.7.22v2.7.23v2.7.24v2.7.25v2.7.26v2.7.27v2.7.28v2.7.29v2.7.3v2.7.30v2.7.31v2.7.32v2.7.33v2.7.34v2.7.35v2.7.36v2.7.37v2.7.38v2.7.39v2.7.4v2.7.40v2.7.41v2.7.42v2.7.43v2.7.44v2.7.45v2.7.46v2.7.47v2.7.48v2.7.49v2.7.5v2.7.6v2.7.7v2.7.8v2.7.9 |
2.7.50 |
symfony/symfonyPackagist |
2.8.0 up to 2.8.49, plus listed versions v2.8.0v2.8.1v2.8.10v2.8.11v2.8.12 Show 44 moreShow lessv2.8.13v2.8.14v2.8.15v2.8.16v2.8.17v2.8.18v2.8.19v2.8.2v2.8.20v2.8.21v2.8.22v2.8.23v2.8.24v2.8.25v2.8.26v2.8.27v2.8.28v2.8.29v2.8.3v2.8.30v2.8.31v2.8.32v2.8.33v2.8.34v2.8.35v2.8.36v2.8.37v2.8.38v2.8.39v2.8.4v2.8.40v2.8.41v2.8.42v2.8.43v2.8.44v2.8.45v2.8.46v2.8.47v2.8.48v2.8.5v2.8.6v2.8.7v2.8.8v2.8.9 |
2.8.49 |
symfony/symfonyPackagist |
3.0.0 up to 3.4.20, plus listed versions v3.0.0v3.0.1v3.0.2v3.0.3v3.0.4 Show 45 moreShow lessv3.0.5v3.0.6v3.0.7v3.0.8v3.0.9v3.1.0v3.1.0-BETA1v3.1.0-RC1v3.1.1v3.1.10v3.1.2v3.1.3v3.1.4v3.1.5v3.1.6v3.1.7v3.1.8v3.1.9v3.2.0v3.2.0-BETA1v3.2.0-RC1v3.2.0-RC2v3.2.1v3.2.10v3.2.11v3.2.12v3.2.13v3.2.14v3.2.2v3.2.3v3.2.4v3.2.5v3.2.6v3.2.7v3.2.8v3.2.9v3.3.0v3.3.0-BETA1v3.3.0-RC1v3.3.1v3.3.10v3.3.11v3.3.12v3.3.13v3.3.14 |
3.4.20 |
symfony/symfonyPackagist |
4.0.0 up to 4.0.15, plus listed versions v4.0.0v4.0.1v4.0.10v4.0.11v4.0.12 Show 10 moreShow lessv4.0.13v4.0.14v4.0.2v4.0.3v4.0.4v4.0.5v4.0.6v4.0.7v4.0.8v4.0.9 |
4.0.15 |
symfony/symfonyPackagist |
4.1.0 up to 4.1.9, plus listed versions v4.1.0v4.1.1v4.1.2v4.1.3v4.1.4 Show 4 moreShow lessv4.1.5v4.1.6v4.1.7v4.1.8 |
4.1.9 |
symfony/symfonyPackagist |
4.2.0 up to 4.2.1, plus listed versions v4.2.0 |
4.2.1 |
symfony/formPackagist |
2.7.0 up to 2.7.50, plus listed versions v2.7.0v2.7.1v2.7.10v2.7.11v2.7.12 Show 45 moreShow lessv2.7.13v2.7.14v2.7.15v2.7.16v2.7.17v2.7.18v2.7.19v2.7.2v2.7.20v2.7.21v2.7.22v2.7.23v2.7.24v2.7.25v2.7.26v2.7.27v2.7.28v2.7.29v2.7.3v2.7.30v2.7.31v2.7.32v2.7.33v2.7.34v2.7.35v2.7.36v2.7.37v2.7.38v2.7.39v2.7.4v2.7.40v2.7.41v2.7.42v2.7.43v2.7.44v2.7.45v2.7.46v2.7.47v2.7.48v2.7.49v2.7.5v2.7.6v2.7.7v2.7.8v2.7.9 |
2.7.50 |
symfony/formPackagist |
2.8.0 up to 2.8.49, plus listed versions v2.8.0v2.8.1v2.8.10v2.8.11v2.8.12 Show 44 moreShow lessv2.8.13v2.8.14v2.8.15v2.8.16v2.8.17v2.8.18v2.8.19v2.8.2v2.8.20v2.8.21v2.8.22v2.8.23v2.8.24v2.8.25v2.8.26v2.8.27v2.8.28v2.8.29v2.8.3v2.8.30v2.8.31v2.8.32v2.8.33v2.8.34v2.8.35v2.8.36v2.8.37v2.8.38v2.8.39v2.8.4v2.8.40v2.8.41v2.8.42v2.8.43v2.8.44v2.8.45v2.8.46v2.8.47v2.8.48v2.8.5v2.8.6v2.8.7v2.8.8v2.8.9 |
2.8.49 |
symfony/formPackagist |
3.0.0 up to 3.4.20, plus listed versions v3.0.0v3.0.1v3.0.2v3.0.3v3.0.4 Show 45 moreShow lessv3.0.5v3.0.6v3.0.7v3.0.8v3.0.9v3.1.0v3.1.0-BETA1v3.1.0-RC1v3.1.1v3.1.10v3.1.2v3.1.3v3.1.4v3.1.5v3.1.6v3.1.7v3.1.8v3.1.9v3.2.0v3.2.0-BETA1v3.2.0-RC1v3.2.0-RC2v3.2.1v3.2.10v3.2.11v3.2.12v3.2.13v3.2.14v3.2.2v3.2.3v3.2.4v3.2.5v3.2.6v3.2.7v3.2.8v3.2.9v3.3.0v3.3.0-BETA1v3.3.0-RC1v3.3.1v3.3.10v3.3.11v3.3.12v3.3.13v3.3.14 |
3.4.20 |
symfony/formPackagist |
4.0.0 up to 4.0.15, plus listed versions v4.0.0v4.0.1v4.0.10v4.0.11v4.0.12 Show 10 moreShow lessv4.0.13v4.0.14v4.0.2v4.0.3v4.0.4v4.0.5v4.0.6v4.0.7v4.0.8v4.0.9 |
4.0.15 |
symfony/formPackagist |
4.1.0 up to 4.1.9, plus listed versions v4.1.0v4.1.1v4.1.2v4.1.3v4.1.4 Show 4 moreShow lessv4.1.5v4.1.6v4.1.7v4.1.8 |
4.1.9 |
symfony/formPackagist |
4.2.0 up to 4.2.1, plus listed versions v4.2.0 |
4.2.1 |
symfonyUbuntu:16.04:LTS |
All versions, plus listed versions 2.7.1+dfsg-12.7.5+dfsg-12.7.9+dfsg-12.7.9+dfsg-1ubuntu22.7.10-0ubuntu2 |
None known |
symfonyUbuntu:Pro:18.04:LTS |
All versions, plus listed versions 2.8.7+dfsg-1.3ubuntu13.4.3+dfsg-1ubuntu43.4.6+dfsg-13.4.6+dfsg-1ubuntu0.13.4.6+dfsg-1ubuntu0.1+esm13.4.6+dfsg-1ubuntu0.1+esm2 |
None known |
History
| Recorded | Changed | Sources |
|---|---|---|
| affected, facts | ||
| aliases | EUVD | |
| first indexed | CVE List, GitHub Advisories, NVD, OSV |
Dates are when Every CVE recorded each change. Upstream dates may differ.
In short
CVE-2018-19789 is a medium vulnerability (CVSS 5.3) in Sensiolabs Symfony, published December 18, 2018. No source lists public exploit code. EPSS puts the chance of exploitation in the next 30 days at 3.59%, the 89th percentile. Fixed in symfony/symfony 2.7.50.
References
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/OA4WVFN5FYPIXAPLWZI6N425JHHDSWAZ
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/4TD3E7FZIXLVFG3SMFJPDEKPZ26TJOW7
securityfocus.com/bid/106249
symfony.com/blog/cve-2018-19789-disclosure-of-uploaded-files-full-path
lists.debian.org/debian-lts-announce/2019/03/msg00009.html
lists.fedoraproject.org/archives/list/package-announce%40lists.fedoraproject.org/message/JZMRJ7VTHCY5AZK24G4QGX36RLUDTDKE
Show 16 moreShow less
debian.org/security/2019/dsa-4441
seclists.org/bugtraq/2019/May/21
nvd.nist.gov/vuln/detail/CVE-2018-19789
lists.fedoraproject.org/archives/list/[email protected]/message/4TD3E7FZIXLVFG3SMFJPDEKPZ26TJOW7
lists.fedoraproject.org/archives/list/[email protected]/message/JZMRJ7VTHCY5AZK24G4QGX36RLUDTDKE
lists.fedoraproject.org/archives/list/[email protected]/message/OA4WVFN5FYPIXAPLWZI6N425JHHDSWAZ
web.archive.org/web/20210124224817/http://www.securityfocus.com/bid/106249
github.com/symfony/symfony/commit/b65e6f1a47b68f2713b60cdac9cc3a4af62a2d1c
github.com/FriendsOfPHP/security-advisories/blob/master/symfony/form/CVE-2018-19789.yaml
github.com/FriendsOfPHP/security-advisories/blob/master/symfony/symfony/CVE-2018-19789.yaml
symfony.com/cve-2018-19789
github.com/advisories/GHSA-x3cf-w64x-4cp2
security-tracker.debian.org/tracker/CVE-2018-19789
github.com/symfony/symfony
ubuntu.com/security/CVE-2018-19789
cve.org/CVERecord?id=CVE-2018-19789
Left out here: 76 versions. The JSON record has them.