Andrey Konovalov ujawnił 15 kolejnych błędów w sterownikach USB jądra Linuksa

USB dla Linuksa

Andriej Konowałow badacz bezpieczeństwa Google Niedawno opublikował raport dotyczący identyfikacji 15 luk w zabezpieczeniach (CVE-2019-19523 - CVE-2019-19537) na sterownikach USB dostarczonych w jądrze Linuksa. To to trzecia część problemów wykrytych podczas testów fuzzingu ze stosu USB w pakiecie syzkaller, który wcześniej badacz zgłosił już 29 luk, o których pisaliśmy już tutaj na blogu.

Wcześniej ujawnione problemy zostały opisane przez badacza bezpieczeństwa, że ​​te błędy mogą zostać potencjalnie wykorzystane, gdy do komputera zostaną podłączone specjalnie przygotowane urządzenia USB.

Atak jest możliwy, jeśli istnieje fizyczny dostęp do komputera i może doprowadzić do przynajmniej jednej awarii jądra, ale inne objawy nie są wykluczone (na przykład w przypadku podobnej luki zidentyfikowanej w 2016 r. sterownik USB snd-usbmidi zdołał przygotować exploita do wykonania kodu na poziomie jądra).

W tym nowym raporcie Andrey Konovalov, lista zawiera tylko luki spowodowane dostępem do już zwolnionych obszarów pamięci (use-after-free) lub prowadzące do wycieku danych z pamięci jądra.

Problemy, których można użyć do odmowy usługi nie są uwzględnione w raporcie. Luki mogą zostać potencjalnie wykorzystane po podłączeniu do komputera specjalnie przygotowanych urządzeń USB. Poprawki wszystkich problemów wymienionych w raporcie są już zawarte w jądrze, ale niektóre błędy, które nie zostały uwzględnione w raporcie, nie zostały jeszcze naprawione.

Więcej błędów w sterownikach USB jądra Linuksa, które mogą być wywoływane przez złośliwe zewnętrzne urządzenie USB, zostało znalezionych w syzkaller… Wszystkie te błędy zostały naprawione przez serwer (ale wiele innych błędów USB syzbota nadal nie jest naprawionych).

Najbardziej niebezpieczne luki do użycia po zwolnieniu tego może prowadzić do wykonania kodu ataku, zostały naprawione w sterownikach adutux, ff-memless, ieee802154, pn533, hiddev, iowarrior, mcba_usb oraz yurex.

W CVE-2019-19532 podsumowano 14 dodatkowych luk w zabezpieczeniach w sterownikach HID z powodu błędów poza zakresem. Kontrolery ttusb_dec, pcan_usb_fd i pcan_usb_pro napotkali problemy prowadzące do wycieku danych z pamięci jądra. Kod stosu USB do pracy z urządzeniami znakowymi zidentyfikował problem (CVE-2019-19537) spowodowany sytuacją wyścigu.

CVE-2019-19523

W jądrze Linux przed 5.3.7, występuje błąd użytkowania, który może być spowodowany przez złośliwe urządzenie USB en drivers / usb / misc / adutux.c, znany również jako CID-44efc269db79.

CVE-2019-19524

W jądrze Linuksa starszym niż 5.3.12 występuje błąd użytkowania, który może być spowodowany przez złośliwe urządzenie USB w sterowniku /input/ff-memless.c, znanym również jako CID-fa3a5a1880c9.

CVE-2019-19532

W jądrze systemu Linux starszym niż 5.3.9 występuje wiele błędów zapisu poza zakresem, które mogą być spowodowane przez złośliwe urządzenie USB w sterownikach HID jądra systemu Linux, znanych również jako CID-d9d4b1e46d95. Wpływa to na:

drivers / hid / hid-axff.c, drivers / hid / hid-dr.c, drivers / hid / hid-emsff.c

drivers / hid / hid-gaff.c, drivers / hid / hid-holtekff.c

drivers / hid / hid-lg2ff.c, drivers / hid / hid-lg3ff.c

drivers / hid / hid-lg4ff.c, drivers / hid / hid-lgff.c

drivers / hid / hid-logitech-hidpp.c, drivers / hid / hid-microsoft.c

drivers / hid / hid-sony.c, drivers / hid / hid-tmff.c

drivers / hid / hid-zpff.c.

Możemy również zaobserwować identyfikację czterech podatności (CVE-2019-14895, CVE-2019-14896, CVE-2019-14897, CVE-2019-14901) na kontrolerze do chipów bezprzewodowych Marvell, co może spowodować przepełnienie bufora.

Atak można przeprowadzić zdalnie wysyłanie ramek oprawionych w określony sposób podczas łączenia się z bezprzewodowym punktem dostępowym napastnika. Najbardziej prawdopodobnym zagrożeniem jest zdalna odmowa usługi (awaria jądra), ale nie wyklucza się możliwości uruchomienia kodu w systemie.

W tej chwili problemy, które pozostają nieskorygowane, które zostały już ujawnione kilka dni temu w dystrybucjach (Debian, Ubuntu, Fedora, RHEL, SUSE), już pracują nad poprawieniem błędów. Chociaż zaproponowano już poprawkę do włączenia do jądra Linuksa dla następnych wersji.

Jeśli chcesz dowiedzieć się więcej o znalezionych błędach, możesz zapoznać się z oryginalną publikacją w Link i to inny link.


Zostaw swój komentarz

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *

*

*

  1. Odpowiedzialny za dane: AB Internet Networks 2008 SL
  2. Cel danych: kontrola spamu, zarządzanie komentarzami.
  3. Legitymacja: Twoja zgoda
  4. Przekazywanie danych: Dane nie będą przekazywane stronom trzecim, z wyjątkiem obowiązku prawnego.
  5. Przechowywanie danych: baza danych hostowana przez Occentus Networks (UE)
  6. Prawa: w dowolnym momencie możesz ograniczyć, odzyskać i usunąć swoje dane.

  1.   Aritz powiedział

    „W jądrze Linuksa starszym niż 5.3.9 występuje wiele błędów zapisu poza zakresem”. Popraw to, David.