Device Shadow - czym są i czy są bezpieczne?
| Gospodarka Mikrokontrolery i IoTInternet Rzeczy to jedna z obecnie dynamiczniej rozwijających się technologii. Jej potencjał jest ogromny, a aplikacji dla IoT stale przybywa. W analogicznym tempie rosną wyzwania związane z organizacją i zarządzaniem sieciami Internetu Rzeczy, które wynikają z ich ogromnych rozmiarów, liczonych w milionach sztuk węzłów. Aby im sprostać, dostawcy usług w tym zakresie opracowują różnego typu usprawnienia. Takim jest IoT Device Shadow firmy AWS (Amazon Web Services), które przybliżamy w artykule.
Usługa AWS IoT Device Shadow tworzy wirtualne reprezentacje rzeczywistych urządzeń IoT (cienie). Są one przechowywane w chmurze, dzięki czemu udostępniają aplikacjom i usługom aktualny stan węzłów IoT. Jest on dostępny bez względu na to, czy urządzenia te są połączone z siecią, czy się od niej odłączyły (celowo lub niecelowo, na przykład przez utratę zasięgu). Co więcej, za pośrednictwem cieni aplikacje i usługi mogą ten stan modyfikować.
Cienie w praktyce, czyli wykorzystywanie IoT Device Shadow
Wyróżnić można tu dwa scenariusze. W pierwszym urządzenie jest podłączone. Jeżeli jakaś aplikacja zaktualizuje jego status, odwołując się do jego cienia, system nadrzędny opublikuje komunikat o tej zmianie. Urządzenie po odebraniu tej wiadomości zaktualizuje swój status i także zgłosi w systemie (w chmurze), że dokonało zmian. Wówczas usługa Device Shadow automatycznie odzwierciedli ten zaktualizowany status w odpowiednim cieniu. Aplikacje subskrybują informacje o zmianach lub wysyłają do cieni zapytania o ich aktualny stan.
W drugim przypadku, gdy urządzenie przechodzi w tryb offline, aplikacje mogą wciąż komunikować się z jego cieniem. Gdy dany węzeł IoT ponownie nawiąże połączenie z chmurą, otrzyma bieżący status swoich cieni. Na tej podstawie będzie mógł swój stan uaktualnić.
Typy cieni
Usługa AWS Device Shadow obsługuje cienie nazwane i nienazwane. Urządzenie IoT może mieć wiele nazwanych cieni, ale nie więcej niż jeden nienazwany, przy czym jednocześnie mogą być to cienie obu typów. Generalnie jednak, ze względu na różnice w dostępie, efektywniejsze jest zwykle korzystanie z tylko jednego typu device shadow. W prostszych przypadkach zaleca się opierać na cieniach nienazwanych, które jedynie reprezentują urządzenie.
Dzięki nazwanym cieniom można natomiast tworzyć różne widoki statusu urządzenia IoT. Przykładowo, jeżeli ma on wiele cech, rozwiązaniem jest podział go na cienie odpowiadające grupom jego właściwości. Pozwala to wdrożyć kontrolę dostępu do poszczególnych cech.
AWS Device Shadow - zalety cieni urządzeń
Usługa Device Shadow ma na celu uproszczenie i poprawę komunikacji między urządzeniami IoT a systemem nadrzędnym. Jest to szczególnie pożądane w przypadku dużych sieci Internetu Rzeczy, ponieważ zarządzanie wieloma punktami końcowymi w różnych środowiskach zwykle stanowi duże wyzwanie. W tym zakresie cienie mogą okazać się bardzo przydatne. Przykładowo ułatwiają aktualizację. Można sobie wyobrazić sytuację, w które należy pilnie zaktualizować zabezpieczenia w sieci IoT. Aby to zadanie przebiegło sprawnie najlepiej i aby jednocześnie załatana została luka bezpieczeństwa we wszystkich jej węzłach. Jeśli jednak któreś z urządzeń jest akurat niedostępne, później trzeba jego fi rmware zaktualizować oddzielnie. Przesyłanie poprawek do każdego urządzenia indywidualnie jest nieefektywne.
W przypadku, gdy w chmurze są dostępne cienie, można tego uniknąć. Device shadow odłączonego węzła IoT otrzyma bowiem niezbędną aktualizację wraz z innymi, a potem zainstaluje ją, kiedy urządzenie, które reprezentuje, ponownie połączy się z systemem nadrzędnym. Niska przepustowość ani zakłócenia dzięki temu nie blokują zatem takich operacji.
Odciążenie sieci
Dzięki cieniom, jeśli urządzenie się rozłączy, w dalszym ciągu możliwy jest dostęp do informacji o jego statusie z innego urządzenia albo aplikacji. Sprawia to, że kompletne dane o stanie oraz przepływie informacji w sieci IoT również są zawsze pod ręką. Ułatwia to jej diagnostykę oraz szybkie wychwytywanie problemów, na przykład zagrożeń cyberbezpieczeństwa.
Cienie ograniczają też ruch sieciowy, ponieważ znaczna jego część dzięki nim zostaje przeniesiona do chmury. Warto dodać, że device shadow obsługują zapytania i polecenia wysyłane do urządzenia IoT nie tylko wówczas, gdy jest wyłączone albo znajduje się poza zasięgiem, ale również wtedy, gdy jest przeciążone. Generalnie zatem przyczyniają się do upłynnienia ruchu, co jest szczególnie ważne w dużych i rozległych sieciach.
Cienie zapewniają jednolity interfejs do interakcji z różnymi urządzeniami, umożliwiając prostszą komunikację, biorąc pod uwagę to, że w obszarze protokołów łączności dla urządzeń Internetu Rzeczy wciąż istnieje duża różnorodność. Brak standaryzacji w tym zakresie utrudnia zatem tworzenie nowych aplikacji i usług, szczególnie w bardzo dużych sieciach IoT. Cienie ten problem rozwiązują.
Na co trzeba uważać, wykorzystując cienie urządzeń?
Mimo licznych korzyści, jakie zapewniają cienie, mają one też ograniczenia. Chodzi przede wszystkim o problemy z cyberbezpieczeństwem, które mogą się pojawić. Lekceważąc zagrożenia, jakie potencjalnie w tym zakresie wiążą się z korzystaniem z wirtualnych replik w chmurze, łatwo można dopuścić do powstania luk bezpieczeństwa w swojej sieci IoT.
Najważniejsze jest, aby mieć świadomość, że jeżeli dane urządzenie ma swój cień, to tak naprawdę nigdy nie jest wyłączone. Trzeba o tym pamiętać, ponieważ dotychczas węzły IoT, które były odłączone, z automatu nie były traktowane jako potencjalna furtka dla hakerów. Jeżeli jednak urządzenie ma swoją cyfrową replikę, przestępcy w praktyce nadal mogą wysyłać do niego polecenia, które zostaną wykonane, jak tylko ponownie połączy się ono z siecią.
Łatwo jest takie potencjalne zagrożenie zbagatelizować albo go zwyczajnie nie zauważyć, myśląc, że odłączony węzeł sieci nie stanowi zagrożenia. Chociaż polecenia, które cyberprzestępcy mogą wysyłać do cieni i za ich pośrednictwem są przeważnie ograniczone, nadal mogą powodować szkody. Ze względu na specyfikę urządzeń Internetu Rzeczy, którymi mogą być nawet bardzo słabo zabezpieczone „rzeczy”, często jednorazowego użytku, nieautoryzowany dostęp do nich zawsze był problemem, który cienie, bez wdrożenia odpowiednich zabezpieczeń, mogą niestety jedynie zwiększyć.
Podsumowanie
Bezpieczeństwo sieci Internetu Rzeczy powinno być priorytetem. Nie oznacza to jednak, że musi być zapewniane kosztem sprawności zarządzania nimi. Funkcje, takie jak cienie urządzeń, które mogą poprawić efektywności, wymagają jednak, aby wziąć pod uwagę wszystkie ich konsekwencje dla bezpieczeństwa. Trzeba być więc czujnym i licząc się z możliwością wykorzystania przez hakera cieni do kontrolowania urządzeń IoT, należy uważnie monitorować wszystkie dane ich dotyczące.
W serwisach takich jak AWS jest to ułatwione, ponieważ przypisują one unikalne identyfikatory urządzeniom lub użytkownikom, którzy wysłali dane lub polecenia. Można też uzyskać dostęp do wszystkich oczekujących poleceń, jak też historii aktualizacji cienia. Taka funkcjonalność po pierwsze umożliwia wdrożenie mechanizmów kontroli dostępu, a po drugie pozwala na rozpoznanie nietypowego zachowania, które może wskazywać na aktywność hakerów.
Monika Jaworowska
źródło zdjęć: Bosch