Skip to main content
← All vulnerabilities
CVE-2026-54653PYSEC-2026-3555GHSA-386Q-5HP3-95M9

`datamodel-code-generator` vulnerable to code injection in via attacker-controlled `default_factory` schema field

Published
Last modified
published
Not listed in CISA KEV
Fix
Fixed in 0.60.2
None on Exploit-DB, Metasploit or GitHub
  • Exploitation: none
  • Automatable: no
  • Technical impact: total

Summary

datamodel-code-generator generates Pydantic v2 models, dataclasses, TypedDict, and msgspec.Struct from OpenAPI, JSON Schema, GraphQL, Avro, Protobuf, and raw JSON, YAML, or CSV. From 0.17.0 until 0.60.2, datamodel-code-generator preserves attacker-controlled default_factory values in src/datamodel_code_generator/parser/jsonschema.py through JsonSchemaObject.init and get_field_extras and emits them into Field(default_factory=...) or field(default_factory=...), allowing Python expression execution when the generated model is imported. This issue is fixed in version 0.60.2.

Timeline

  1. CVE published
  2. CISA SSVC assessment

    Exploitation: none · Automatable: no · Technical impact: total

  3. Record last updated

Affected versions

  • koxudaxi datamodel-code-generator

    From 0.17.0 · fixed in 0.60.2

  • datamodel-code-generatorPyPI

    From 0.17.0 · fixed in 0.60.2

References 3

GitHub · koxudaxi/datamodel-code-generator