CVE-2026-44314
ŚrednieCVSS 4.3Prawdopodobieństwo exploitacji (EPSS)
Niskie ryzykoPercentyl 8 - wyżej niż 8% wszystkich znanych CVE
Streszczenie
Traccar przed wersją 6.13.0 zawiera podatność w DeviceResource.uploadImage, która autoryzuje urządzenie tylko przez Condition.Permission, ale nie sprawdza readonly/deviceReadonly dla nie-adminów. Nieautoryzowany użytkownik może zastąpić obraz urządzenia w katalogu mediów serwera.
Ocena ryzyka
Atakujący może modyfikować obrazy urządzeń widoczne w interfejsie użytkownika, co może prowadzić do manipulacji danymi lub oszustwa.
Rekomendacja
Zaktualizuj Traccar do wersji 6.13.0 lub nowszej.
Inne podatności w Traccar
Zobacz wszystkie- CVE-2026-52852Średnie
Traccar to otwarty system śledzenia GPS. Przed wersją 6.14.0 uwierzytelniony użytkownik z uprawnieniami do zarządzania grupami i żądania raportów może utworzyć cykliczną hierarchię grup-rodziców i zażądać raportu trips lub stops dla urządzenia w tej hierarchii. GroupResource pozwala na cykl rodzica, a AttributeUtil.lookup podąża za rodzicami grup bez wykrywania cykli, zbioru odwiedzonych ani limitu głębokości, co powoduje, że wyszukiwanie nigdy się nie kończy, przypina wątek Jetty przy wysokim użyciu CPU i może wyczerpać pulę wątków web/API przy powtarzanych żądaniach.
- CVE-2026-52851Wysokie
W Traccar przed wersją 6.14.0 uwierzytelniony użytkownik bez uprawnień tylko do odczytu może wysłać żądanie DELETE /api/permissions z dodatkowym kluczem JSON kontrolowanym przez atakującego. Walidacja sprawdza tylko dwa pierwsze klucze, ale removePermission() konkatenuje wszystkie klucze mapy do klauzuli WHERE SQL jako identyfikatory kolumn, co pozwala na wstrzyknięcie SQL i wyodrębnienie dowolnych danych z bazy, w tym adresu e-mail administratora, hashy haseł i soli. Podatność została naprawiona w wersji 6.14.0.
Oryginalny opis (angielski, źródło NVD)
Traccar is an open source GPS tracking system. Prior to 6.13.0, DeviceResource.uploadImage authorizes the target device only through Condition.Permission(User.class, getUserId(), Device.class) and then immediately streams the uploaded body into mediaManager.createFileStream(...). Unlike the generic mutation path in BaseObjectResource.update and the explicit device mutation handler updateAccumulators, this route never invokes permissionsService.checkEdit(getUserId(), Device.class, false, false). The skipped guard is exactly where Traccar enforces readonly and deviceReadonly restrictions for non-admin users. An unauthorized user can replace a device’s stored image file under the server media directory. This allows modification of UI-visible device media and any downstream workflows that rely on the persisted image, despite other device update paths correctly rejecting the same identity. This vulnerability is fixed in 6.13.0.

