CVE-2026-108258

Source
https://cve.org/CVERecord?id=CVE-2026-108258
Import Source
https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-108258.json
JSON Data
https://api.osv.dev/v1/vulns/CVE-2026-108258
Aliases
Published
2026-10-09T20:34:39Z
Modified
2026-10-10T10:45:43Z
Severity
  • 6.9 (Medium) CVSS_V4 - CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N CVSS Calculator
Summary
Shiny for Python - Path traversal in bookmark restore
Details

Shiny for Python is a framework for building interactive web applications in Python. From 1.4.0 until 1.6.4, bookmark restore accepts a client-supplied state_id and joins it into the server-side shiny_bookmarks directory without validating that it is a single safe path segment. An unauthenticated request can use parent-directory segments or an absolute path to make the server open input.json and values.json outside the bookmark store, even when bookmark_store is set to disable. In applications configured with bookmark_store set to server and using ui.input_file(), the restore handler can additionally copy and expose an attacker-selected file from an attacker-selected directory. This issue is fixed in version 1.6.4.

Database specific
{
    "cna_assigner": "GitHub_M",
    "cwe_ids": [
        "CWE-22"
    ],
    "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/108xxx/CVE-2026-108258.json"
}
References

Affected packages

Git / github.com/posit-dev/py-shiny

Affected ranges

Type
GIT
Repo
https://github.com/posit-dev/py-shiny
Events
Database specific
Show details
{
    "extracted_events": [
        {
            "introduced": "1.4.0"
        },
        {
            "fixed": "1.6.4"
        }
    ],
    "source": "AFFECTED_FIELD"
}

Database specific

source
"https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-108258.json"