08 sierpnia 2010

Twórcy Gadu-Gadu ułatwili permanentną inwigilację?

Jeden z czytelników HARD CORE SECURITY LAB natknął się na interesujący problem dotyczący popularnego polskiego komunikatora Gadu-Gadu. Okazuje się, że po ostatnich dość intensywnych zmianach w zasadach funkcjonowania samego komunikatora oraz wykorzystywanego przez niego protokołu, umożliwione zostało (prawdopodobnie w wyniku niedopatrzenia) niezwykle proste podsłuchiwanie oraz manipulowanie transmisjami innych użytkowników. Oto w jaki sposób Łukasz Wójcik zaprezentował mi szczegóły swego odkrycia.

Autorem poniższego tekstu oraz zrzutów ekranowych jest Łukasz Wójcik (e-mail: lukasz-wojcik w domenie poczta.pl).

Natknąłem sie na dosyć ciekawy błąd, czy też niedopatrzenie ze strony załogi gg. Od czerwca ekipa gg dosyć mocno mieszała w swoim dziecku, częste pady serwerów, zmiany adresów ip serwerów, zmiany w protokole Gadu. Niekoniecznie były to zmiany na lepsze. Chcieli dobrze, wyszło jak zawsze.

Jeszcze jakieś 2 - 3 miesiące temu, gdy wszystko było po staremu, czyli gdy dany numer Gadu był połączony i próbowano nawiązać nowe połączenie, powodowało to wywalenie juz połączonej osoby, można więc było zorientować sie, że coś jest nie tak. Na dzień dzisiejszy coś takiego juz nie występuje i nikt nie jest w stanie tego zauważyć.

Mianowicie, chodzi o to, że znając hasło użytkownika komunikatora GG (sposobów jest milion, od podejrzenia, poprzez wysniffowanie czy też zainstalowanie keyloggera), można w czasie rzeczywistym czytać jego rozmowy, można czytać zarówno wiadomości wychodzące jak i przychodzące (zrzuty 4 oraz 7), można wtrącać sie do rozmowy, a nieświadome "ofiary" niczego nie zauważą. Można również dowolnie manipulować statusem jak i opisem "ofiary" (zrzuty 2, 3 oraz 8). Najgorsze jest to, że ofiara nie jest świadoma, iż jest "podglądana".

Problem polega na tym, że załoga Gadu chcąc stworzyć multikomunikator, połączony z Blipem, gg.pl i innymi cudami (na kiju), przeoczyła chyba najważniejszą rzecz. Otóż pozwolili na wiele równoległych połączeń z tego samego numeru gg, w związku z tym naście milionów użytkowników jest narażona na permanentną inwigilacje.

Bląd nie zależy od zainstalowanej wersji komunikatora GG, może to być zarówno GG7, Nowe Gadu-Gadu, GG10, EKG, Kadu, tlen (wtyczka do gg) czy też można natknąć sie na niego korzystając z transportu gg na Jabberze. wniosek nasuwa sie sam - błąd w protokole gg.

Na szczęście można problem rozwiązać w bardzo prosty sposób. Można pozwolić na wiele połączeń z jednego numeru, jednak należy zablokować możliwość wielu równoległych polaczeń z rożnych adresów IP.




[Od redakcji]
Oczywiście do udanego ataku niezbędna jest znajomość hasła ofiary, nie mniej jednak bardzo często jego zdobycie (np. w sytuacji gdy intruz korzysta z tego samego fizycznego komputera) jest stosunkowo proste. Właśnie dlatego w przypadku wszelkich usług sieciowych niezbędne są mechanizmy blokowania równoczesnego dostępu z wielu różnych adresów sieciowych lub chociaż ostrzegania o wystąpieniu tego typu przypadków.