Bezpłatne Dni Otwarte Sekurak Academy! Hackowanie na żywo, szkolenia, ebooki, …

A czy Ty wpiąłeś już swoje łóżko w oddzielnego VLANa?

28 lutego 2025, 11:08 | W biegu | komentarzy 13

Urządzenia Internetu Rzeczy, z jakiegoś powodu nazywane “smart” zaczynają już denerwować ludzi zajmujących się bezpieczeństwem (w tym nas). Nie bez powodu powstało powiedzenie, że literka “S” w skrócie IoT pochodzi od “Security”. O niskiej jakości zabezpieczeń zabawek dla dzieci pisaliśmy już jakiś czas temu, ale to tylko kropla w morzu problemów urządzeń IoT. Tym razem przedstawiamy problem na jaki natknął się Dynal (InsecureNature) przyglądając się swojemu łóżku od Eight Sleep.

TLDR:

  • Badacz bezpieczeństwa mający problemy z bezsennością postanowił przyjrzeć się “smart” materacowi, który umożliwia np. zdalną kontrolę temperatury.
  • Urządzenie nie działa bez dostępu do Internetu.
  • Autor znaleziska odkrył klucze AWS w firmware swojego łóżka a także backdoora, który pozwalał każdemu pracownikowi firmy zalogować się do łóżek klientów.. przez SSH

Można zadać pytanie, jak zacząć proces audytowania urządzenia jakim jest smart łóżko. Odpowiedź jest prosta – tak samo jak każdego innego routera czy smart zabawki. Firmware pozyskać można np. zrzucając pamięć urządzenia lub po prostu korzystając z sieciowych zasobów producenta serwujących aktualizacje (np. tu https[:]//update-api[.]8slp[.]net/v1/updates/p1/1?deviceId=101&currentRev=1). Czasami trzeba poświęcić nieco więcej czasu, ze względu na szyfrowanie. Tutaj nie mamy informacji, aby takie działania były potrzebne. 

Przeglądając zawartość filesystemu, natrafić można na pliki konfiguracyjne, zawierające szczegóły, takie jak klucze API do chmury Amazona. Prawda, że jest to niezbędne w każdej poduszce?

Rysunek 1. Plik konfiguracyjny zawierający klucze AWS (źródło: trufflesecurity.com)

Oprócz tego, badacz znalazł publiczny klucz ssh w pliku authorized_keys. Może początkowo nie jest to informacja mocno niepokojąca, wszak żeby wykorzystać ten klucz inżynierowie Eight Sleep musieliby mieć dostęp do otwartego portu urządzenia, czyli znajdować się w tej samej sieci lub skorzystać z forwardowania portów. Nic bardziej mylnego, analiza dalszych plików konfiguracyjnych pokazuje, że korzystając z usługi chmurowej, SSH było wystawione dla pracowników firmy przez API zdalnego dostępu.

Rysunek 2. Wystawienie usługi SSH poza sieć lokalną (źródło: trufflesecurity.com)

To powoduje, żę pracownicy firmy mogli logować się do urządzeń klientów, które takiej aktywności nie logowały. Co dawał taki dostęp? Możliwość kontrolowania wszystkich funkcji takich jak ustawienia temperatury, wibracji czy alarmu. Oprócz tego możliwe było odczytanie metadanych z urządzenia takich jak informacja o tym, czy ktoś teraz znajduje się w łóżku. Ciekawa informacja, szczególnie dla tych, którzy chcieliby nie być niepokojeni przez właściciela podczas okradania domu. A poza tym – przejęcie kontroli nad łóżkiem (które nie znajduje się w wyizolowanej sieci), może stanowić przyczółek pozwalający na dalsze pivotowanie się do sieci ofiary. 

Rysunek 3. Klucz SSH w pliku authorized_keys (źródło: trufflesecurity.com)

Co na to firma? Po zgłoszeniu informacji o opublikowanych kluczach API, Eight Sleep natychmiast unieważniło klucze. Na ten moment ciężko stwierdzić, na co pozwalały. Jak zauważa badacz – ich publikacja mogła skutkować od nabicia niedużego rachunku firmie (w najlepszym przypadku), do kontroli pewnych usług w infrastrukturze chmurowej oraz dostępu do danych klientów. 

Czego uczy ta sytuacja? Przede wszystkim pokazuje po raz kolejny, że producenci nie stosują się do najlepszych praktyk i wymagane jest podejście wynikające z zasady ograniczonego zaufania co do wszelakich produktów IoT. Sensowne wydaje się wydzielenie separowanej sieci na takie urządzenia oraz kontrolowanie ruchu wchodzącego i wychodzącego z takiego VLANa. Nie zaszkodzi rozważenie całkowitego odcięcia od Internetu (co akurat w omawianym przypadku nie mogło zostać zrealizowane). Na szczęście często powstają rozwiązania znacznie bardziej przychylne prywatności użytkownika takie jak Free Sleep. A czy Wy, zrobiliście już aktualizację firmware łóżka i sprawdziliście konfigurację jego firewalla? 

~fc

Spodobał Ci się wpis? Podziel się nim ze znajomymi:



Komentarze

  1. Imię

    OK. Kilka uwag.
    Po pierwsze – z zasady „urządzenie, które nie działa bez dostępu do internetu” powinno co najmniej spowodować pytające zmarszczenie brwi. Paranoją jest, że żeby móc ustawić program na własnej „smart” zmywarce _trzeba_ robić nawrotkę przez chmurę producenta. Gdyby to była tylko opcja – proszę bardzo.
    Po drugie – wpuszczanie do „bezpiecznej” (tak, tak, zero trust yadda yadda) sieci nieznanych urządzeń to średni pomysł. I dotyczy to również „laptopa kuzyna, który przyjechał w odwiedziny”.
    Po trzecie – „zasada ograniczonego zaufania” to pojęcie pochodzące z prawa o ruchu drogowym, gdzie oznacza coś zupełnie innego niż się wielu osobom wydaje i przez to jest kompletnie źle używana. Zasada ograniczonego zaufania wyrażona w artykule 4 ustawy Prawo o Ruchu Drogowym mówi, że co do zasady możemy spodziewać się, że inni zachowają się zgodnie z prawem. Taka jest zasada i dlatego jest to zasada zaufania. Są względem niej wyjątki i dlatego to zaufanie jest ograniczone, ale co do zasady mówi ona o zaufaniu. Natomiast bardzo często używa się tego określenia błędnie w znaczeniu „nie ufaj nikomu”.

    Odpowiedz
  2. Roman

    Hm.. nie rozumiem afery o authorized_keys (w tym przypadku).
    Ten plik zawiera klucz publiczny, klucza którego posiadaczem jest ów firma. Jeśli nie wyciek klucz prywatny, to dostęp do niego ma tylko firma, a czy tylko dział IT, czy wszyscy pracownicy to już tylko spekulacje.
    Chodzi mi o to, że nie różni się to od automatycznych aktualizacji, które to w każdej chwili mogą: zrotować / dodać / usunąć ten klucz.

    Z osobnym vlan / lub vlan dla każdego lot się zgadzam. Dziś vlan-y powinny być domyślne w routerach, apki nie komunikują się już z lot po lanie, tylko przez chmurę producenta, a ludzie którzy stawiaja swoje HA poradzą sobię z tym.

    Odpowiedz
    • izolator

      A po co od razu VLANy, wystarczy izolacja klientów wifi oraz izolacja wifi od LAN.

      Odpowiedz
  3. Tadeusz

    Czy mamy w PL lub EU „IoT Act”, który przewiduje kary za takie nadużycia dotyczące bezpieczeństwa IoT typu trzymanie kluczy w firmware lub backdoory?

    Odpowiedz
  4. Piotr

    Szkoda tylko, że większość routerów domowych albo wcale nie ma VLAN albo bardzo ograniczone. Zostaje tylko utworzenie sieci gościnnej i tam łączyć takie sprzęty i liczyć na to, że router ma to poprawnie odseparowane.

    A już nie wspomnę o routerach od dostawcy internetu, jeśli chodzi o zastosowania domowe to większość osób korzysta tylko ze sprzętu dostarczonego od operatora, a tam to praktycznie nic się nie da zrobić

    Odpowiedz
  5. Bartek

    Kiedys mnie to zastanawialo ale mysle ze przyczyna takiego stanu rzeczy jest dosc prosta. Dzis dane to kasa. Wiec wiekszosc firm bedzie chciala tych danych zebrac w taki czy inny sposob. A czemu dane mozna na kase przelozyc? Spersonalizowane reklamy… Wiec naszy moralnym obowiazkiem jest blokowanie owych wszedzie gdzie sie da… Wtedy szpiegowanie usera przestanie byc oplacalne i „moda” na smart minie bezpowrotnie…

    Odpowiedz
  6. Stan

    Łóżko w 5G? Gorsze niż szczepionka! Jak najdalej od wszelkich pól elektromagnetycznych. W nocy elektryka dochodzi tylko do lodówki, pozostała instalacja u mnie wyłączona.

    Odpowiedz
  7. Mat2

    Dla mnie samo udostępnianie przez materac danych producentowi urządzenia jest problemem. Dlaczego łóżko nie może funkcjonować lokalnie a z telefonem łączyć się jedynie poprzez Bluetooth? Po co producentowi te wszystkie dane?

    > Po zgłoszeniu informacji o opublikowanych kluczach API, Eight Sleep natychmiast unieważniło klucze. Na ten moment ciężko stwierdzić, na co pozwalały.

    Sądząc po nagłówku ze screenshota, klucze API pozwalały prawdopodobnie na wysyłkę danych do Amazon Kinesis (jest to usługa od AWSa do obsługi danych strumieniowych). Najwyraźniej, materac wysyłał do Kinesisa dane i w tym celu autoryzował się tymi kluczami API.

    Odpowiedz
    • Mat2

      Zatem zaszycie w urządzeniu tych kluczy API nie było najwyraźniej błędem, ale celowym działaniem producenta (zakładając, że wysyłka danych do Kinesisa nie miała być używana tylko na czas testów).

      Odpowiedz
    • Kamil

      Z jednego prostego powodu. Pieniądze. Kiedyś był ograniczony subset w wersji „darmowej” a teraz Free Tier został usunięty i urządzenie działa tylko w trybie subskrypcji.

      Odpowiedz
    • izolator

      Wszystko można, ale przez Bluetooth nie możesz sprawdzić z innego miejsca czy ktoś nie używa Twojej poduszki.

      Odpowiedz
  8. Maciej

    Odczytanie temperatury łóżka itd to jedno, ale mając możliwość połączenia się przez ssh do wewnątrz sieci usera, możemy sobie tunelować każdy inny protokół i mieć dostęp do wszystkiego wewnątrz.

    Odpowiedz
  9. Vi

    Co to za dystopijny wynalazek, o maj gasz.
    We wiadrach s3 sie poprzewracalo…

    Odpowiedz

Odpowiedz na izolator