4

Takich aktualizacji będziemy potrzebować. Już niedługo

Urządzenia wpasowujące się w ideę internetu rzeczy będą coraz popularniejsze i poza typowo konsumenckimi zastosowaniami... są już bardzo szeroko wykorzystywane. Kamery bezpieczeństwa stale podłączone do internetu, czy wykrywacze ruchu to tylko wierzchołek góry lodowej. Uczmy się na ich błędach, bowiem już teraz wiadomo, że z nimi może być więcej problemów niż pożytku.

O co chodzi? O oprogramowanie dla takich urządzeń. Co do zasady – właściwie każdy sprzęt elektroniczny wyposażony w software, który łączy się z siecią może charakteryzować się pewnymi podatnościami, które są możliwe do zlikwidowania za pomocą aktualizacji. Z tym jest jednak bardzo krucho i problem ten na szczęście dostrzegli eksperci. Co więcej, proponują oni odpowiednie ku temu rozwiązanie.

Eksperci proponują standard wprowadzania aktualizacji dla sprzętów IoT

W swojej propozycji, jednoznacznie brzmiącej: „IoT Firmware Update Architecture” zawarli właściwie wszystko to, o czym mówi się już od wielu lat. Założenia wynikające z tego dokumentu nie są szczególnie odkrywcze, czy też innowacyjne – mają one przede wszystkim zwracać uwagę na narastający problem wokół IoT, które nawet bardziej niż inne sprzęty potrzebują poważnego podejścia do zaniedbywanych niestety uaktualnień.

Dokument stanowi propozycje dla instytucji zajmujących się ustanawianiem standardów, wedle których skonstruowano by jednakie dla wszystkich zasady bezpieczeństwa. O ile sama idea jest dobra, spodziewane są tarcia wśród producentów, którzy mogą poczytywać je jako „zbyt nachalne” lub po prostu problematyczne.

iot

Tak powinny wyglądać aktualizacje dla sprzętów IoT

Przede wszystkim, mechanizm aktualizacji urządzenia powinien działać dokładnie tak samo – niezależnie od tego jaki interfejs został wykorzystany do przesyłu plików: Bluetooth, UART, WiFi, USB czy inne. Dodatkowo, uaktualnienia powinny być dystrybuowane „masowo” za pomocą odpowiedniego mechanizmu, który roześle je bezpośrednio do wszystkich sprzętów jednocześnie. W przypadku paczek aktualizacyjnych powinny być wykorzystywane klucze kryptograficzne, które pozwolą na zabezpieczenie ich przed dostępem osób niepowołanych.

To podstawowe założenia – najważniejsze z tych wszystkich jest jedno: dotyczące masowych aktualizacji. W przypadku wielu sprzętów IoT jest to bardzo słabo praktykowane. Korzystanie z kryptografii, czy też ustalenie zasad działania procesu aktualizacji niezależnie od wykorzystanego interfejsu to sprawy raczej oczywiste.

Eksperci podnieśli również kwestię ataków polegających na intencjonalnym powrocie do poprzedniej wersji oprogramowania (aby wykorzystać poprzednie luki). Bardzo ważne jest również wykorzystanie małego, aczkolwiek bardzo ważnego bootloadera. Kosmetyka aktualizacji dla urządzeń IoT zakłada m. in. brak nieprzyjemnych konsekwencji w razie awarii prądu w trakcie aktualizacji.

Dzięki takim zasadom, będziemy mogli spać spokojnie i swobodnie korzystać z dobrodziejstw sprzętów IoT

Sam na co dzień używam Google Home’a – sprzętu, który idealnie wpasowuje się w ideę konsumenckiego IoT. O ile Google staje na wysokości zadania, jeżeli chodzi o aktualizacje, to doskonale zdaję sobie sprawę, że inni producenci, którzy próbują swoich sił na tym rynku często zaniedbują swoje obowiązki wynikające wprost z dbałości o bezpieczeństwo. To właśnie do nich zaadresowano tę propozycję.

  • zakius

    żeby instalować aktualizacje automatycznie urządzenia tego typu musiałyby mieć obowiązkowe akumulatory, aby zapobiegać uceglaniu w razie awarii zasilania w tym jednym konkretnym momencie

    • raptor72

      Wystarczyłoby odpowiedni kondensator.I oczywiście optymalizacja samego procesu aktualizacji, pod kątem wystąpienia scenariusza o jakim napisałeś.

  • Taki mechanizm jest z zasady niezgodny z licencją GPL3 (anti-tivoization – czyli co komu po dostępnym kodzie źródłowym, jeśli nie będzie w stanie do swojego urządzenia wgrać samodzielnie skompilowanej wersji firmware, bo nie ma odpowiednich kluczy kryptograficznych, aby ją podpisać).

    A co za tym idzie, jeśli mówimy o urządzeniu, którego cały firmware opiera się na kernelu Linuxa i toolchainie GNU (a opiera się na nim np. zasadnicza większość taniej chińszczyzny), to nie należy się łudzić, że kiedykolwiek będzie ono implementowało ten standard.

    • Adi

      Ten standard dotyczy aktualizacji OTA. Nikt nie zabroni Ci podpiąć się do urządzenia kablem, odblokować bootloader i podmienić klucz szyfrujący.