datamodel-code-generator vulnerabilities
13 known CVE vulnerabilities in datamodel-code-generator, translated and rated.
- CVE-2026-55415High
In datamodel-code-generator from 0.11.6 to 0.64.0, attacker-controlled x-python-import or customTypePath schema extensions can reach the JSON Schema parser and generate imports that allow newline injection into import statements, executing Python code when the generated model is imported.
- CVE-2026-55403Low
In datamodel-code-generator prior to version 0.63.0, the get_body function reuses Authorization, Cookie, and Proxy-Authorization headers when following cross-origin redirects while fetching remote schemas, potentially leaking credentials to external servers. This issue has been fixed in version 0.63.0.
- CVE-2026-55391High
In datamodel-code-generator before version 0.63.0, URL host validation checks the host once but then allows httpx to resolve the host again for the connection, enabling DNS rebinding to bypass allow_private_network=False and reach internal services.
- CVE-2026-55390High
In datamodel-code-generator from 0.59.0 to 0.62.0, XML Schema parsing resolves schemaLocation values in xs:include, xs:import, xs:redefine, and xs:override outside the input base path, allowing arbitrary local files to be read and reflected into generated models.
- CVE-2026-55389High
The datamodel-code-generator tool before version 0.62.0 improperly handles JSON Schema $ref references, allowing arbitrary local file reads. The vulnerability is in jsonschema.py, which does not block file:// or ../ paths outside the input directory.
- CVE-2026-54691High
The datamodel-code-generator tool from version 0.9.1 to 0.61.0 does not validate hosts/IPs in URL targets and redirects, enabling SSRF attacks against internal resources. The vulnerability is in the http.get_body function.
- CVE-2026-54690High
The datamodel-code-generator tool from version 0.9.1 to 0.61.0 automatically dereferences JSON Schema $ref references from HTTP/HTTPS without proper blocking, enabling SSRF attacks. The --allow-remote-refs flag only warns instead of blocking.
- CVE-2026-54656High
The datamodel-code-generator tool from version 0.52.1 to 0.60.2 interpolates validators from --extra-template-data without safe validation, allowing Python code execution when the generated Pydantic v2 model is imported.
- CVE-2026-54655High
The datamodel-code-generator tool from version 0.51.0 to 0.60.2 inserts x-python-type values into field annotations without sufficient validation, allowing Python code execution when the generated module is imported.
- CVE-2026-54654High
The datamodel-code-generator tool from version 0.14.1 to 0.60.2 renders the comment field from --extra-template-data into Python comments without neutralizing carriage returns, allowing Python code injection into generated models.
- CVE-2026-54653High
The datamodel-code-generator tool from version 0.17.0 to 0.60.2 preserves attacker-controlled default_factory values and emits them into Field(default_factory=...), allowing Python expression execution when the model is imported.
- CVE-2026-54621High
The datamodel-code-generator tool before version 0.60.1 renders GraphQL Union description values into Python comments without neutralizing carriage returns, allowing Python code injection into generated models.
- CVE-2026-63720High
The datamodel-code-generator prior to version 0.70.0 contains a code injection vulnerability. Attackers controlling input schemas can achieve remote code execution by supplying a malicious customBasePath value with embedded newlines and a dot-free Python expression. The crafted value is emitted verbatim into a generated 'from ... import ...' statement without identifier validation, causing arbitrary Python code to execute when the generated module is imported.

