{"schemaVersion":3,"id":"CVE-2025-14728","aliases":[],"status":"published","duplicateOf":null,"title":"Rapid7 Velociraptor Directory Traversal Vulnerability","description":"Rapid7 Velociraptor versions before 0.75.6 contain a directory traversal issue on Linux servers that allows a rogue client to upload a file which is written outside the datastore directory. Velociraptor is normally only allowed to write in the datastore directory. The issue occurs due to insufficient sanitization of directory names which end with a \".\", only encoding the final \".\" AS \"%2E\".\n\n\nAlthough files can be written to incorrect locations, the containing directory must end with \"%2E\". This limits the impact of this vulnerability, and prevents it from overwriting critical files.","dates":{"published":"2025-12-29T19:04:27.820Z","modified":"2025-12-30T22:26:47.316Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":6.8,"severity":"medium","version":"3.1","versionLabel":"v3.1","source":"CVE.org","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N","computed":false,"selection":"backend-summary"},"metrics":[{"version":"3.1","versionLabel":"v3.1","source":"CVE.org","score":6.8,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N","exploitability":null,"impact":null,"computed":false},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":6.8,"severity":"medium","vector":"CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:C/C:N/I:H/A:N","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.0056,"percentile":0.45843,"severity":"low","asOf":"2026-10-22T00:00:00.000Z","change":{"pp":0.012000000000000031,"baselineDate":"2026-09-22T00:00:00.000Z","baselineScore":0.00548},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.0056,"percentile":0.45843}],"last30":[{"date":"2026-09-22T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00548,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.0056,"percentile":null},{"date":"2026-10-22T00:00:00.000Z","score":0.0056,"percentile":0.45843}]},"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":[{"id":"REF_28701B88B133461B","name":"Exploit Reference (docs.velociraptor.app)","source":"reference","url":"https://docs.velociraptor.app/announcements/advisories/cve-2025-14728/","maturity":"unknown","reliabilityScore":0.2,"verified":false,"type":null,"platforms":[],"requiresAuth":null,"exploitdb":null,"metasploit":null}],"exploitCount":1,"weaknesses":[{"id":"CWE-22","name":"Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')","description":"The product uses external input to construct a pathname that is intended to identify a file or directory that is located underneath a restricted parent directory, but the product does not properly neutralize special elements within the pathname that can cause the pathname to resolve to a location that is outside of the restricted directory.","type":"weakness","status":"Stable","abstraction":"Base","likelihoodOfExploit":"High","url":"https://cwe.mitre.org/data/definitions/22.html"}],"affected":[{"vendor":"rapid7","product":"velociraptor","name":"velociraptor","label":"velociraptor","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 0.75.6","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 0.75.6","eol":null,"hubHref":"/vendor/rapid7/velociraptor"}],"affectedCount":1,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://docs.velociraptor.app/announcements/advisories/cve-2025-14728/","label":"docs.velociraptor.app/announcements/advisories/cve-2025-14728/","hostname":"docs.velociraptor.app","tags":["Exploit","Patch","Vendor Advisory"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2025-12-29T19:04:27.820Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2025-12-30T22:26:47.316Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":37,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-22T17:58:31.247Z","stale":false,"partial":false}}