{"schemaVersion":3,"id":"CVE-2026-0651","aliases":[],"status":"published","duplicateOf":null,"title":null,"description":"A path traversal vulnerability was identified TP-Link Tapo C260 v1, D235 v1, C211 v2 and C520WS v2.6 within the HTTP server’s handling of GET requests. The server performs path normalization before fully decoding URL encoded input and falls back to using the raw path when normalization fails. An attacker can exploit this logic flaw by supplying crafted, URL encoded traversal sequences that bypass directory restrictions and allow access to files outside the intended web root.\n\nSuccessful exploitation may allow authenticated attackers to get disclosure of sensitive system files and credentials, while unauthenticated attackers may gain access to non-sensitive static assets.","dates":{"published":"2026-02-10T17:27:51.942Z","modified":"2026-08-04T17:33:56.675Z","reserved":null,"kevAdded":[],"kevDue":[]},"cvss":{"headline":{"score":7.8,"severity":"high","version":"3.1","versionLabel":"v3.1","source":"NVD","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","computed":false,"selection":"backend-summary"},"metrics":[{"version":"4.0","versionLabel":"v4.0","source":"CVE.org","score":6.9,"severity":"medium","vector":"CVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:L/SI:N/SA:N","exploitability":null,"impact":null,"computed":false},{"version":"4.0","versionLabel":"v4.0","source":"NVD","score":6.9,"severity":"medium","vector":"CVSS:4.0/AV:A/AC:L/AT:N/PR:L/UI:N/VC:H/VI:N/VA:N/SC:L/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},{"version":"3.1","versionLabel":"v3.1","source":"NVD","score":7.8,"severity":"high","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","exploitability":null,"impact":null,"computed":false}]},"epss":{"probability":0.00315,"percentile":0.23124,"severity":"low","asOf":"2026-10-21T00:00:00.000Z","change":{"pp":-0.003000000000000008,"baselineDate":"2026-09-21T00:00:00.000Z","baselineScore":0.00318},"history":[{"date":"2026-09-14T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-15T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-16T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-17T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-18T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-19T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-20T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-21T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00315,"percentile":0.23124}],"last30":[{"date":"2026-09-21T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-22T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-23T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-24T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-25T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-26T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-27T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-28T00:00:00.000Z","score":0.00318,"percentile":null},{"date":"2026-09-29T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-09-30T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-01T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-02T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-03T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-04T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-05T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-06T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-07T00:00:00.000Z","score":0.00301,"percentile":null},{"date":"2026-10-08T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-09T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-10T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-11T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-12T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-13T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-14T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-15T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-16T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-17T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-18T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-19T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-20T00:00:00.000Z","score":0.00315,"percentile":null},{"date":"2026-10-21T00:00:00.000Z","score":0.00315,"percentile":0.23124}]},"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-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":"tp link systems inc.","product":"tapo c211 v2","name":"Tapo C211 v2","label":"tapo c211 v2","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 1.5.4 Build 260702 Rel.7078n","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 1.5.4 Build 260702 Rel.7078n","eol":null,"hubHref":"/vendor/tp_link_systems_inc/tapo_c211_v2"},{"vendor":"tp link systems inc.","product":"tapo c520ws v2.6","name":"Tapo C520WS v2.6","label":"tapo c520ws v2.6","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 1.2.4 Build 260326 Rel.24666n","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 1.2.4 Build 260326 Rel.24666n","eol":null,"hubHref":"/vendor/tp_link_systems_inc/tapo_c520ws_v26"},{"vendor":"tp-link systems inc.","product":"tapo c260 v1","name":"Tapo C260 v1","label":"tapo c260 v1","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 1.1.9 Build 251226 Rel.55870n","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 1.1.9 Build 251226 Rel.55870n","eol":null,"hubHref":"/vendor/tp-link_systems_inc/tapo_c260_v1"},{"vendor":"tp-link systems inc.","product":"tapo d235 v1","name":"Tapo D235 v1","label":"tapo d235 v1","ecosystem":null,"cpePart":"a","purl":null,"purlType":null,"versions":[{"text":"< 1.2.2 Build 260210 Rel.27165n","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 1.2.2 Build 260210 Rel.27165n","eol":null,"hubHref":"/vendor/tp-link_systems_inc/tapo_d235_v1"},{"vendor":"tp-link","product":"tapo_c260_firmware","name":"tapo c260 firmware","label":"tapo_c260_firmware","ecosystem":null,"cpePart":"o","purl":null,"purlType":null,"versions":[{"text":"< 1.1.9","noFixRecorded":false,"fixedIn":null}],"versionsText":"< 1.1.9","eol":null,"hubHref":"/vendor/tp-link/tapo_c260"}],"affectedCount":5,"eol":{"hasEol":false,"count":0},"references":[{"url":"https://www.tp-link.com/us/support/download/tapo-c260/v1/","label":"www.tp-link.com/us/support/download/tapo-c260/v1/","hostname":"www.tp-link.com","tags":["Patch","Product"]},{"url":"https://www.tp-link.com/en/support/download/tapo-c260/v1/","label":"www.tp-link.com/en/support/download/tapo-c260/v1/","hostname":"www.tp-link.com","tags":["Patch","Product"]},{"url":"https://www.tp-link.com/us/support/faq/4960/","label":"www.tp-link.com/us/support/faq/4960/","hostname":"www.tp-link.com","tags":["Vendor Advisory"]},{"url":"https://www.tp-link.com/en/support/download/tapo-d235/","label":"www.tp-link.com/en/support/download/tapo-d235/","hostname":"www.tp-link.com","tags":["Patch"]},{"url":"https://www.tp-link.com/us/support/download/tapo-c520ws/","label":"www.tp-link.com/us/support/download/tapo-c520ws/","hostname":"www.tp-link.com","tags":["Patch"]},{"url":"https://www.tp-link.com/en/support/download/tapo-c520ws/","label":"www.tp-link.com/en/support/download/tapo-c520ws/","hostname":"www.tp-link.com","tags":["Patch"]},{"url":"https://www.tp-link.com/en/support/download/tapo-c211/v2/#Firmware-Release-Notes","label":"www.tp-link.com/en/support/download/tapo-c211/v2/","hostname":"www.tp-link.com","tags":["Patch"]},{"url":"https://www.tp-link.com/us/support/download/tapo-c211/v2/#Firmware-Release-Notes","label":"www.tp-link.com/us/support/download/tapo-c211/v2/","hostname":"www.tp-link.com","tags":["Patch"]}],"lineage":{"upstream":[],"downstream":[],"duplicates":[],"related":[]},"timeline":[{"kind":"published","date":"2026-02-10T17:27:51.942Z","label":"Published","detail":"Vulnerability first disclosed.","source":null},{"kind":"modified","date":"2026-08-04T17:33:56.675Z","label":"Last modified","detail":"Vulnerability information updated.","source":null}],"risk":{"score":31,"level":"medium","profile":"Default","thresholds":{"critical":75,"high":50,"medium":25,"low":10}},"meta":{"dataAsOf":"2026-10-22T12:11:32.768Z","stale":false,"partial":false}}