{"cve":"CVE-2026-113731","nvd":{"published":"2026-10-20T22:19:30.197","modified":"2026-10-20T22:19:30.333","status":"Deferred","description":"djust provides Phoenix LiveView-style reactive server-side rendering for Django with Rust-powered performance. From 0.9.0 until 1.0.10, 1.1.7, 1.2.4, and 1.3.0rc8, the find_handlers_for_template MCP tool in python/djust/mcp/server.py accepts an existing absolute template_path and reads it without restricting the resolved path to the project or configured template directories. A local MCP client can use the tool as a file existence and readability oracle and can obtain substrings that match the tool's dj-click, dj-submit, dj-change, dj-input, dj-keydown, or dj-keyup attribute pattern from files readable by the djust process. The maintainer assessment states that the MCP server communicates over local stdio as the same operating-system user and has no network listener, and the tool does not return arbitrary raw file contents. This issue is fixed in versions 1.0.10, 1.1.7, 1.2.4, and 1.3.0rc8.","cvss_v4":null,"cvss_v3":{"version":"3.1","vector":"CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:L/I:N/A:N","score":3.3},"cwes":["CWE-22"],"references":["https://github.com/djust-org/djust/commit/45a5045793ebe7c9c2df86b0ad34275af6822619","https://github.com/djust-org/djust/commit/744bccf699c65c815d9379b36236a7c5592a339b","https://github.com/djust-org/djust/commit/85eed7caaf620bdb08986f2f3bb79432c0d3d715","https://github.com/djust-org/djust/commit/a62caf6b4ef540ad688d4dfdfa407ff914c78728","https://github.com/djust-org/djust/releases/tag/v1.0.10"],"products":[],"source":"nvd","synced_at":"2026-10-21T03:58:25.040806189+00:00"},"epss":{"cve":"CVE-2026-113731","score":0.00187,"percentile":0.08194,"date":"2026-10-25"},"kev":null,"osv":[{"id":"GHSA-r57g-mc79-8hj2","url":"https://osv.dev/vulnerability/GHSA-r57g-mc79-8hj2","summary":"djust: Arbitrary absolute-path file read in the find_handlers_for_template MCP tool","modified":"2026-10-21T17:35:19.934118290Z","packages":[{"ecosystem":"PyPI","name":"djust","purl":"pkg:pypi/djust","ranges":[">=0.9.0 <1.0.10"],"fixed":["1.0.10"]},{"ecosystem":"PyPI","name":"djust","purl":"pkg:pypi/djust","ranges":[">=1.1.0 <1.1.7"],"fixed":["1.1.7"]},{"ecosystem":"PyPI","name":"djust","purl":"pkg:pypi/djust","ranges":[">=1.2.0.dev0 <1.2.4"],"fixed":["1.2.4"]},{"ecosystem":"PyPI","name":"djust","purl":"pkg:pypi/djust","ranges":[">=1.3.0.dev0 <1.3.0rc8"],"fixed":["1.3.0rc8"]}]}],"attribution":["This product uses the NVD API but is not endorsed or certified by the NVD.","EPSS scores: FIRST Exploit Prediction Scoring System, https://www.first.org/epss","Known exploited vulnerabilities: CISA Known Exploited Vulnerabilities Catalog, https://www.cisa.gov/known-exploited-vulnerabilities-catalog","Package advisories: OSV (https://osv.dev), from the GitHub Advisory Database, PyPA, Go, RustSec and other ecosystem databases, under CC-BY 4.0 or CC0","CVE records: the CVE Program's CVE List (https://www.cve.org), under its terms of use (https://www.cve.org/Legal/TermsOfUse). CVE is a registered trademark of The MITRE Corporation; this product is not affiliated with the CVE Program."]}