CVE-2026-88371
NieznaneStreszczenie
W bibliotece ZBar, w funkcji decode6() dla kodu kreskowego Code 128, występuje błąd niezdefiniowanego zachowania. Gdy funkcja decode_e() zwróci -1 dla nieprawidłowego wzorca krawędzi, decode6() przesuwa bitowo tę ujemną wartość, co jest operacją niezdefiniowaną. Może to prowadzić do zatrzymania programu (SIGILL) w kompilacjach z UBSan, powodując odmowę usługi.
Ocena ryzyka
Ryzyko obejmuje możliwość awarii aplikacji korzystających z ZBar przy przetwarzaniu złośliwie przygotowanych kodów kreskowych, co może być wykorzystane do ataków DoS. Wpływa to na dostępność usług.
Rekomendacja
Zaleca się zaktualizowanie ZBar do wersji zawierającej poprawkę lub, jeśli nie jest dostępna, ograniczenie zaufania do przetwarzanych danych wejściowych. Należy także rozważyć użycie kompilacji z włączonymi zabezpieczeniami.
Inne podatności w ZBar
Zobacz wszystkie- CVE-2023-40890Krytyczne
W funkcji lookup_sequence w ZBar 0.23.90 występuje podatność na przepełnienie bufora na stosie. Specjalnie przygotowane kody QR mogą prowadzić do ujawnienia informacji i/lub wykonania dowolnego kodu.
- CVE-2023-40889Krytyczne
W funkcji qr_reader_match_centers w ZBar 0.23.90 występuje przepełnienie bufora oparte na stercie. Specjalnie przygotowane kody QR mogą prowadzić do ujawnienia informacji i/lub wykonania dowolnego kodu.
Oryginalny opis (angielski, źródło NVD)
ZBar commit 2ea2ca58 contains an undefined-behavior vulnerability in the Code 128 decode6() function. When processing specially crafted Code 128 input, decode_e() can return -1 for an invalid edge pattern, and decode6() subsequently left-shifts this negative signed value while constructing the edge signature. The operation invokes undefined behavior and can terminate trap-mode UBSan builds with SIGILL, resulting in denial of service.

