{"id":"CVE-2026-54587","summary":"mport directory asset installation is vulnerable to symlink and path traversal races","details":"mport is the MidnightBSD Package Manager. Prior to 2.7.8, directory assets handled as ASSET_DIR or ASSET_DIR_OWNER_MODE in libmport/bundle_read_install_pkg.c used path-based mport_mkdirp(), ownership, and permission operations. A local attacker able to modify part of the target installation tree could use dot-dot traversal or substitute symlinks during privileged package installation, causing directory creation or attribute changes to affect attacker-selected paths outside the intended package directories. This issue is fixed in version 2.7.8.","aliases":["GHSA-f69w-h3gh-r86p"],"modified":"2026-09-19T08:08:52.356098Z","published":"2026-09-17T16:56:33.174Z","database_specific":{"cna_assigner":"GitHub_M","cwe_ids":["CWE-367","CWE-59"],"osv_generated_from":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54587.json"},"references":[{"type":"WEB","url":"https://github.com/MidnightBSD/mport/releases/tag/2.7.8"},{"type":"ADVISORY","url":"https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/54xxx/CVE-2026-54587.json"},{"type":"ADVISORY","url":"https://github.com/MidnightBSD/mport/security/advisories/GHSA-f69w-h3gh-r86p"},{"type":"ADVISORY","url":"https://nvd.nist.gov/vuln/detail/CVE-2026-54587"},{"type":"FIX","url":"https://github.com/MidnightBSD/mport/commit/a4fa996df1fbebeff3691e1b512c807b5f414b5d"},{"type":"FIX","url":"https://github.com/MidnightBSD/mport/pull/119"}],"affected":[{"ranges":[{"type":"GIT","repo":"https://github.com/midnightbsd/mport","events":[{"introduced":"0"},{"fixed":"a4fa996df1fbebeff3691e1b512c807b5f414b5d"},{"fixed":"899c8fe2d3ceb25d899e70dbd0c7744b7d7a0946"}],"database_specific":{"extracted_events":[{"introduced":"0"},{"fixed":"2.7.8"}],"source":["AFFECTED_FIELD","REFERENCES"]}}],"versions":["2.7.6","2.7.5","2.7.4","2.7.3","2.7.2","2.7.1","2.7.0","2.6.8","2.6.7","2.6.5","2.6.4","2.6.3","2.6.2","2.6.1","2.6.0","2.5.1","2.5.0","2.4.8","2.4.7","2.4.6","2.4.5","2.4.4","2.4.3","2.4.1","2.4.0","2.3.0","2.2.9.1","2.2.9","2.2.8","2.2.7","2.2.6","2.2.5","2.2.4","2.2.3","2.2.2","2.2.1","2.2.0","2.1.9","2.1.8","2.1.7","2.1.6","2.1.5","2.1.4","2.1.3","2.1.2","2.1.1","2.1.0","2.0.9","2.0.8","2.0.7","2.0.6","2.0.5","2.0.2","2.0.1","2.0"],"database_specific":{"vanir_signatures":[{"id":"CVE-2026-54587-58880e31","signature_type":"Function","signature_version":"v1","source":"https://github.com/midnightbsd/mport/commit/a4fa996df1fbebeff3691e1b512c807b5f414b5d","target":{"file":"libmport/bundle_read_install_pkg.c","function":"do_actual_install"},"deprecated":false,"digest":{"function_hash":"273879649370528359633369040355302077908","length":12968}},{"signature_version":"v1","source":"https://github.com/midnightbsd/mport/commit/a4fa996df1fbebeff3691e1b512c807b5f414b5d","target":{"file":"libmport/bundle_read_install_pkg.c"},"deprecated":false,"digest":{"threshold":0.9,"line_hashes":["247589987726746325858252768047395901414","85110944689467071390478369938953128540","334059552197735911674953748933162727719","84418276495848716430697223631848291592","251513046928623140930349664259743105005","15923453367996652233543667415127648083","122581282915587375511083626131924869387","136147306971487474313684887000585263042","27801033883486089296011638027625808254","281477884607626951301336993794825079163","283309439026388425450719454236007727371","310831995576328460998020759664515884830","322447970313839566193073802391293415801","288153280451947193788201899312369862403","333276549649370220790586416937720199888","303581277548607180783490328410836094122","228382518862607039602848239494656585631","261830825737066141554685128340047761038","182662033553058823993814735534426391851","111220226908254604981781534264361306637","28728194287592324071433920368470177140","89691815881692885517821483301613564084","10481309939113439731867500159543157812","237114357607854133385642174660608532861","55393058762042666392671566907043646499","290821109420824853884881891095429503570","7975601657896050877704190418938187467","322331822835267518387682007855959913698","77692840770860585544137683042439545819","177082296658238902279550327830442667333","44280046826561879818022012171412995714","80099769382666814590990311215882208258","248770153739010248102458058064910045928","801816654788639718714790983926569436","156390700518445005167807330364786549564","256948144823956186102351014485720855517","223396170186950725190638946203071859535","319239402826866656831492415475652350547","162835751527833135751737816012037722339","310530348002095143863049728034417114383","43727686388175511964213996514301625459","217836203986792809553910548989358126308","203505401932696560661441172690544946090","75656759996711869196438986471410762113","201777676631909288720881109354701366482","196642594347753815883493935738550820366","6977453662715580935295809342697262178","255701934642260781679348721702993287131","224750448461119420259956997721934842462","171175313986874095191569904631007111415","323467244543209055678315655484099312459","280688358876419210757182425082319654804","30394221225023563769882583736654665247"]},"id":"CVE-2026-54587-d56ec383","signature_type":"Line"}],"source":"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-54587.json","vanir_signatures_modified":"2026-09-19T08:08:52Z"}}],"schema_version":"1.9.0","severity":[{"type":"CVSS_V4","score":"CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N"}]}