Perl up to 5.24.2/5.26.0 win32/perlhost.h CPerlHost::Add Environment Variable memory corruption
CVSS Meta Temp Score | Current Exploit Price (≈) | CTI Interest Score |
---|---|---|
8.2 | $0-$5k | 0.06 |
Summary
A vulnerability classified as critical has been found in Perl up to 5.24.2/5.26.0. This affects the function CPerlHost::Add
of the file win32/perlhost.h. The manipulation as part of Environment Variable leads to memory corruption.
This vulnerability is uniquely identified as CVE-2017-12814. It is possible to initiate the attack remotely. There is no exploit available.
It is recommended to apply a patch to fix this issue.
If you want to get best quality of vulnerability data, you may have to visit VulDB.
Details
A vulnerability was found in Perl up to 5.24.2/5.26.0 (Programming Language Software). It has been rated as critical. Affected by this issue is the function CPerlHost::Add
of the file win32/perlhost.h. The manipulation as part of a Environment Variable leads to a memory corruption vulnerability. Using CWE to declare the problem leads to CWE-119. The product performs operations on a memory buffer, but it can read from or write to a memory location that is outside of the intended boundary of the buffer. Impacted is confidentiality, integrity, and availability. CVE summarizes:
Stack-based buffer overflow in the CPerlHost::Add method in win32/perlhost.h in Perl before 5.24.3-RC1 and 5.26.x before 5.26.1-RC1 on Windows allows attackers to execute arbitrary code via a long environment variable.
The bug was discovered 09/15/2017. The weakness was presented 09/28/2017 as confirmed git commit (GIT Repository). The advisory is available at perl5.git.perl.org. This vulnerability is handled as CVE-2017-12814 since 08/11/2017. The attack may be launched remotely. No form of authentication is required for exploitation. Technical details are known, but there is no available exploit.
The vulnerability was handled as a non-public zero-day exploit for at least 9 days. During that time the estimated underground price was around $0-$5k. The vulnerability scanner Nessus provides a plugin with the ID 103442 (FreeBSD : perl -- multiple vulnerabilities (d9e82328-a129-11e7-987e-4f174049b30a)), which helps to determine the existence of the flaw in a target environment. It is assigned to the family FreeBSD Local Security Checks and running in the context l.
Upgrading to version 5.24.3-RC1 or 5.26.1-RC1 eliminates this vulnerability. Applying a patch is able to eliminate this problem. The bugfix is ready for download at perl5.git.perl.org. The best possible mitigation is suggested to be patching the affected component. A possible mitigation has been published before and not just after the disclosure of the vulnerability.
The vulnerability is also documented in the databases at Tenable (103442) and SecurityFocus (BID 101051†). If you want to get best quality of vulnerability data, you may have to visit VulDB.
Product
Type
Name
Version
- 5.0
- 5.1
- 5.2
- 5.3
- 5.4
- 5.5
- 5.6
- 5.7
- 5.8
- 5.9
- 5.10
- 5.11
- 5.12
- 5.13
- 5.14
- 5.15
- 5.16
- 5.17
- 5.18
- 5.19
- 5.20
- 5.21
- 5.22
- 5.23
- 5.24
- 5.24.0
- 5.24.1
- 5.24.2
- 5.25
- 5.26.0
License
CPE 2.3
CPE 2.2
CVSSv4
VulDB Vector: 🔍VulDB Reliability: 🔍
CVSSv3
VulDB Meta Base Score: 8.5VulDB Meta Temp Score: 8.4
VulDB Base Score: 7.3
VulDB Temp Score: 7.0
VulDB Vector: 🔍
VulDB Reliability: 🔍
NVD Base Score: 9.8
NVD Vector: 🔍
CVSSv2
AV | AC | Au | C | I | A |
---|---|---|---|---|---|
💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
💳 | 💳 | 💳 | 💳 | 💳 | 💳 |
Vector | Complexity | Authentication | Confidentiality | Integrity | Availability |
---|---|---|---|---|---|
unlock | unlock | unlock | unlock | unlock | unlock |
unlock | unlock | unlock | unlock | unlock | unlock |
unlock | unlock | unlock | unlock | unlock | unlock |
VulDB Base Score: 🔍
VulDB Temp Score: 🔍
VulDB Reliability: 🔍
NVD Base Score: 🔍
Exploiting
Class: Memory corruptionCWE: CWE-119
CAPEC: 🔍
ATT&CK: 🔍
Local: No
Remote: Yes
Availability: 🔍
Status: Not defined
EPSS Score: 🔍
EPSS Percentile: 🔍
Price Prediction: 🔍
Current Price Estimation: 🔍
0-Day | unlock | unlock | unlock | unlock |
---|---|---|---|---|
Today | unlock | unlock | unlock | unlock |
Nessus ID: 103442
Nessus Name: FreeBSD : perl -- multiple vulnerabilities (d9e82328-a129-11e7-987e-4f174049b30a)
Nessus File: 🔍
Nessus Risk: 🔍
Nessus Family: 🔍
Nessus Context: 🔍
Threat Intelligence
Interest: 🔍Active Actors: 🔍
Active APT Groups: 🔍
Countermeasures
Recommended: PatchStatus: 🔍
0-Day Time: 🔍
Upgrade: Perl 5.24.3-RC1/5.26.1-RC1
Patch: perl5.git.perl.org
Timeline
08/11/2017 🔍09/15/2017 🔍
09/24/2017 🔍
09/25/2017 🔍
09/27/2017 🔍
09/28/2017 🔍
09/28/2017 🔍
09/28/2017 🔍
01/14/2021 🔍
Sources
Advisory: perl5.git.perl.orgResearcher: John Leitch
Status: Confirmed
Confirmation: 🔍
CVE: CVE-2017-12814 (🔍)
GCVE (CVE): GCVE-0-2017-12814
GCVE (VulDB): GCVE-100-107198
SecurityFocus: 101051 - Perl CVE-2017-12814 Stack Based Buffer Overflow Vulnerability
Entry
Created: 09/28/2017 11:11Updated: 01/14/2021 15:36
Changes: 09/28/2017 11:11 (71), 11/20/2019 09:13 (5), 01/14/2021 15:36 (2)
Complete: 🔍
Cache ID: 216:1AE:103
No comments yet. Languages: en.
Please log in to comment.