Podatności datamodel-code-generator
13 znanych podatności CVE w datamodel-code-generator, przetłumaczonych i ocenionych.
- CVE-2026-55415Wysokie
W datamodel-code-generator od wersji 0.11.6 do 0.64.0, rozszerzenia schematu x-python-import lub customTypePath kontrolowane przez atakującego mogą dotrzeć do parsera JSON Schema i wygenerować importy, które pozwalają na wstrzyknięcie nowej linii do instrukcji importu i wykonanie kodu Python podczas importowania wygenerowanego modelu.
- CVE-2026-55403Niskie
W narzędziu datamodel-code-generator przed wersją 0.63.0 funkcja get_body ponownie używa nagłówków Authorization, Cookie i Proxy-Authorization podczas podążania za przekierowaniami między domenami przy pobieraniu zdalnych schematów, co może prowadzić do wycieku poświadczeń do zewnętrznych serwerów. Problem został naprawiony w wersji 0.63.0.
- CVE-2026-55391Wysokie
W datamodel-code-generator przed wersją 0.63.0, walidacja hosta URL w http.py sprawdza go raz, ale potem pozwala httpx na ponowne rozpoznanie hosta dla połączenia, co umożliwia ponowne wiązanie DNS w celu ominięcia ustawienia allow_private_network=False i dotarcia do wewnętrznych usług.
- CVE-2026-55390Wysokie
W datamodel-code-generator od wersji 0.59.0 do 0.62.0, parsowanie schematu XML dla --input-file-type xmlschema rozwiązuje wartości schemaLocation w xs:include, xs:import, xs:redefine i xs:override poza ścieżką bazową wejścia, co pozwala na odczyt dowolnych lokalnych plików i odzwierciedlenie ich w wygenerowanych modelach.
- CVE-2026-55389Wysokie
Narzędzie datamodel-code-generator przed wersją 0.62.0 nieprawidłowo obsługuje referencje JSON Schema $ref, umożliwiając odczyt dowolnych plików lokalnych. Podatność występuje w parserze jsonschema.py, który nie blokuje ścieżek typu file:// ani ../ wykraczających poza katalog wejściowy.
- CVE-2026-54691Wysokie
Narzędzie datamodel-code-generator w wersjach od 0.9.1 do 0.61.0 nie waliduje hostów/IP w celach URL i przekierowań, co umożliwia atak SSRF (Server-Side Request Forgery) na zasoby wewnętrzne. Podatność znajduje się w funkcji http.get_body.
- CVE-2026-54690Wysokie
Narzędzie datamodel-code-generator w wersjach od 0.9.1 do 0.61.0 automatycznie dereferencjonuje referencje JSON Schema $ref z HTTP/HTTPS bez odpowiedniego blokowania, co umożliwia atak SSRF. Opcja --allow-remote-refs tylko ostrzega zamiast blokować.
- CVE-2026-54656Wysokie
Narzędzie datamodel-code-generator w wersjach od 0.52.1 do 0.60.2 interpoluje walidatory z parametru --extra-template-data bez bezpiecznej walidacji, co pozwala na wykonanie kodu Python po zaimportowaniu wygenerowanego modelu Pydantic v2.
- CVE-2026-54655Wysokie
Narzędzie datamodel-code-generator w wersjach od 0.51.0 do 0.60.2 wstawia wartości x-python-type do adnotacji pól bez wystarczającej walidacji, co umożliwia wykonanie kodu Python po zaimportowaniu wygenerowanego modułu.
- CVE-2026-54654Wysokie
Narzędzie datamodel-code-generator w wersjach od 0.14.1 do 0.60.2 renderuje pole komentarza z --extra-template-data w komentarzach Python bez neutralizowania znaków powrotu karetki, co pozwala na wstrzyknięcie kodu Python do wygenerowanych modeli.
- CVE-2026-54653Wysokie
Narzędzie datamodel-code-generator w wersjach od 0.17.0 do 0.60.2 zachowuje kontrolowane przez atakującego wartości default_factory i emituje je do Field(default_factory=...), co pozwala na wykonanie wyrażeń Python po zaimportowaniu modelu.
- CVE-2026-54621Wysokie
Narzędzie datamodel-code-generator przed wersją 0.60.1 renderuje wartości opisu Union GraphQL w komentarzach Python bez neutralizowania znaków powrotu karetki, co pozwala na wstrzyknięcie kodu Python do wygenerowanych modeli.
- CVE-2026-63720Wysokie
Narzędzie datamodel-code-generator przed wersją 0.70.0 zawiera podatność na wstrzykiwanie kodu. Atakujący kontrolujący schematy wejściowe może zdalnie wykonać kod, podając złośliwą wartość customBasePath z osadzonymi znakami nowej linii i wyrażeniem Pythona bez kropek. Wartość ta jest dosłownie wstawiana do wygenerowanej instrukcji 'from ... import ...' bez walidacji identyfikatorów, co powoduje wykonanie dowolnego kodu Pythona podczas importowania wygenerowanego modułu.

