inteligentny dom

Inteligentny dom, ale czy bezpieczny?

Od sieci do Internetu Rzeczy

Prezes firmy Sun Microsystems – Scott McNealy podkreślił kiedyś znaczenie sieci komputerowych słynnym stwierdzeniem „dopiero sieć to komputer”. W czasach moich studiów przypadających na okres rozkwitu Internetu w Polsce używałem często parafrazy tego zdania: „dopiero Internet to sieć”. Dzisiaj pokusiłbym się o kolejne rozwinięcie tej chwytliwej myśli: „dopiero Internet Rzeczy to Internet”.

Od pojedynczego komputera podłączonego do Internetu w każdym domu przeszliśmy bowiem do domowych sieci, w których 2-3 komputery, kilka smartfonów, tablet, drukarka, telewizor, konsola, sprzęt audio i AGD stają się codziennością. Nie zdajemy sobie nawet z tego często sprawy ile urządzeń w naszych domostwach korzysta już z Internetu. Sam swego czasu złapałem się na tym, że ustawiona na domowym routerze pula DHCP składająca się z 10 adresów IP została wyczerpana.

Na popularności zyskują też systemy inteligentnych domów, w skład których wchodzą m.in. videodomofony, kamery, alarmy, sterowane smartfonem oświetlenie, ogrzewanie, rolety. Kilkanaście czy nawet kilkadziesiąt urządzeń podłączonych do domowej sieci nikogo więc już nie dziwi. Tutaj jednak zaczynają się problemy.

Bezpieczeństwo sieci domowych

Konfiguracja sieci domowej odbywa się często bez udziału osób mających w tym temacie doświadczenie i wiedzę ekspercką. Sprzyjają temu producenci urządzeń, które konfigurowane są w sposób mający zapewnić jak największą wygodę i prostotę użytkowania. Kupując router domowy często wyciągamy go z pudełka, włączamy i po paru minutach możemy cieszyć się skonfigurowaną siecią. Na komputerze czy smartfonie wystarczą dwa kliknięcia i każde nowo przyniesione do domu urządzenie staje się częścią globalnej sieci. Niestety od producenta, poprzez dostawcę, aż po użytkownika końcowego nikt nie zadaje sobie na poważnie pytania na ile dane rozwiązanie jest bezpieczne i jakie mogą być konsekwencje ewentualnego naruszenia bezpieczeństwa.

Bezpieczeństwo inteligentnych domów – studium „przypadku”

Do napisania tego artykułu skłoniła mnie sytuacja, z którą spotkałem się przypadkowo. Podczas wizyty u znajomych w miejscu, gdzie sieć komórkowa działa dosyć słabo zauważyłem otwartą sieć wifi o nazwie „Mikrotik-xxxx”. Ponieważ znam Mikrotika i wiem, że są to raczej urządzenia dla bardziej zaawansowanych i wymagających użytkowników, pomyślałem, że może to sprzęt jakiegoś lokalnego operatora Internetu. Tylko dlaczego otwarta? Może się zresetował do ustawień fabrycznych? Warto sprawdzić co też w niej znajdę, pomyślałem. Poniżej wynik działania narzędzia netdiscover:

-----------------------------------------------------------------------------
IP Count Len Vendor / Hostname
-----------------------------------------------------------------------------
10.0.1.1   229 9618 Routerboard.com
10.0.1.103   5  210 Apple, Inc.
10.0.1.113  25 1500 Unknown vendor
10.0.1.117   4  240 Samsung Electronics Co.,Ltd
10.0.1.121   3  180 D&M Holdings Inc.AUDIO
10.0.1.138   3  180 Brother
10.0.1.64    1   60 Ubiquiti Networks Inc.
10.0.1.2     1   60 Loxone Electronics GmbH
10.0.1.10    1   60 Apple, Inc.
10.0.1.100   1   60 Sony Corporation
10.0.1.101   1   60 Hon Hai Precision Ind. Co.,Ltd.
10.0.1.102   1   42 Apple, Inc.

Widzimy tutaj 3 urządzenia Apple’a, sprzęt audio-video, drukarkę, router i kilku mniej znanych producentów. Te mniej znane urządzenia okazują się być systemem audio oraz serwerem do sterowania instalacją inteligentnego domu, co widać poniżej.

bezpieczeństwo inteligentnych domów - audio

Włączenie sąsiadowi systemu audio na cały regulator w środku nocy mogłoby być niezłym dowcipem, ale można by sobie też wyobrazić sytuację, w której skutkuje to poważnymi konsekwencjami zdrowotnymi. Czy producent bierze ten fakt pod uwagę? Niestety nie. W systemie nie ma nawet możliwości zabezpieczenia dostępu do panelu hasłem.

Skanujemy sieć

Do szybkiego zbadania zagrożeń w danej sieci używam najczęściej systemu OpenVAS. Poniżej raport z jego działania po kilku minutach pracy:

bezpieczeństwo inteligentnych domów - skanowanie

Jak widać, najwięcej podatności i to najbardziej krytycznych (7.8-10 w 10-stopniowej skali CVSS) dotyczy routera mikrotik. Router ten okazuje się pracować pod kontrolą routerOS w wersji 6.34.3. Jest to wersja zawierające bardzo poważne luki odkryte na początku 2018 roku. Wśród nich znajdują się między innymi błędy umożliwiające zdalnie wykonanie kodu na urządzeniu, jego przejęcie oraz odczytanie loginów i haseł użytkowników. A wszystko to możliwe jest do przeprowadzenia za pomocą gotowych exploitów, które pobrać można z Internetu. Poniżej efekt działania jednego z nich zakończony przejęciem systemowego shella z prawami roota:

bezpieczeństwo inteligentnych domów - mikrotik exploit

Wykonanie kilku komend w powłoce systemowej pozwala na pobranie pliku user.dat, w którym zakodowane są loginy i hasła użytkowników. Jego odkodowanie możliwe jest przy użyciu kolejnego gotowego narzędzia. Hasło składało się ze słowa i 4-cyfrowej liczby. Dla sprawdzenia weryfikuję czy przy jego użyciu da się zalogować do interfejsu administracyjnego:

inteligentny dom - mikrotik admin

Czas na inteligentny dom

Znaleziony w sieci system inteligentnego domu firmy Loxone na pierwszy rzut oka wydaje się spełniać pewne minimalne standardy bezpieczeństwa. Rejestruje on np. nieudane logowania do interfejsu administracyjnego i po kilku próbach blokuje na dłuższą chwilę możliwość podejmowania kolejnych. Na formularzu logowania nie da się zatem przeprowadzić wydajnego ataku metodą słownikową czy siłową. Hasło admina wyciągnięte z Mikrotika sprawdziłem oczywiście w pierwszej kolejności, ale tutaj ktoś okazał się przezorny i ustawił inne. Zobaczmy zatem czy jeszcze jakieś usługi lub porty są dostępne na tym samym urządzeniu:

Nmap scan report 
Host is up (0.29s latency).
Not shown: 996 filtered ports
PORT STATE SERVICE
21/tcp open ftp
80/tcp open http
443/tcp open https
8080/tcp open http-proxy

Nmap done: 1 IP address (1 host up) scanned in 296.38 seconds

Port 21 (FTP) wydaje się być obiecujący, jednak również tutaj po kilku nieudanych próbach logowania połączenie zostaje zrywane. Zauważam jednak coś obiecującego. Odpowiedź serwera FTP różni się w zależności od tego czy podamy istniejącą, czy nieistniejącą nazwę użytkownika. Fakt ten można wykorzystać do ustalenia czy w systemie występują inne nazwy użytkowników poza głównym kontem ‚admin’. Na taką analizę i ewentualne dalsze próby siłowe potrzeba jednak więcej czasu, którego ja nie miałem.

Na tym postanawiam więc zakończyć szybki audyt, ale zwracam uwagę na jeszcze jeden fakt. Strona logowania do systemu Loxone dostępna jest też po protokole http i w przypadku łączenia się za jego pomocą nie następuje automatyczne przekierowanie na wersję szyfrowaną (https). Możliwym wektorem ataku na dane uwierzytelniające jest więc atak typu man in the middle np. poprzez zatrucie tablicy ARP i przechwycenie ruchu pomiędzy serwerem a komputerem użytkownika logującym się do niego. Uruchomienie odpowiedniego sniffera i przechwycenie hasła przesyłanego z przeglądarki to tylko kwestia czasu. Pamiętajcie jednak, że potencjalni intruzi będą nim dysponować, zatem opisywanej konfiguracji zdecydowanie nie można uznać za bezpieczną.

Podsumowanie.

Co spowodowało, że w tak prosty sposób możliwe było przejęcie kontroli nad domową siecią? Po pierwsze brak odpowiedzialności po stronie producentów systemów. Gdyby np. dziurawy Mikrotik sam pobierał i instalował krytyczne aktualizacje jego przejęcie nie byłoby takie łatwe. Ale wymagałoby to oczywiście dużego nakładu pracy i zaangażowania producenta w budowę takiego rozwiązania. To samo tyczy się systemu Loxone. Szyfrowanie komunikacji przy użyciu HTTPS to dzisiaj standard, a sam proces bezpiecznego logowania zdecydowanie należy do kategorii ‚must have’. Komunikaty systemowe pozwalające na enumerację nazw użytkowników to też raczej jeden z podstawowych błędów, których programiści powinni się wystrzegać.

Kolejny problem to brak świadomości albo ignorancja samego użytkownika. Nie wyobrażam sobie jak można się nie zastanawiać nad faktem, że dostęp do naszej sieci domowej nie wymaga podania hasła? Z drugiej strony nawet wśród informatyków spotykam się czasem przeprowadzając audyty z takim podejściem „nie mamy w sieci serwera DHCP więc nikt się nie połączy bo nie dostanie adresu”. Być może dla niektórych jest to trudne do wyobrażenia, że ktoś może dysponować czasem i na chybił trafił próbować łączyć się z różnymi sieciami, adresami czy odgadywać hasła. W analizie ryzyka są to jednak zdarzenia, którym zawsze przypisuje się wartość prawdopodobieństwa równą 100%.

A czy to etyczne?

Czy „grzebanie” komuś w sieci jest etyczne? To oczywiście zależy od motywów i punktu widzenia. Jak śpiewał kiedyś Kazik Staszewski „są różne odcienie szarości, od czerni do białości”. Ten cytat bardzo fajnie pasuje do nomenklatury white hat, black hat, gray hat hackers. Oczywiście już samo łączenie się i skanowanie czyjejś sieci może podpadać pod definicję przestępstwa komputerowego. Ja swoje testy zakończyłem wspólną ze znajomym wizytą u jego sąsiada. Powiadomiliśmy go o zagrożeniu i poprosiliśmy o przebaczenie w zamian za pomoc w załataniu dziurawego Mikrotika.

Jeżeli jednak mowa o etyce to warto byłoby zadać pytanie, czy etyczne jest pójście na łatwiznę przez twórców oprogramowania, producentów sprzętu IoT, aż po firmy wdrożeniowe, które narażają klienta na poważne zagrożenia ze strony internetowych intruzów. Przed nami niestety jeszcze długa droga do tego, aby bezpieczeństwo inteligentnych domów spełniało chociaż podstawowe standardy.

Podobał Ci się tekst? Pomóż nam w jego promocji.

Leave a Reply

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

This site uses Akismet to reduce spam. Learn how your comment data is processed.