{"schemaVersion":3,"id":"CVE-2026-54581","aliases":[],"status":"published","duplicateOf":null,"title":null,"description":"mport is the MidnightBSD Package Manager. Prior to 2.7.8, the mport_fetch_bootstrap_index() function in libmport/fetch.c could return success when bootstrap index hash verification encountered a missing or invalid hash because the failure path did not preserve a fatal result. A network attacker or compromised mirror able to alter bootstrap index content or its transport path could therefore cause mport to proceed with an unverified or tampered bootstrap package index. This issue is fixed in version 2.7.8.","dates":{"published":"2026-09-17T16:45:37.688Z","modified":"2026-09-17T19:17:19.437Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":8.3,"severity":"high","version":"4.0","versionLabel":"v4.0","source":"CVE.org","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N","computed":false,"selection":"backend-summary"},"metrics":[{"version":"4.0","versionLabel":"v4.0","source":"CVE.org","score":8.3,"severity":"high","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N","exploitability":null,"impact":null,"computed":false},{"version":"4.0","versionLabel":"v4.0","source":"NVD","score":8.3,"severity":"high","vector":"CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:H/VA:L/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","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00218,"percentile":0.115,"severity":"low","asOf":"2026-10-19T00:00:00.000Z","change":{"pp":0.009000000000000024,"baselineDate":"2026-09-19T00:00:00.000Z","baselineScore":0.00209},"history":[{"date":"2026-09-18T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00218,"percentile":0.115}],"last30":[{"date":"2026-09-19T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00209,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00218,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00218,"percentile":0.115}]},"kev":{"state":"not-listed","entries":[],"listedCount":0,"totalCatalogs":3,"catalogs":[{"source":"cisa","label":"CISA","listed":false,"entry":null},{"source":"enisa","label":"ENISA","listed":false,"entry":null},{"source":"circl","label":"CIRCL","listed":false,"entry":null}]},"ransomware":{"state":"none-recorded","sources":[]},"exploits":[],"exploitCount":0,"weaknesses":[{"id":"CWE-345","name":"Insufficient Verification of Data Authenticity","description":"The product does not sufficiently verify the origin or authenticity of data, in a way that causes it to accept invalid data.","type":"weakness","status":"Draft","abstraction":"Class","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/345.html"},{"id":"CWE-347","name":"Improper Verification of Cryptographic Signature","description":"The product does not verify, or incorrectly verifies, the cryptographic signature for data.","type":"weakness","status":"Draft","abstraction":"Base","likelihoodOfExploit":null,"url":"https://cwe.mitre.org/data/definitions/347.html"}],"affected":[{"vendor":"midnightbsd","product":"mport","name":"mport","label":"mport","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 2.7.8","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 2.7.8","eol":null,"hubHref":"/vendor/midnightbsd/mport"}],"affectedCount":1,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://github.com/MidnightBSD/mport/security/advisories/GHSA-895r-rv8j-7g23","label":"github.com/MidnightBSD/mport/security/advisories/GHSA-895r-rv8j-7g23","hostname":"github.com","tags":["X Refsource CONFIRM"]},{"url":"https://github.com/MidnightBSD/mport/pull/134","label":"github.com/MidnightBSD/mport/pull/134","hostname":"github.com","tags":["X Refsource MISC"]},{"url":"https://github.com/MidnightBSD/mport/pull/135","label":"github.com/MidnightBSD/mport/pull/135","hostname":"github.com","tags":["X Refsource MISC"]},{"url":"https://github.com/MidnightBSD/mport/commit/64ebf3f60dc3df72a3b47fbb20a7f8072c0a0f5e","label":"github.com/MidnightBSD/mport/commit/64ebf3f60dc3df72a3b47fbb20a7f8072c0a0f5e","hostname":"github.com","tags":["X Refsource MISC"]},{"url":"https://github.com/MidnightBSD/mport/commit/b3e11ba078351402082a881209ee6fda5d332e3d","label":"github.com/MidnightBSD/mport/commit/b3e11ba078351402082a881209ee6fda5d332e3d","hostname":"github.com","tags":["X Refsource MISC"]},{"url":"https://github.com/MidnightBSD/mport/releases/tag/2.7.8","label":"github.com/MidnightBSD/mport/releases/tag/2.7.8","hostname":"github.com","tags":["X Refsource MISC"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-09-17T16:45:37.688Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-09-17T19:17:19.437Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":33,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-20T05:37:25.892Z","stale":false,"partial":false}}