XKEYSCORE pod lupą: właśnie tak analitycy wywiadu USA podsłuchiwali świat

XKEYSCORE pod lupą: właśnie tak analitycy wywiadu USA podsłuchiwali świat06.07.2015 20:43
XKEYSCORE pod lupą: właśnie tak analitycy wywiadu USA podsłuchiwali świat

Ujawnione przez blog The // Intercept informacje na tematoprogramowania XKEYSCORE, wykorzystywanego przez amerykańskąAgencję Bezpieczeństwa Narodowego (NSA) do inwigilacji ruchuinternetowego i pozyskiwania wrażliwych danych na ogromną skalę zjednej strony przeraziła, z drugiej zaskoczyła. Przeraziła,ponieważ gdy o narzędziu tym napisał po raz pierwszy brytyjski TheGuardian, jego możliwości wydawały się skromniejsze. Zaskoczyła,gdyż zastosowane w XKEYSCORE rozwiązania nie były specjalniewyrafinowane. Do jego budowy w dużym stopniu wykorzystano popularneoprogramowanie Open Source, bez mechanizmów kontrolnych,pozwalających nadzorować pracę jego użytkowników.

Jak już wcześniej pisaliśmy, narzędzie NSA zbudowano na stosieotwartego oprogramowania, uruchamianego pod kontrolą serwerów RedHat. Serwer WWW Apache, baza MySQL, sieciowy system plików NFS,zarządzanie zadaniami przez crona, modyfikacja opcji poprzezdziałające z linii komend narzędzia konfiguracyjne i edytor vim,synchronizacja przez rsynca. Użytkownicy logują się za pomocąaplikacji webowej dostępnej przez Firefoksa, z wykorzystaniemuwierzytelnienia login/hasło lub za pomocą kryptografii kluczapublicznego.

Węzły z maszynami na których działa XKEYSCORE znajdowały sięw 2009 roku w 125 miejscach na świecie. Liczba serwerów zależnabyła od znaczenia danego węzła, a cały system zbudowano tak, byłatwo się skalował poprzez dodawanie kolejnych maszyn do klastra.Na przedstawionej w dokumencie sprzed sześciu lat mapce nie mażadnych lokalizacji w Polsce. Obstawione były za to kraje EuropyZachodniej i Bliskiego Wschodu, NSA zdołało także umieścić swojewęzły w Rosji i Chinach. Taki węzeł wszystkie zgromadzone daneprzetwarza lokalnie w swoich bazach MySQL, ale zarazem wspierasfederowany system wyszukiwania, tak że analityk siedzący wcentrali NSA nie musi podróżować do Chin czy Rosji – jegozapytanie wpisane do aplikacji webowej zostanie przetworzonerównolegle na wszystkich węzłach.

Mapa zasięgu XKEYSCORE z 2009 roku
Mapa zasięgu XKEYSCORE z 2009 roku

Aplikacja webowa nie jest jedynym jednak sposobem na odpytywaniebazy XKEYSCORE. Pewne założenia, jakie przyjęto w systemie wydająsię pozornie niezrozumiałe, dopóki nie uświadomimy sobie, żeoficjalnie inwigilacji nie wolno było prowadzić na terenie USAprzeciwko obywatelom tego kraju. Zwykły analityk, logując się dosystemu, pozostawiał kompletny ślad swoich działań w logach, takwięc jeśli chciałby zrobić coś nielegalnego z punktu widzeniaamerykańskiego prawa, źle by się to dla niego skończyło w razieoficjalnego śledztwa. W wypadku administratorów systemu wyglądałoto zupełnie inaczej. Używali oni wszyscy jednego wspólnego konta onazwie „oper”, dzięki czemu nie było możliwe ustalenie, ktokonkretnie wykonał daną operację. Co więcej, administratorzymogli bezpośrednio wpisywać kwerendy MySQL, całkowicie omijająclogi XKEYSCORE, co pozwalało im zadawać systemowi pytania, którychzadawać oficjalnie nie mogli.

Programistów może zainteresować, jak NSA poradziło sobie zprzetwarzaniem na bieżąco tak wielkiej ilości danych (tylko w 2009roku jeden węzeł mógł przechwytywać 20 terabajtów danychdziennie, kto wie, ile tego jest dzisiaj?). Z surowych danych sąotóż wydobywane treść i metadane, które następnie zostająotagowane według automatycznych reguł AppID, pisanych w specjalniestworzonym do tego języku o nazwie GENESIS. Oprogramowanierozpoznaje charakterystyczne cechy poszczególnych aplikacji i usług,a reguły pozwalają stworzyć z tego identyfikator, o któryanalityk może następnie odpytać bazę. W 2010 roku takich regułbyło niemal 10 tysięcy, a tworzenie kolejnych było całkiem łatwe.Razem układały się w hierarchiczną taksonomię, przypominającądrzewo katalogów. I tak komunikacja z Gmaila była określana jakomail/webmail/gmail, żądania mechanizmu Windows Update oznaczanojako update_service/windows, szyfrowane za pomocą PGP e-maile jakoencryption/pgp/message, a ruch z przeglądarki iPhone'a jakobrowser/cellphone/iphone. Wpływający do węzłów XKEYSCORE ruchsieciowy był segregowany według tych reguł i tagowany cyfrowymiodciskami, pozwalającymi wykryć określony typ treści. W tensposób analitycy dostawali do ręki możliwość wyszukiwaniazarówno podług reguł-kategorii, jak i odcisków-tagów.

W razie jeśli dany strumień danych zostałby zaklasyfikowany dowielu reguł, to wówczas używana byłaby ta najbardziej szczegółowa(o najniższym poziomie, w terminologii NSA). Oznacza to, żezałącznik przesłany przez webowego klienta poczty Yahoo zostałbyzaklasyfikowany jako mail/webmail/yahoo/attachment, a nie jakomail/webmail, nie mówiąc już o najwyższym poziomie http/response.Jak jednak teraz wszystkie te dane ze sobą powiązać? Z ujawnionychslajdów wynika, że i na to były reguły. Gdy np. używającyjęzyka arabskiego użytkownik logował się do poczty na Yahoo,XKEYSCORE łączył ze sobą regułę mail/yahoo/login (akt logowaniado Yahoo) z odciskami mail/arabic (poczta w języku arabskim) orazmail/yahoo/ymbm (ciasteczko poczty Yahoo).

Jak na razie mamy do czynienia z prostymi przykładami, alemożliwości były większe. Umiejący programować w C++ analitycymogli pisać nawet bardzo skomplikowane „mikrowtyczki”, za pomocąktórych można było zautomatyzować np. przechwytywanie ruchu zbotnetów czy ekstrahowanie adresów e-mailowych z czatówfaceboooka. Takie mikrowtyczki, rozszerzające możliwości reguł,można było w ciągu kilku godzin wdrożyć i uruchomić na dowolnymwęźle systemu. Oczywiście analityk nie musiał też za każdymrazem ręcznie zadawać systemowi pytań. Narzędzie NSA pozwalałobudować procesy automatyzujące takie operacje i wysyłającepowiadomienia zaraz w momencie przechwycenia informacji spełniającychzadane reguły.

Warto pamiętać, że przedstawione dane pochodzą sprzed sześciulat. Co dzisiaj potrafi XKEYSCORE, tego poza ludźmi z NSA nie wiechyba nikt. Jeśli jednak chcecie się zapoznać ze slajdami NSAbliżej i poznać możliwości kolejnych generacji tego narzędzia,to kilkanaście ujawnionych dokumentów znajdzieciena blogu The // Intercept. To, czy po zapoznaniu się z nimibędziecie musieli spalić swój komputer i przeciąć łącze doInternetu pozostawiamy już Waszej rozwadze. Oczywiście zawszepozostaje możliwość wysłania do NSA swojego CV – możeciepodkreślić, że już przeszliście wstępne szkolenie.

Programy

Aktualizacje
Źródło artykułu:www.dobreprogramy.pl
Oceń jakość naszego artykułuTwoja opinia pozwala nam tworzyć lepsze treści.
Udostępnij:
Wybrane dla Ciebie
Komentarze (48)