HIGH🇬🇧 English

CVE-2026-55389

Path traversal w datamodel-code-generator umożliwia odczyt dowolnych plików lokalnych

CVSS 7.5v3.1pub. 2026-07-28upd. 2026-08-06

Podatność w narzędziu datamodel-code-generator (wersje przed 0.62.0) pozwala na odczyt dowolnych plików lokalnego systemu plików poprzez nieodpowiednio ograniczone rozwiązywanie referencji JSON Schema ($ref). Jest to szczególnie groźne, gdy narzędzie przetwarza niezaufane schematy dostarczone przez zewnętrznych użytkowników.

Pokaż oryginał (EN)

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. Prior to 0.62.0, datamodel-code-generator resolves JSON Schema $ref targets in src/datamodel_code_generator/parser/jsonschema.py through is_url and _get_ref_body without containing file:// or ../ traversal references to the input directory and without honoring --no-allow-remote-refs, allowing arbitrary local file reads. This issue is fixed in version 0.62.0.

🤖 Analiza AI
Jak działa

Narzędzie datamodel-code-generator podczas przetwarzania schematów JSON Schema rozwiązuje referencje $ref w pliku src/datamodel_code_generator/parser/jsonschema.py za pośrednictwem funkcji is_url oraz _get_ref_body. Funkcje te nie weryfikują, czy ścieżki docelowe zawierają sekwencje path traversal (np. ../) lub odwołania do schematów URI file://, co umożliwia wyjście poza katalog wejściowy. Dodatkowo opcja --no-allow-remote-refs nie jest respektowana, co pozwala atakującemu na wskazanie dowolnego pliku w systemie poprzez spreparowany schemat.

Skutki

Atakujący może odczytać dowolne pliki z lokalnego systemu plików serwera lub środowiska, na którym uruchomiono narzędzie, co może prowadzić do ujawnienia poufnych danych, takich jak klucze prywatne, konfiguracje czy dane uwierzytelniające.

Mitygacja

Należy zaktualizować datamodel-code-generator do wersji 0.62.0 lub nowszej, w której problem został naprawiony zgodnie z informacjami producenta.

Kogo dotyczy

datamodel-code-generator w wersjach przed 0.62.0

Uwagi

Poprawka została wprowadzona w commicie 2ff4a72b4550a2b2069754c5b075b1655067e5fb i opublikowana w wersji 0.62.0. Szczegóły dostępne w security advisory GHSA-8359-h9fx-j6v9 na platformie GitHub.

CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:N/A:N
  • Koxudaxi Datamodel Code Generator

    APP
    Koxudaxi
    < 0.62.0
🔵
ZWERYFIKUJ U PRODUCENTA
Brak jednoznacznych danych o patchu. Sprawdź referencje od producenta.
Tagi
Path Traversal
CWE
Referencje

Powiązane podatności

CVE-2026-54653HIGH8.8PL ✓ten sam produkt

datamodel-code-generator: wstrzyknięcie kodu Python przez default_factory

CVE-2026-54656HIGH7.8PL ✓ten sam produkt

RCE w datamodel-code-generator poprzez niezabezpieczoną interpolację walidatorów

CVE-2026-54690HIGH8.2PL ✓ten sam produkt

SSRF w datamodel-code-generator poprzez nieblokowane zewnętrzne $ref

CVE-2026-55391HIGH7.5PL ✓ten sam produkt

SSRF przez DNS rebinding w datamodel-code-generator (przed 0.63.0)

CVE-2026-55415HIGH7.5PL ✓ten sam produkt

Code injection w datamodel-code-generator poprzez rozszerzenia schematu