CVE-2026-24739

6.3 MEDIUM

📋 TL;DR

This vulnerability in Symfony's Process component on Windows allows argument corruption when spawning native executables from MSYS2-based shells like Git Bash. It affects applications that use Symfony Process with user-controlled paths containing '=' characters, potentially leading to unintended file operations including data deletion. Systems running affected Symfony versions on Windows with MSYS2 environments are at risk.

💻 Affected Systems

Products:
  • Symfony Process component
Versions: All versions prior to 5.4.51, 6.4.33, 7.3.11, 7.4.5, and 8.0.5
Operating Systems: Windows with MSYS2-based shells (Git Bash, MSYS2)
Default Config Vulnerable: ✅ No
Notes: Only vulnerable when PHP runs from MSYS2 shells and spawns native Windows executables with path arguments containing '='

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

Complete deletion of directory contents or drive data when file-management commands receive corrupted path arguments

🟠

Likely Case

File corruption or unintended file operations on specific paths containing '=' characters

🟢

If Mitigated

No impact if not using MSYS2 shells or if paths don't contain special characters

🌐 Internet-Facing: LOW - Requires specific Windows/MSYS2 environment and user-controlled path input
🏢 Internal Only: MEDIUM - Development environments and CI/CD pipelines using Git Bash on Windows could be affected

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: MEDIUM

Requires specific environment setup and ability to influence path arguments passed to Symfony Process

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 5.4.51, 6.4.33, 7.3.11, 7.4.5, or 8.0.5 depending on Symfony version

Vendor Advisory: https://github.com/symfony/symfony/security/advisories/GHSA-r39x-jcww-82v6

Restart Required: No

Instructions:

1. Identify your Symfony version. 2. Update to patched version via composer: 'composer update symfony/process'. 3. Verify update with 'composer show symfony/process'

🔧 Temporary Workarounds

Avoid MSYS2 shells

windows

Run PHP and tooling from cmd.exe or PowerShell instead of Git Bash/MSYS2

Configure MSYS2 argument conversion

windows

Set environment variable to exclude argument conversion for specific commands

set MSYS2_ARG_CONV_EXCL=*

Avoid special characters in paths

windows

Ensure paths passed to Symfony Process don't contain '=' or other MSYS2-sensitive characters

🧯 If You Can't Patch

  • Switch to cmd.exe or PowerShell for all Symfony Process operations
  • Implement input validation to reject paths containing '=' characters

🔍 How to Verify

Check if Vulnerable:

Check if running Symfony Process on Windows from Git Bash/MSYS2 with version below patched releases

Check Version:

composer show symfony/process | grep versions

Verify Fix Applied:

Verify Symfony Process version is 5.4.51+, 6.4.33+, 7.3.11+, 7.4.5+, or 8.0.5+

📡 Detection & Monitoring

Log Indicators:

  • Unexpected file deletion logs
  • Process execution errors with path arguments containing '='

SIEM Query:

Process execution where command contains 'rmdir', 'del', or similar with paths containing '=' characters on Windows systems

🔗 References

📤 Share & Export