CVE-2026-54918
ŚrednieCVSS 5.3Streszczenie
NetBox Device Type Library w dotkniętych rewizjach repozytorium zawiera stałą NETBOX_DT_LIBRARY_URL w tests/test_configuration.py, która jest swobodnie modyfikowalna przez nieuwierzytelnionego autora pull requesta przed uruchomieniem testów walidacyjnych. Podczas zbierania pytest, tests/definitions_test.py przekazuje tę wartość do Repo.clone_from i create_remote("upstream").fetch(), co powoduje ślepe żądania Git smart-HTTP do wybranego przez atakującego hosta lub ładowanie kontrolowanych przez atakującego plików tests/known-*.json jako pamięci podręcznej walidacji. Ślepe żądanie nie może ustawić dowolnych nagłówków usługi metadanych ani zwrócić treści odpowiedzi, a ta ścieżka nie wykonuje zdalnych hooków Git, ale podstawione znane dane mogą ominąć walidację unikalności slug, modułu i szafy. Podatność naprawiono w commicie 8980c690097e92f5028c7e6df402b327d827ecd5.
Ocena ryzyka
Podatność umożliwia atakującemu manipulowanie danymi walidacyjnymi, co może prowadzić do obejścia kontroli integralności i potencjalnego wprowadzenia złośliwych definicji urządzeń do NetBox.
Rekomendacja
Zaleca się zastosowanie poprawki z commita 8980c690097e92f5028c7e6df402b327d827ecd5 lub nowszej. Należy również ograniczyć możliwość modyfikacji plików testowych przez nieautoryzowanych użytkowników.
Inne podatności w NetBox Device Type Library
Zobacz wszystkie- CVE-2026-54916Wysokie
NetBox Device Type Library, zbiór definicji typów urządzeń do importu do NetBox, posiada podatność wynikającą z braku tests/init.py i braku --import-mode=importlib, co powoduje umieszczenie katalogu tests na początku sys.path podczas zbierania testów przez pytest. Nieuwierzytelniony współtwórca może dodać moduł taki jak tests/git.py przesłaniający GitPython lub tests/conftest.py, co prowadzi do wykonania dowolnego kodu na runnerze GitHub Actions.
- CVE-2026-54752Krytyczne
Biblioteka NetBox Device Type Library zawiera podatność deserializacji w narzędziu testowym, które ładuje pliki pickle kontrolowane przez autora pull requesta. Nieuwierzytelniony współtwórca może dostarczyć spreparowany plik pickle, co prowadzi do wykonania dowolnego kodu podczas uruchamiania testów pytest w GitHub Actions lub w procesie opiekuna projektu.
Oryginalny opis (angielski, źródło NVD)
NetBox Device Type Library is a collection of community-sourced device type definitions for import into NetBox. In the affected repository revisions, NETBOX_DT_LIBRARY_URL in tests/test_configuration.py is a free-form tracked constant that an unauthenticated pull-request author can change before the validation test harness runs. During pytest collection, tests/definitions_test.py passes the value to Repo.clone_from and create_remote("upstream").fetch(), causing blind Git smart-HTTP requests to an attacker-selected host or loading attacker-controlled tests/known-*.json validation caches. The blind request cannot set arbitrary metadata-service headers or return response bodies, and this path does not execute remote Git hooks, but substituted known data can bypass slug, module, and rack uniqueness validation. This vulnerability is fixed in commit 8980c690097e92f5028c7e6df402b327d827ecd5.

