Popularny program do wykonywania i udostępniania zrzutów ekranu dzisiaj w nocy rozsyłał swoją zainfekowaną aktualizację. Czy warto wyłączyć automatyczne aktualizacje, czy też trzeba ślepo zaufać autorom używanego oprogramowania?
Na każdym komputerze zainstalowane są dziesiątki programów. W programach tych regularnie odkrywane są błędy, wymagające aktualizacji. Ręczne sprawdzanie dostępnych nowych wersji jest praktycznie niemożliwe. Niestety automatyczne instalowanie aktualizacji także niesie za sobą poważne ryzyko.
Aktualizacja z bonusem
Użytkownicy aplikacji puush, których program pobrał nową wersję wczoraj między 20:59 a 23:41 naszego czasu, zostali zainfekowani bliżej jeszcze niezidentyfikowanym koniem trojańskim. Stało się to bez ich wiedzy i aktywnego udziału. Twórcy aplikacji nie wyjaśnili jeszcze jak doszło do rozesłania złośliwej aktualizacji, jednak możliwych scenariuszy nie jest wiele – albo ktoś przejął kontrolę nad serwerem aktualizacji, albo ukradł jego domenę. To zagrożenie, często uważane za teoretyczne, może stać się w najbliższym czasie dużo poważniejsze ze względu na atrakcyjność dla przestępców.
W przestępczym ekosystemie istnieje osobny zawód – specjalista ds. spraw infekowania cudzych komputerów. Wobec coraz bardziej pogłębiającego się podziału ról rośnie podaż i popyt na poszczególne, wyspecjalizowane usługi: tworzenie złośliwego oprogramowania, szyfrowanie plików, weryfikacja czy rozpoznaje je oprogramowanie antywirusowe, instalacja na komputerach ofiar, hostowanie C&C, zarządzanie botnetem, handel wykradzionymi danymi, atakowanie kont bankowości elektronicznej – struktura wygląda jak łańcuch dostaw dużego przedsiębiorstwa. My skupimy się na instalacji złośliwego oprogramowania.
Płacę za instalację
Twórcy botnetów często nie zajmują się już sami ich dystrybucją. Kupują konia trojańskiego, usługę jego zaszyfrowania oraz usługę jego instalacji na komputerach ofiar. Koszt takiej instalacji (PPI, pay per install) wyrażany jest najczęściej w dolarach za 1000 sztuk i w dużym stopniu zależy od lokalizacji ofiary. Przykładowe stawki to:
- Australia $300–$550
- Wielka Brytania $220–$300
- Hiszpania, Niemcy, Francja $170–$250
- USA $100–$150
- Cały świat $12–$15
Sposobów instalacji złośliwego oprogramowania jest multum. Można zainfekować ofiary własnego botnetu, można za pomocą exploit packa atakować potencjalne ofiary odwiedzające daną witrynę WWW, można rozsyłać pliki przez sieci p2p, zamieszczać zainfekowane oprogramowanie na forach, rozsyłać pocztą elektroniczną – pomysłów jest tyle, ilu ich autorów. Większość metod jest jednak pracochłonna i daje stosunkowo niski poziom skuteczności. A gdyby ofiary same automatycznie zgłosiły się po swoją kopię konia trojańskiego?
Podkładanie świni, a w zasadzie prosiaka
Najstarsi czytelnicy naszego serwisu mogą pamiętać, że kiedyś popularny w naszym kraju był koń trojański polskiego autorstwa, funkcjonujący pod nazwą Prosiak. Nie słyszeliśmy, by był rozsyłany zamiast aktualizacji popularnych programów, ale za to znamy kilka innych przypadków.
Dystrybucja złośliwego oprogramowania w formie aktualizacji pobieranej automatycznie przez program z tysiącami użytkowników to bardzo efektywna metoda infekcji. Kosztem jest jedynie przełamanie zabezpieczeń mechanizmu dystrybucji, stopnień zainfekowania wynosi zapewne blisko 100% a grupa docelowa może – w zależności od ofiary – być dość liczna. Nie wiemy, ilu użytkowników programu puush pobrało złośliwą aktualizację, ale samych obserwujących konto Twittera jest kilka tysięcy, program pobiera aktualizację co 1-6 godzin a złośliwa wersja była dostępna przez prawie 3 godziny.
Puush nie jest jedyną ofiarą takiego ataku. W 2013 ktoś włamał się na serwery Opery i opublikował złośliwą aktualizację tej popularnej przeglądarki. Plik był dostępny przez ok. pół godziny i mógł zostać pobrany przez kilka tysięcy komputerów. Co gorsza, plik był podpisany prawdziwym certyfikatem Opery (choć już nieaktualnym).
Inny przykład – i to zaledwie sprzed 5 dni – to fałszywa aktualizacja popularnego programu FTP FlashFXP. W tym przypadku doszło do przekierowania części ruchu użytkowników na podstawiony serwer z aktualizacjami. Atak najprawdopodobniej przeprowadzono za pomocą zatruwania serwerów DNS.
Metody obrony
Na szczęście przed tego rodzaju atakiem nie jest trudno się obronić. Problem leży jedynie w fakcie, że mechanizmy obronne powinien przede wszystkim stosować autor oprogramowania. Pierwszą i podstawową obroną jest weryfikacja cyfrowego podpisu pliku z aktualizacją. Wszystkie mechanizmy automatycznych aktualizacji wbudowane w programy powinny obowiązkowo sprawdzać podpis cyfrowy pobieranego pliku i ostrzegać użytkownika w razie gdyby nie zgadzał się on z wbudowanym kluczem. Ten prosty lecz skuteczny mechanizm może wyeliminować większość tego rodzaju ataków. Ważne, by weryfikacja poprawności podpisu następowała w oparciu o wewnętrzne mechanizmy aplikacji – korzystanie z mechanizmów systemu operacyjnego nie jest najlepszym pomysłem chociażby ze względu na problemy z dystrybucją listy odwołanych certyfikatów. Oczywiście w ten sposób nie można się uchronić przed udanymi atakami na infrastrukturę podpisującą pliki (vide Adobe lub Bit9).
Innym możliwym wektorem ataku jest podmienianie lub modyfikowanie pliku z aktualizacją w trakcie jego przesyłania do odbiorcy. Nie jest to nierealny scenariusz – niedawno w ten sposób modyfikowane były pliki pobierane przez jeden z węzłów sieci Tor. W tym przypadku również weryfikacja sygnatury będzie skuteczna, ale pomoże także szyfrowanie połączenia za pomocą protokołu SSL. Można założyć, że każdy program, pobierający swoje aktualizacje przez HTTP, robi to źle i powinien zostać natychmiast poprawiony.
Jak zatem widać z technicznego punktu widzenia nie jest trudno zablokować ten rodzaj ataku. Problem polega jednak na konieczności wprowadzenia odpowiednich modyfikacji przez twórców oprogramowania. Zobaczcie, jak aktualizują się Wasze programy (z pomocą przyjdzie lokalne proxy np. Fiddler, można także po prostu zapytać producenta) i jak weryfikują otrzymywane pliki i w razie potrzeby pogońcie autora, by naprawił problem, zanim będzie za późno. Nie rekomendujemy jednocześnie wyłączania mechanizmów automatycznej aktualizacji – ciągle przynoszą one więcej korzyści niż zagrożeń.
Komentarze
sudo apt-get upgrade
wszystko inne to jest moim zdaniem oszustwo i manipulacja.
No nie, emerge world –update też daje radę ;)
Odpowiadając samemu sobie – w zasadzie to każdy scentralizowany (na poziomie systemu i obsługujący wszystkie programy) system aktualizacji, który będzie sprawdzał skróty/podpisy pakietów da radę, niezależnie czy będzie to apt, yum, portage czy macowy wynalazek cokolwiek tam za to odpowiada. Problemem jest, gdy każdy program zaczyna sam dbać o swoje aktualizacje, mechanizmów na każdym komputerze jest tysiąc – i w którymś mechanizmie na pewno pojawi się luka umożliwiająca zainstalowanie bardziej interesującej „poprawki”.
A windowsUpdate -crash to już nie? No kurde.
Przykro mi ale nie:)
Kaspersky Software Updater – free, powinnien byc bezpiecznieszy jak uzywa sie z Antywirusa Kasperskiego.
A czy instaluje w gratisie do aktualizacji dodatki autorstwa FSB? ;)
Dlatego przydałoby się, żeby MS w końcu ustandaryzował NuGeta jako menadżer pakietów w Windows, wtedy byłoby bardzo porządnie.
Ale nie, przecież to się nie przekłada na zysk :)
(Chociaż, z drugiej strony, wtedy dostają prosto w twarz informacjami o statystykach instalacji pakietów, więc w sumie coś z tego mają)
W zwykłym komputerze żarne aplikacje nie są potrzebne – PrtScr lub ewentualnie Alt+PrtScr i już. A jak ktoś musi robić hurtowo to Irfan, klawisz C i „strzelanie” wybranym skrótem klawiszowym.
No dobra, tylko że przeciętny program do screenów pozwala paroma kliknięciami zrobić screena wybranego fragmentu ekranu, dodać adnotacje, strzałki, obfuskację i wysłać na predefiniowany hosting plików, do tego skracając link i kopiując go do schowka. Robiąc to masowo, na przykład w trakcie pisania porady na jakimś forum, można zwariować.
Problem w tym, że Puush nie dogania konkurencji i jego funkcje ograniczają się do zrobienia screenshota fragmentu ekranu i automatycznym wysłaniu na serwer. Większość użytkowników używa tej padaki chyba tylko z rozpędu: serwery ledwo dają radę, przy plikach >1MB wszystko się sypie a aplikacja dla iOS była ostatnio aktualizowana w październiku… 2010.
Do rad jak tworzyć poprawny mechanizm aktualizacji dorzuce, że warto też sprawdzać czy przypadkiem ktoś nie chce podrzucić starej (podpisanej) wersji, która może zawierać krytyczne błędy.
Oj, Prosiak, wspomnienie dzieciństwa. Jak się w 8 klasie dziewczynom na informatyce zdalne CD-romy wysuwało. Ahh…
Macie jakieś wspomnienia prosiaka?
„- Siema ziom.
– No siema.
– Browar?
– Nie mam miejsca.
*wziuuuuu wysunięta tacka cd-rom*
– Już masz :)”
Lepsze zabawy były z Sub7 i jeszcze z jednym, którego nazwy niestety zapomniałem.
ja takie dodatki mialem na początku lat 2000 w f-secure a teraz mam taką niespodziankę w g-data
Informacje na temat włamania są też dostępne na http://puushstatus.tumblr.com/ jakby redakcja nie znała tego linku ;)