CVE-2026-63469
KrytyczneCVSS 9.3Streszczenie
fastapi-code-generator przed wersją 0.8.1 wstawia dodatkowy klucz kodu statusu odpowiedzi do słownika responses={...} dekoratora trasy jako ciąg w pojedynczych cudzysłowach bez escapowania osadzonych cudzysłowów. Klucz drugiej, niepodstawowej odpowiedzi kontrolowany przez atakującego może zamknąć literał klucza i wstrzyknąć wyrażenie Python. Poprawny składniowo kod wykonuje się z uprawnieniami aplikacji lub procesu CI przy imporcie modułu.
Ocena ryzyka
Wstrzyknięcie kodu przez klucz odpowiedzi może doprowadzić do wykonania dowolnego kodu w środowisku aplikacji lub CI, co grozi przejęciem systemu budowania lub produkcji.
Rekomendacja
Zaktualizuj fastapi-code-generator do wersji 0.8.1 lub nowszej. Nie generuj kodu z niezaufanych plików OpenAPI bez wcześniejszej walidacji.
Inne podatności w fastapi-code-generator
Zobacz wszystkie- CVE-2026-63471Krytyczne
fastapi-code-generator przed wersją 0.8.1 wstawia ścieżkę OpenAPI do dekoratora trasy @app.get(...) jako ciąg w pojedynczych cudzysłowach bez escapowania osadzonych cudzysłowów. Ścieżka kontrolowana przez atakującego może zamknąć ciąg i wstrzyknąć wyrażenie Python do argumentu dekoratora. Poprawny składniowo wygenerowany kod wykonuje się z uprawnieniami aplikacji lub procesu CI przy imporcie modułu.
- CVE-2026-63470Krytyczne
fastapi-code-generator przed wersją 0.8.1 wstawia Operation.summary do docstringa wygenerowanego handlera trasy jako ciąg w potrójnych cudzysłowach bez escapowania osadzonych potrójnych cudzysłowów. Podsumowanie operacji kontrolowane przez atakującego może zamknąć docstring i wstrzyknąć instrukcję Python do ciała handlera. Poprawny składniowo kod wykonuje się z uprawnieniami procesu serwera przy wywołaniu handlera.
Oryginalny opis (angielski, źródło NVD)
fastapi-code-generator creates FastAPI applications from OpenAPI files. Prior to 0.8.1, the generator inserts an additional response status-code key into the generated responses={...} route-decorator dictionary as a single-quoted Python string without escaping embedded quotes. A multi-response OpenAPI operation with an attacker-controlled or attacker-influenced second non-primary response key can close the dictionary-key literal and inject a valid Python expression. Syntax-breaking input only causes generation to fail, but syntactically valid generated code executes with the application's or CI process's privileges when the generated module is imported and its decorator arguments are evaluated. This additional-response-key sink is distinct from the project's separate route-path and operation-summary sinks. This issue is fixed in version 0.8.1.
Dane podatności pochodzą z NVD (NIST) · CISA KEV · EPSS

