Niedawno w moje ręce wpadła tania chińska kamera IP. Jako że lubię wiedzieć jak dany sprzęt działa, trafiła ona na mój bezpiecznikowy warsztat. Rezultaty poniżej.
Co na portach piszczy
Szybkie skanowanie nmap-em urządzenia wskazało kilka otwartych portów:
![nmap skan kamery](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_715,h_338/https://my127001.pl/wp-content/uploads/2021/04/image-1.png)
- Port 80 : Tutaj znajduje się interfejs webowy do zarządzania kamerą. Zabezpieczony jest loginem i hasłem. Jest to o tyle ciekawe, że instrukcja o nim nie wspomina (mówi tylko o obsłudze kamery dedykowaną aplikacją). Posiada on kilka błędów bezpieczeństwa, niemniej nie poświęcałem mu zbyt wiele czasu.
- Port 554 : usługa rtsp Hipcam IP camera rtspd 1.0. Real Time Streaming Protocol służy do przesyłania danych w czasie rzeczywistym , w tym przypadku wideo z kamery. Największa bolączka z punktu widzenia bezpieczeństwa, ale o tym dalej.
- Port 1935 : Real Time Messaging Protocol – protokół stworzony przez Adobe Systems dla streamingu audio, wideo i danych, pomiędzy playerem Flash a serwerem.
- Port 8080 : Onvif (Open Network Video Interface Forum) – komunikacja soapowa. Standard komunikowania się ze sobą urządzeń w sieci w ramach monitoringu wideo.
Wielki brat patrzy – podziel się ze światem swoim życiem domowym
Moim zdaniem głównym problemem tanich chińskich kamer IP jest kiepska dokumentacja techniczna i niebezpieczne domyślne ustawienia. Mianowicie nie znajdziemy w niej informacji o tym, że na porcie 554 domyślnie włączony jest RTSP a co za tym idzie streamowanie wideo. Dodatkowo domyślnie zaznaczona jest opcja, że dostęp do takiego streamu nie wymaga uwierzytelnienia:
![IP camera RTSP](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_807,h_543/https://my127001.pl/wp-content/uploads/2021/04/image-2.png)
Osoby nietechniczne, a nawet te techniczne zajmujące się zawodowo tematem montażu monitoringu o tym nie wiedzą. Podłączenie takiej kamery do Internetu z publicznym adresem IP powoduje podzielenie się ze światem zarówno obrazem jak i dźwiękiem z takiej kamery.
Dodatkowo kamery te domyśłnie mają uruchomioną jeszcze jedną usługę dostępu do siebie z sieci. Odbywa się to poprzez protokół P2P. Tutaj natomiast aby uzyskać dostęp do wideo jest już wymagane uwierzytelnienie i posiadanie unikalnego UIDa kamery. Tylko co w przypadku gdy nieświadomy użytkownik nie zmieni domyślnych danych dostępowych?
![ip camera soft](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_969,h_354/https://my127001.pl/wp-content/uploads/2021/04/image-3.png)
Problem jest globalny a ryzyko prawdziwe
Shodan zaindeksował 99,469 kamer na całym świecie z czego 489 w Polsce, które udostępniają w Internecie swój streaming po RTSP na porcie 554.
![shodan kamery ip](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_1024,h_652/https://my127001.pl/wp-content/uploads/2021/04/image-4-1024x652.png)
Znajdują się tutaj zarówno kamery umiejscowione w sklepach, zakładach usługowych jak i te z prywatnych domów. Nie brakuje kamer umiejscowionych za ekranem komputera (można podejrzeć hasła użytkownika) czy nad terminalem płatniczym (wyciek kodów pin). Najbardziej przerażają mnie te umiejscowione w domach starszych osób lub pokojach dziecięcych.
Całego świata nie zbawię, niemniej do dwóch nieświadomych użytkowników udało mi się dotrzeć. Poinformowałem ich o nieprawidłowej konfiguracji kamery. Jednym z nich był wysoko postawiony pracownik „zielonego” banku. Kamera umieszczona w salonie, streamująca zarówno dźwięk jak i obraz:
![hacking kamer ip](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_714,h_472/https://my127001.pl/wp-content/uploads/2021/04/image-8.png)
Szczęście w nieszczęsciu, że oprócz kamery nieświadomy użytkownik udostępniał swoją stronę internetową wraz z imieniem i nazwiskiem:
![strona dyrektora](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_458,h_476/https://my127001.pl/wp-content/uploads/2021/04/image-6.png)
Wiadomość za pomocą portalu Linkedin wystarczyła:
![linkedin rozmowa](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_518,h_471/https://my127001.pl/wp-content/uploads/2021/04/image-10.png)
Drugim przypadkiem był streaming z gabinetu dentystycznego kilku kamer:
![gabinet kamera ip](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_768,h_472/https://my127001.pl/wp-content/uploads/2021/04/image-5-1024x629.png)
![gabinet kamera ip](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_573,h_359/https://my127001.pl/wp-content/uploads/2021/04/image-9.png)
W identyfikacji źródła „wycieku” pomogła przesyłka znajdująca się na blacie recepcji i powiązanie kilku faktów. Zgłoszenie telefoniczne naprawiło sytuację związaną z prywatności pacjentów.
![stream kamera ip](https://sp-ao.shortpixel.ai/client/to_auto,q_lossy,ret_img,w_711,h_382/https://my127001.pl/wp-content/uploads/2021/04/image-11.png)
Szacun! Brawa 🙂
Dziękuję 🙂
a sprawdzales z czym laczy sie kamera ? bo to co tu pisze to sa podstawy podstaw
O co dokładniej pytasz?
Koledze pewnie chodzi o to czy sama kamera nie łączy się np z chińskim serverem i tam po kryjomu nie wysyła obrazu albo zrzutów obrazu.
Nie wiem, czy można zaliczyć to jako opcje „po kryjomu”, ale owszem kamera kontaktuje się z chińską chmurą i wysyła tam obraz. Odbywa się to w ramach „funkcjonalności” dostępu do kamery z internetu za pomocą protokołu P2P i portach UDP. Całość jest ciężka w testowaniu i oprócz snifowania wiresharkiem nic ciekawego nie udało mi się osiągnąć.
Dobry artykuł. Dzięki