CVE-2026-104025

Estado: AplazadaAlta (8.4)—
Gravedad8.4Alta · CVSS 4.0
Probabilidad de explotación0.16 %mayor que el 5 % de las CVE
Explotación activaNono figura en el catálogo de CISA
Exploit públicoNo conocidosin código público localizado

Recorrido de ruta (Path Traversal) (CWE-22) en la función execute_obj del visor de objetos de archivo (peach.pas) en PeaZip 11.2.0 y anteriores en Windows permite a un atacante que convenza a una víctima para previsualizar una entrada de un archivo manipulado mediante la acción "Preview with... -> Associated application" (Mayús+Ctrl+O) ejecutar un programa arbitrario ya presente en el sistema de la víctima, sin ningún cuadro de advertencia.

Leer descripción completaMostrar menos

La función valida únicamente outname (el directorio temporal propio de PeaZip) con checkfiledirname, mientras que la cadena que realmente se ejecuta es la concatenación outname+tempstring; tempstring se toma literalmente del nombre de la entrada del archivo (StringGridList.Cells[12,...]) y nunca se valida. checkfiledirname (list_utils.pas) rechaza los caracteres de control y reservados en el nombre de archivo, pero no realiza ninguna comprobación de contención de ".." en la ruta, por lo que una entrada llamada ../../../../Windows/System32/calc.exe escapa del directorio de extracción y se pasa a cp_open -> ShellExecuteW; el backend de extracción (7-Zip) elimina el recorrido de ruta, pero el módulo de apertura no. Además, el cuadro de confirmación de extensiones peligrosas SECEXTCONST solo está implementado en el manejador de doble clic (grid_obj_open) y no en esta ruta de previsualización, de modo que un ejecutable dentro de un archivo llega a ShellExecuteW sin aviso; y cuando el cuadro sí aparece, muestra el nombre visible de la entrada en lugar de la ruta resuelta que se ejecutará. Se demostró la ejecución arbitraria de código con una prueba de concepto contra compilaciones oficiales de PeaZip, confirmada en dos formatos de archivo (.zip y .tar) para demostrar que el defecto está en el tratamiento de rutas propio de PeaZip y no en un analizador de un único formato.

Traducción automática del texto original de NVD (en inglés).

CVSS

Puntuación base
8.4
Versión
4.0
Vector
CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X

Probabilidad de explotación (EPSS)

Probabilidad de explotación en los próximos 30 días
0.16 %
Percentil entre todas las CVEs puntuadas
5
Fecha de la puntuación
20/10/2026

EPSS (Exploit Prediction Scoring System, de FIRST) estima la probabilidad de que una vulnerabilidad sea explotada en 30 días. Complementa a CVSS (impacto) y a CISA KEV (explotación confirmada).

Técnicas ATT&CK

Cómo se explota esta vulnerabilidad y qué consigue el atacante, en el lenguaje de MITRE ATT&CK.

El vector UI:A exige que la víctima use 'Preview with... Associated application' sobre una entrada manipulada; ShellExecuteW ejecuta el programa indicado sin aviso (CWE-22).

Inferido por nuestro agente de análisis a partir de la descripción oficial, el vector CVSS y la CWE, y comprobado por un supervisor. Puede contener errores.

Mitigaciones ATT&CK que cubren estas técnicas

Tecnologías afectadas (1)

⚠ Inferidas por IA a partir de la descripción — NVD aún no ha analizado esta CVE; no son CPE verificados.

CWE

Referencias

Mostrar las 2 referencias

JSON original (NVD)

Mostrar
{
  "id": "CVE-2026-104025",
  "cveTags": [],
  "metrics": {
    "ssvcV203": [
      {
        "source": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
        "ssvcData": {
          "id": "CVE-2026-104025",
          "role": "CISA Coordinator",
          "options": [
            {
              "exploitation": "none"
            },
            {
              "automatable": "no"
            },
            {
              "technicalImpact": "total"
            }
          ],
          "version": "2.0.3",
          "timestamp": "2026-10-15T13:11:06.146482Z"
        }
      }
    ],
    "cvssMetricV40": [
      {
        "type": "Secondary",
        "source": "4daa8cea-433a-44bd-9456-53b127fc289a",
        "cvssData": {
          "Safety": "NOT_DEFINED",
          "version": "4.0",
          "Recovery": "NOT_DEFINED",
          "baseScore": 8.4,
          "Automatable": "NOT_DEFINED",
          "attackVector": "LOCAL",
          "baseSeverity": "HIGH",
          "valueDensity": "NOT_DEFINED",
          "vectorString": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:A/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X",
          "exploitMaturity": "NOT_DEFINED",
          "providerUrgency": "NOT_DEFINED",
          "userInteraction": "ACTIVE",
          "attackComplexity": "LOW",
          "attackRequirements": "NONE",
          "privilegesRequired": "NONE",
          "subIntegrityImpact": "NONE",
          "vulnIntegrityImpact": "HIGH",
          "integrityRequirement": "NOT_DEFINED",
          "modifiedAttackVector": "NOT_DEFINED",
          "subAvailabilityImpact": "NONE",
          "vulnAvailabilityImpact": "HIGH",
          "availabilityRequirement": "NOT_DEFINED",
          "modifiedUserInteraction": "NOT_DEFINED",
          "modifiedAttackComplexity": "NOT_DEFINED",
          "subConfidentialityImpact": "NONE",
          "vulnConfidentialityImpact": "HIGH",
          "confidentialityRequirement": "NOT_DEFINED",
          "modifiedAttackRequirements": "NOT_DEFINED",
          "modifiedPrivilegesRequired": "NOT_DEFINED",
          "modifiedSubIntegrityImpact": "NOT_DEFINED",
          "modifiedVulnIntegrityImpact": "NOT_DEFINED",
          "vulnerabilityResponseEffort": "NOT_DEFINED",
          "modifiedSubAvailabilityImpact": "NOT_DEFINED",
          "modifiedVulnAvailabilityImpact": "NOT_DEFINED",
          "modifiedSubConfidentialityImpact": "NOT_DEFINED",
          "modifiedVulnConfidentialityImpact": "NOT_DEFINED"
        }
      }
    ]
  },
  "affected": [
    {
      "source": "4daa8cea-433a-44bd-9456-53b127fc289a",
      "affectedData": [
        {
          "cpes": [
            "cpe:2.3:a:peazip:peazip:*:*:*:*:*:*:windows:*:*"
          ],
          "repo": "https://github.com/peazip/PeaZip",
          "vendor": "PeaZip",
          "modules": [
            "archive object preview/open (execute_obj in peach.pas)"
          ],
          "product": "PeaZip",
          "versions": [
            {
              "status": "affected",
              "version": "0",
              "lessThan": "11.3.0",
              "versionType": "semver"
            }
          ],
          "platforms": [
            "Windows"
          ],
          "programFiles": [
            "peazip-sources/dev/peach.pas",
            "peazip-sources/dev/list_utils.pas"
          ],
          "collectionURL": "https://github.com/peazip/PeaZip/releases",
          "defaultStatus": "unaffected",
          "programRoutines": [
            {
              "name": "execute_obj"
            },
            {
              "name": "checkfiledirname"
            }
          ]
        }
      ]
    }
  ],
  "published": "2026-10-15T13:17:10.617",
  "references": [
    {
      "url": "https://github.com/peazip/PeaZip/commit/009fc35530e26729863969eddf4c18f1b48331cf",
      "source": "4daa8cea-433a-44bd-9456-53b127fc289a"
    },
    {
      "url": "https://secur0.com/en/cna/cve-list/cve-2026-104025-path-traversal-in-peazip-object-preview",
      "source": "4daa8cea-433a-44bd-9456-53b127fc289a"
    }
  ],
  "vulnStatus": "Deferred",
  "weaknesses": [
    {
      "type": "Secondary",
      "source": "4daa8cea-433a-44bd-9456-53b127fc289a",
      "description": [
        {
          "lang": "en",
          "value": "CWE-22"
        },
        {
          "lang": "en",
          "value": "CWE-693"
        }
      ]
    }
  ],
  "descriptions": [
    {
      "lang": "en",
      "value": "Path Traversal (CWE-22) in the execute_obj function of the archive object viewer (peach.pas) in PeaZip 11.2.0 and earlier on Windows allows an attacker who convinces a victim to preview an entry of a crafted archive via the \"Preview with... -> Associated application\" action (Shift+Ctrl+O) to execute an arbitrary program already present on the victim's system, with no warning dialog. The function validates only outname (PeaZip's own temporary directory) with checkfiledirname, while the string actually executed is the concatenation outname+tempstring; tempstring is taken verbatim from the archive entry name (StringGridList.Cells[12,...]) and is never validated. checkfiledirname (list_utils.pas) rejects control and reserved characters in the file name but performs no \"..\" path-containment check, so an entry named ../../../../Windows/System32/calc.exe escapes the extraction directory and is passed to cp_open -> ShellExecuteW; the extracting backend (7-Zip) strips the traversal while the opener does not. In addition, the SECEXTCONST dangerous-extension confirmation prompt is implemented only in the double-click handler (grid_obj_open) and not on this preview route, so an executable inside an archive reaches ShellExecuteW unannounced, and where the prompt does fire it names the entry's display name rather than the resolved path that will run. Arbitrary code execution was demonstrated with a proof of concept against official PeaZip builds, confirmed on two archive formats (.zip and .tar) to show the defect is in PeaZip's own path handling and not in a single format parser."
    }
  ],
  "lastModified": "2026-10-16T19:56:15.773",
  "sourceIdentifier": "4daa8cea-433a-44bd-9456-53b127fc289a"
}