LiveActive security incident?Get immediate response
CVE Record

CVE-2019-11044: link() silently truncates after a null byte on Windows

In PHP versions 7.2.x below 7.2.26, 7.3.x below 7.3.13 and 7.4.0 on Windows, PHP link() function accepts filenames with embedded \0 byte and treats them as terminating at that byte. This could lead to security vulnerabilities, e.g. in applications checking paths that the code is allowed to access.

LowCVSS 3.7Not KEV-listedUpdated
Glexia's TakeAutomated analysislow

Security readout for executives and security teams

Plain-English summary

This is a low-severity PHP-on-Windows issue. Some affected PHP versions could treat a filename as ending at an embedded null byte when using link(). If an application checks one path but PHP operates on the truncated path, a security boundary may be bypassed in narrow conditions.

Executive priority

Treat as routine remediation unless a business-critical Windows PHP application handles untrusted file paths. Fold into normal patching and code review rather than emergency response.

Technical view

On Windows, PHP link() in 7.2.x before 7.2.26, 7.3.x before 7.3.13, and 7.4.0 accepts embedded \0 in filenames and truncates at that byte. The stated impact is potential path-check bypass with low confidentiality impact and high attack complexity.

Likely exposure

Exposure is most likely in Windows-hosted PHP applications that call link() on attacker-influenced filenames and rely on application path allowlisting or validation before that call.

Exploitation context

The provided sources do not show active exploitation, and CISA KEV status is false. Practical exploitation appears context-dependent because an application must expose link() behavior through controllable path input.

Researcher notes

The core weakness is CWE-170 style null termination mismatch. Validate whether the application checks the full string while PHP/Windows acts on the truncated path. Avoid assuming impact without a reachable link() call and attacker-controlled filename.

Mitigation direction

  • Upgrade affected Windows PHP runtimes to fixed vendor versions.
  • Prioritize systems running PHP 7.2.x, 7.3.x, or 7.4.0 on Windows.
  • Reject embedded null bytes before filesystem operations.
  • Review application authorization checks around path handling and link().
  • Check PHP, distribution, and appliance vendor advisories for package-specific guidance.

Validation and detection

  • Inventory PHP versions on Windows servers and developer-hosted services.
  • Search code for link() usage with user-controlled path inputs.
  • Confirm production runtimes are not below 7.2.26 or 7.3.13, or 7.4.0.
  • Review logs and tests for rejected filenames containing embedded null bytes.
Prepared
Confidence
high
Sources
7

Generated from the cited source records. This long-tail analysis has not been individually reviewed by a named human.

Potential ATT&CK relevance

Conservative CVE-to-ATT&CK context

These mappings and lookup hints may be relevant to the vulnerability behavior, CWE, affected product, or exposure path. Glexia-inferred context is not an official MITRE, ATT&CK, CWE, or CVE Program mapping.

ATT&CK lookup starting points

Use these exact CWE pages and searches to review the Glexia ATT&CK library from this CVE's weakness and description context.

cwe · low confidence lookup

CWE-170: Exact CWE lookup

Use the exact CWE identifier as the starting point before reviewing related ATT&CK behavior. Open the exact CWE lookup page first, then review the ATT&CK searches from that MITRE weakness context. This is a Glexia lookup hint, not an official ATT&CK mapping.

Open ATT&CK lookup
cve · low confidence lookup

CVE-2019-11044 mapping review

Open the CVE-to-ATT&CK bridge for reviewed, inferred, or future official mappings tied to this CVE.

Open ATT&CK lookup
Vulnerability profileCVE Program record
Severity
Low
CVSS
3.7 (3.1)
Known Exploited
No
Published

Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

Official CVE source material

CNA and ADP enrichment extracted from CVE v5

These fields come from the CVE record and ADP containers, not from Glexia's Take. They preserve time-varying source decisions such as CISA SSVC, KEV status, CVSS metrics, and provider references.

1CVSS vectors
0Timeline events
0ADP providers
6Source links

CVSS vector scores

1 official score

We collect every scored CVSS vector available in the official CNA and ADP containers. When more than one version is present, the table keeps the source vectors side by side instead of collapsing them into the highest score.

ScoreVersionSeverityVectorExploitImpactSource
3.7CVSS 3.1LowCVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N2.21.4Primary CVE score

Vulnerability scoring details

Base CVSS 3.1 score

3.7Low
CVSS 3.1 vector shape for CVE-2019-11044Attack VectorAttack ComplexityPrivileges RequiredUser InteractionScopeConfidentiality ImpactIntegrity ImpactAvailability Impact

Vector: CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N

Attack Vector
NetworkAdjacentLocalPhysical
Attack Complexity
LowHigh
Privileges Required
NoneLowHigh
User Interaction
NoneRequired
Scope
ChangedUnchanged
Confidentiality Impact
HighLowNone
Integrity Impact
HighLowNone
Availability Impact
HighLowNone

Source materials

Affected products

Products and packages named in the record

VendorProductVersion / packageStatus
PHP GroupPHP7.2.x, 7.3.x, 7.4.xListed
Weakness

CWE details

CWE links open Glexia weakness intelligence pages with official CWE context, developer remediation guidance, and related CVE mappings.

CWE-170 · source CWE mapping

Improper Null Termination

Improper Null Termination represents a recurring weakness pattern that can create exploitable paths when design, validation, or implementation controls are missing.