{ "dataType": "CVE_RECORD", "dataVersion": "5.2", "cveMetadata": { "cveId": "CVE-2025-4748", "assignerOrgId": "6b3ad84c-e1a6-4bf7-a703-f496b71e49db", "state": "PUBLISHED", "assignerShortName": "EEF", "dateReserved": "2025-05-15T08:36:54.783Z", "datePublished": "2025-06-16T11:00:54.643Z", "dateUpdated": "2026-07-24T14:13:54.963Z" }, "containers": { "cna": { "affected": [ { "cpes": [ "cpe:2.3:a:erlang:erlang\\/otp:*:*:*:*:*:*:*:*" ], "defaultStatus": "unknown", "modules": [ "stdlib" ], "packageName": "stdlib", "packageURL": "pkg:otp/stdlib?repository_url=https:%2F%2Fgithub.com%2Ferlang%2Fotp&vcs_url=git%20https:%2F%2Fgithub.com%2Ferlang%2Fotp.git", "product": "OTP", "programFiles": [ "lib/stdlib/src/zip.erl" ], "programRoutines": [ { "name": "zip:unzip/1" }, { "name": "zip:unzip/2" }, { "name": "zip:extract/1" }, { "name": "zip:extract/2" } ], "repo": "https://github.com/erlang/otp", "vendor": "Erlang", "versions": [ { "changes": [ { "at": "7.0.1", "status": "unaffected" }, { "at": "6.2.2.1", "status": "unaffected" }, { "at": "5.2.3.4", "status": "unaffected" } ], "lessThan": "*", "status": "affected", "version": "2.0", "versionType": "otp" } ] }, { "collectionURL": "https://github.com", "cpes": [ "cpe:2.3:a:erlang:erlang\\/otp:*:*:*:*:*:*:*:*" ], "defaultStatus": "unknown", "modules": [ "stdlib" ], "packageName": "erlang/otp", "packageURL": "pkg:github/erlang/otp", "product": "OTP", "programFiles": [ "lib/stdlib/src/zip.erl" ], "programRoutines": [ { "name": "zip:unzip/1" }, { "name": "zip:unzip/2" }, { "name": "zip:extract/1" }, { "name": "zip:extract/2" } ], "repo": "https://github.com/erlang/otp", "vendor": "Erlang", "versions": [ { "changes": [ { "at": "28.0.1", "status": "unaffected" }, { "at": "27.3.4.1", "status": "unaffected" }, { "at": "26.2.5.13", "status": "unaffected" } ], "lessThan": "*", "status": "affected", "version": "17.0", "versionType": "otp" }, { "changes": [ { "at": "d9454dbccbaaad4b8796095c8e653b71b066dfaf", "status": "unaffected" }, { "at": "9b7b5431260e05a16eec3ecd530a232d0995d932", "status": "unaffected" }, { "at": "0ac548b57c0491196c27e39518b5f6acf9326c1e", "status": "unaffected" } ], "lessThan": "*", "status": "affected", "version": "07b8f441ca711f9812fad9e9115bab3c3aa92f79", "versionType": "git" } ] } ], "cpeApplicability": [ { "nodes": [ { "cpeMatch": [ { "criteria": "cpe:2.3:a:erlang:erlang\\/otp:*:*:*:*:*:*:*:*", "versionEndExcluding": "26.2.5.13", "vulnerable": true }, { "criteria": "cpe:2.3:a:erlang:erlang\\/otp:*:*:*:*:*:*:*:*", "versionEndExcluding": "27.3.4.1", "versionStartIncluding": "27.0", "vulnerable": true }, { "criteria": "cpe:2.3:a:erlang:erlang\\/otp:*:*:*:*:*:*:*:*", "versionEndExcluding": "28.0.1", "versionStartIncluding": "28.0", "vulnerable": true } ], "negate": false, "operator": "OR" } ], "operator": "AND" } ], "credits": [ { "lang": "en", "type": "finder", "value": "Wander Nauta" }, { "lang": "en", "type": "remediation developer", "value": "Lukas Backström" }, { "lang": "en", "type": "remediation reviewer", "value": "Björn Gustavsson" } ], "descriptions": [ { "lang": "en", "supportingMedia": [ { "base64": false, "type": "text/html", "value": "Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Erlang OTP (stdlib modules) allows Absolute Path Traversal, File Manipulation.

This vulnerability is associated with program files lib/stdlib/src/zip.erl and program routines zip:unzip/1, zip:unzip/2, zip:extract/1, zip:extract/2 unless the memory option is passed.

This issue affects OTP from OTP 17.0 before OTP 28.0.1, OTP 27.3.4.1 and OTP 26.2.5.13, corresponding to stdlib from 2.0 before 7.0.1, 6.2.2.1 and 5.2.3.4.

" } ], "value": "Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal') vulnerability in Erlang OTP (stdlib modules) allows Absolute Path Traversal, File Manipulation. This vulnerability is associated with program files lib/stdlib/src/zip.erl and program routines zip:unzip/1, zip:unzip/2, zip:extract/1, zip:extract/2 unless the memory option is passed.\n\nThis issue affects OTP from OTP 17.0 before OTP 28.0.1, OTP 27.3.4.1 and OTP 26.2.5.13, corresponding to stdlib from 2.0 before 7.0.1, 6.2.2.1 and 5.2.3.4." } ], "impacts": [ { "capecId": "CAPEC-597", "descriptions": [ { "lang": "en", "value": "CAPEC-597 Absolute Path Traversal" } ] }, { "capecId": "CAPEC-165", "descriptions": [ { "lang": "en", "value": "CAPEC-165 File Manipulation" } ] } ], "metrics": [ { "cvssV4_0": { "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "Safety": "NOT_DEFINED", "attackComplexity": "LOW", "attackRequirements": "NONE", "attackVector": "LOCAL", "baseScore": 4.8, "baseSeverity": "MEDIUM", "privilegesRequired": "NONE", "providerUrgency": "NOT_DEFINED", "subAvailabilityImpact": "LOW", "subConfidentialityImpact": "NONE", "subIntegrityImpact": "LOW", "userInteraction": "PASSIVE", "valueDensity": "NOT_DEFINED", "vectorString": "CVSS:4.0/AV:L/AC:L/AT:N/PR:N/UI:P/VC:N/VI:L/VA:L/SC:N/SI:L/SA:L", "version": "4.0", "vulnAvailabilityImpact": "LOW", "vulnConfidentialityImpact": "NONE", "vulnIntegrityImpact": "LOW", "vulnerabilityResponseEffort": "NOT_DEFINED" }, "format": "CVSS", "scenarios": [ { "lang": "en", "value": "GENERAL" } ] } ], "problemTypes": [ { "descriptions": [ { "cweId": "CWE-22", "description": "CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')", "lang": "en", "type": "CWE" } ] } ], "providerMetadata": { "orgId": "6b3ad84c-e1a6-4bf7-a703-f496b71e49db", "shortName": "EEF", "dateUpdated": "2026-07-24T14:13:54.963Z" }, "references": [ { "tags": [ "vendor-advisory", "related" ], "url": "https://github.com/erlang/otp/security/advisories/GHSA-9g37-pgj9-wrhc" }, { "tags": [ "related" ], "url": "https://cna.erlef.org/cves/CVE-2025-4748.html" }, { "tags": [ "related" ], "url": "https://osv.dev/vulnerability/EEF-CVE-2025-4748" }, { "tags": [ "x_version-scheme" ], "url": "https://www.erlang.org/doc/system/versions.html#order-of-versions" }, { "tags": [ "patch" ], "url": "https://github.com/erlang/otp/pull/9941" }, { "tags": [ "patch" ], "url": "https://github.com/erlang/otp/commit/5a55feec10c9b69189d56723d8f237afa58d5d4f" }, { "tags": [ "patch" ], "url": "https://github.com/erlang/otp/commit/ba2f2bc5f45fcfd2d6201ba07990a678bbf4cc8f" }, { "tags": [ "patch" ], "url": "https://github.com/erlang/otp/commit/578d4001575aa7647ea1efd4b2b7e3afadcc99a5" } ], "source": { "discovery": "EXTERNAL" }, "title": "Absolute path traversal in zip:unzip/1,2", "workarounds": [ { "lang": "en", "supportingMedia": [ { "base64": false, "type": "text/html", "value": "You can use zip:list_dir/1 on the archive and verify that no files contain absolute paths before extracting the archive to disk.
" } ], "value": "You can use zip:list_dir/1 on the archive and verify that no files contain absolute paths before extracting the archive to disk." } ], "x_generator": { "engine": "Vulnogram 0.2.0" } }, "adp": [ { "metrics": [ { "other": { "type": "ssvc", "content": { "timestamp": "2025-06-16T15:10:47.019511Z", "id": "CVE-2025-4748", "options": [ { "Exploitation": "none" }, { "Automatable": "yes" }, { "Technical Impact": "partial" } ], "role": "CISA Coordinator", "version": "2.0.3" } } } ], "title": "CISA ADP Vulnrichment", "providerMetadata": { "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0", "shortName": "CISA-ADP", "dateUpdated": "2025-06-16T15:33:34.557Z" } }, { "title": "CVE Program Container", "references": [ { "url": "http://www.openwall.com/lists/oss-security/2025/06/16/5" } ], "providerMetadata": { "orgId": "af854a3a-2127-422b-91ae-364da2661108", "shortName": "CVE", "dateUpdated": "2025-06-16T20:03:21.484Z" } } ] } }