03 listopada 2010

Administratorzy przemysłowych systemów IT nie dbają o bezpieczeństwo?

O SHODAN hackingu, czyli wykorzystaniu jednej z pierwszych wyszukiwarek serwerów oraz urządzeń sieciowych w celu szybkiego odnajdowania systemów potencjalnie podatnych na znane rodzaje ataków, pisałem już kilkukrotnie. Uważni czytelnicy wiedzą już więc, że za pomocą tej usługi sieciowej możemy przykładowo odnaleźć publicznie widoczne interfejsy webowe dysków NAS, czy też zupełnie niezabezpieczone urządzenia sieciowe Cisco. Dziś natomiast zajmiemy się kwestią jeszcze bardziej niepokojącą, czyli potencjalnym wykorzystaniem SHODANA do przeprowadzenia skutecznych ataków na ważne instalacje informatyki przemysłowej...

Jak z pewnością wielu czytelników już wie, całkiem niedawno odkryty został bardzo zaawansowany robak Stuxnet, który jako jeden z nielicznych na cel obrał sobie infrastrukturę typową dla informatyki przemysłowej. Malware ten rozprzestrzeniał się pierwotnie za pomocą przenośnych pamięci USB z wykorzystaniem nieznanej wcześniej luki LNK, o której jako pierwsi w Polsce mogli przeczytać oczywiście czytelnicy HCSL.

Przed przejściem do przykładów praktycznych warto wyjaśnić, że instalacje informatyki przemysłowej praktycznie zupełnie różnią się od tych tradycyjnych systemów informatycznych, tak pod względem sprzętu, jak i oprogramowania. Stuxnet był zdolny do infekowania bardzo popularnych systemów typu SCADA (ang. Supervisory Control And Data Acquisition) produkowanych przez firmę Siemens.

Robak ten był w stanie wpływać na pracę poszczególnych sterowników PLC, co potencjalnie mogło prowadzić nawet do ogromnych katastrof przemysłowych, jako że tego typu kontrolery wykorzystuje się do bezpośredniego sterowania i nadzorowania pracy rozmaitych systemów i maszyn przemysłowych. Podejrzewano nawet, że Stuxnet mógł powstać z myślą o atakach wymierzonych elektrownie atomowe. Tymczasem, jak za chwilę pokażę na kilku przykładach, ataki na instalacje przemysłowe mogą być w praktyce jeszcze prostsze!

Okazuje się, że rozmaite interfejsy związane z instalacjami informatyki przemysłowej możemy odnaleźć za pomocą wspomnianego już SHODANA i to w niezwykle prosty sposób. Jak już wspomniałem, magiczne słowo dla informatyków przemysłowych to sterownik PLC. Spójrzmy więc co znajdziemy za pomocą prostego zapytania o treści... PLC.
Wśród wyników odnajdziemy przykładowo webowe interfejsy przemysłowych systemów informatycznych:
Skoro mówiliśmy również o rozwiązaniach typu SCADA, spróbujmy takiego właśnie zapytania. Niektóre wyniki również wyglądają na interfejsy związane z instalacjami przemysłowymi:
Przyznam, że w trakcie studiów nie darzyłem zajęć z informatyki przemysłowej szczególną sympatią, jednak w pamięci szczególnie utkwiły mi laboratoria praktyczne z oprogramowania CIMPLICITY. Spróbujmy więc przykładowo zadać zapytanie o treści CIMPLICITY-HttpSvr. Również otrzymamy kilkadziesiąt wyników. Duże znaczenie w instalacjach przemysłowych mają także systemy Siemens Simatic, spróbujmy odnaleźć jakieś interesujące wyniki po zapytaniu port:161 simatic. Ponownie odnaleźliśmy tym sposobem kilkadziesiąt instalacji przemysłowych:
W podobny sposób m.in. po nazwach producentów i technologii oraz zawartościach typowych banerów  powitalnych, możliwe jest odnalezienie setek systemów informatyki przemysłowej. Jak to w ogóle możliwe? Wygląda na to, że interfejsy te zostały całkiem umyślnie wystawione do Internetu ze względu na... lenistwo ich administratorów i użytkowników.

Zamiast umożliwić zdalny dostęp do takiego systemu jedynie za pośrednictwem technologii takiej jak VPN, ktoś po prostu otwarł go na świat, tak by możliwe było wygodne łączenie się z jego zasobami z każdego miejsca i z dowolnego komputera na świecie. Takie działania oczywiście naraża całą infrastrukturę na ataki internetowe (np. słownikowe i brutalnej siły na hasła, lub też ataki wymierzone w luki potencjalnie obecne w samym interfejsie webowym).

Jeśli już koniecznie taki interfejs chcemy wystawić do Internetu, warto w ramach jego hardeningu:
  • usunąć, wyłączyć lub chociaż zmienić nazwy domyślnych kont administracyjnych oraz treści banerów powitalnych.
  • skonfigurować mechanizm blokowania konta po kilku nieudanych próbach logowania.
  • wdrożyć politykę wymuszania stosowania silnych haseł.
  • skonfigurować audyt zdarzeń udanego i nieudanego logowania oraz tworzenia/usuwania poszczególnych kont administracyjnych i zwykłych.
Najlepszym pomysłem będzie jednak schowanie tego typu interfejsów w zakamarkach sieci prywatnej, ewentualnie dostępnej z zewnątrz jedynie za pomocą usług takich jak VPN!