Description
dataclasses-avroschema generates Avro schemas from Python dataclasses, Pydantic models, and Faust Records and generates Python code from Avro schemas. From version 0.62.3 through 0.70.5, ClassRepresentation.render_metaclass inserts a schema-controlled Avro record name into the quoted Meta.schema_name field of generated Python source without escaping it. A crafted name can terminate the string literal and inject statements into the generated class body, which execute when the generated module is imported. Version 0.70.6 fixes the vulnerability by escaping schema values rendered into generated string literals.
References5
- github.com/marcosschroh/dataclasses-avroschema/commit/429f3d705…
- github.com/marcosschroh/dataclasses-avroschema/commit/919d3e07c…
- github.com/marcosschroh/dataclasses-avroschema/releases/tag/0.7…
- github.com/marcosschroh/dataclasses-avroschema/security/advisor…
- github.com/marcosschroh/dataclasses-avroschema/security/advisor…
Metrics
- CVSS 3.1
-
8.8
HIGH
Score source: CNA
CVSS:3.1/AV:N/AC:L/PR:N/UI:R/S:U/C:H/I:H/A:H - EPSS — exploit probability
- 0% percentile: 32 · as of 11 November 2026
- CWE
- CWE-94
Could this be exploited in your environment?
A patch closes the known hole. A penetration test shows what an attacker can still reach — with proof.