Jesienią 2005 roku specjalista od Windows Mark Russinovich testował na swoim komputerze narzędzie służące do wykrywania rootkitów. Spodziewał się znaleźć błędy albo pozostałości po oprogramowaniu, ale nie tego, co rzeczywiście zobaczył: w systemie działały ukryte pliki, sterowniki i wpisy rejestru zachowujące się w sposób charakterystyczny dla oprogramowania stosowanego przez twórców malware.
Russinovich był wystarczająco doświadczony, żeby wiedzieć, że coś jest bardzo nie tak. Zaczął więc szukać źródła infekcji. Trop nie prowadził jednak do podejrzanej strony, pirackiego programu ani załącznika z e-maila. Prowadził do legalnie kupionej płyty CD wydanej przez Sony BMG.
Płytą był album Van Zant – „Get Right with the Man”. Sony BMG umieściło na niej system ochrony przed kopiowaniem XCP, przygotowany przez brytyjską firmę First 4 Internet. Po włożeniu płyty do komputera z Windowsem oprogramowanie instalowało w systemie komponenty mające ograniczać kopiowanie muzyki. Problem polegał na tym, że żeby użytkownik nie mógł łatwo zabezpieczenia wyłączyć, zastosowano techniki typowe dla rootkitów: program ukrywał własne pliki, procesy i wpisy rejestru przed właścicielem komputera. Producent legalnej płyty muzycznej zrobił więc coś, przed czym firmy antywirusowe od lat ostrzegały użytkowników.

Wojna z piractwem, w której klient zaczął być traktowany jak przeciwnik
Żeby zrozumieć, jak w ogóle mogło dojść do tak kuriozalnej sytuacji, trzeba pamiętać, czym dla branży muzycznej były pierwsze lata XXI wieku. Napster pokazał, że miliony ludzi mogą wymieniać się muzyką w internecie praktycznie bez żadnej kontroli wytwórni. Potem pojawiły się Kazaa, eMule, LimeWire i kolejne sieci P2P. Sprzedaż płyt kompaktowych zaczynała spadać, szybki internet stawał się coraz popularniejszy, a nagrywarka CD była standardowym wyposażeniem domowego komputera. Dla koncernów fonograficznych kopiowanie płyt przestało być drobnym problemem i zaczęło wyglądać jak zagrożenie dla całego modelu biznesowego.
Jedną z odpowiedzi było DRM, czyli Digital Rights Management. Sama idea nie była niezwykła: wydawca chciał technicznie ograniczyć możliwość wykonywania nieautoryzowanych kopii. Problem zaczynał się wtedy, gdy zabezpieczenia próbowały przejąć kontrolę nad komputerem właściciela w stopniu znacznie wykraczającym poza odtwarzanie muzyki. Sony BMG stosowało na swoich płytach kilka systemów ochrony. Najbardziej niesławny okazał się XCP – Extended Copy Protection, który miał pozwalać użytkownikowi słuchać płyty na komputerze i wykonywać ograniczoną liczbę kopii, jednocześnie utrudniając zwyczajne zgranie utworów do MP3.
Z punktu widzenia wytwórni rozwiązanie miało chronić prawa autorskie. Z punktu widzenia bezpieczeństwa zastosowano jednak filozofię wyjątkowo niebezpieczną: skoro właściciel komputera mógłby znaleźć oprogramowanie i je wyłączyć, należało sprawić, żeby… właściciel własnego komputera nie był w stanie go zobaczyć.
Wkładasz płytę. Pojawia się odtwarzacz. W tle zmienia się Windows
Po umieszczeniu zabezpieczonej płyty w napędzie funkcja Autorun uruchamiała przygotowane przez producenta oprogramowanie. Użytkownik otrzymywał własny odtwarzacz muzyczny i możliwość wykonywania ograniczonej liczby kopii. Na ekranie wszystko wyglądało mniej więcej tak, jak można było oczekiwać po „wzbogaconej” płycie CD z połowy lat 2000. Było logo wykonawcy, przyciski odtwarzania, opcje nagrywania i informacje o ograniczeniach kopiowania.

Znacznie ciekawsze rzeczy działy się jednak pod spodem. XCP instalował sterowniki działające głęboko w Windowsie. Kluczowym elementem był sterownik Aries.sys, który przechwytywał część operacji systemowych i filtrował informacje zwracane użytkownikowi. Mechanizm został skonstruowany tak, aby Windows nie pokazywał plików, procesów czy wpisów rejestru, których nazwa zaczynała się od określonego prefiksu – $sys$. W praktyce oznaczało to, że program nie tylko był trudny do znalezienia, ale aktywnie ingerował w to, co system operacyjny pokazywał swojemu właścicielowi.
To jest właśnie sedno afery. Rootkit nie musi sam w sobie kraść pieniędzy czy haseł, aby stanowić ogromny problem. Jego podstawową funkcją jest ukrywanie obecności oprogramowania i zmian w systemie. Technika ma również legalne zastosowania, ale w świecie bezpieczeństwa jest kojarzona przede wszystkim z malware właśnie dlatego, że pozwala przestępcy działać na komputerze ofiary bez jej wiedzy. Sony BMG wykorzystało podobną metodę po to, aby użytkownik nie mógł swobodnie usunąć zabezpieczenia przed kopiowaniem muzyki.
Mark Russinovich przypadkiem odkrywa coś, czego zwykły użytkownik nie miał zobaczyć
31 października 2005 roku Russinovich opublikował wyniki swojego dochodzenia. Historia była tym bardziej kompromitująca dla Sony, że odkrycie nie było rezultatem wielomiesięcznego śledztwa prowadzonego przez służby czy wielką firmę antywirusową. Badacz testował stworzone przez siebie narzędzie RootkitRevealer i zauważył anomalie na własnym komputerze. Program wykazywał różnice pomiędzy tym, co rzeczywiście znajdowało się na dysku i w rejestrze, a tym, co standardowe mechanizmy Windows pozwalały zobaczyć.
Russinovich krok po kroku ustalił, że źródłem zmian była kupiona przez niego płyta Van Zant. Kiedy zaczął analizować zabezpieczenie, wyszło na jaw, że XCP nie tylko instaluje się głęboko w systemie, ale nie oferuje normalnego, łatwo dostępnego mechanizmu usunięcia. Próba ręcznego pozbycia się składników mogła skończyć się problemami z napędem CD, ponieważ oprogramowanie ingerowało w sposób obsługi urządzenia przez Windows. Innymi słowy: człowiek, który znalazł na swoim komputerze coś wyglądającego jak rootkit i zrobił dokładnie to, co rozsądny użytkownik chciałby zrobić – spróbował to usunąć – mógł uszkodzić konfigurację systemu.
Oryginalny screenshot RootkitRevealer z komputera Russinovicha znajduje się w jego artykule „Inside Sony’s Rootkit” opublikowanym w grudniu 2005 roku w „Virus Bulletin”. Widać tam cały zestaw obiektów oznaczonych jako niewidoczne dla zwykłego Windows API. Otwórz oryginalny materiał z ekranem RootkitRevealer – strona 11 PDF
Największa luka była absurdalnie prosta: wystarczyło nazwać plik „$sys$…”
Ukrywanie własnych składników byłoby już wystarczająco kontrowersyjne. Konstrukcja XCP stworzyła jednak drugi, znacznie groźniejszy problem. Sterownik nie sprawdzał, czy ukrywany plik rzeczywiście należy do systemu Sony. Po prostu ukrywał obiekty spełniające odpowiedni warunek nazwy. Oznaczało to, że inne oprogramowanie również mogło wykorzystać mechanizm zainstalowany przez Sony. Twórca wirusa czy trojana nie musiał pisać własnego rootkita – jeżeli na komputerze działał XCP, wystarczyło odpowiednio nazwać swoje pliki, aby mechanizm Sony pomagał je ukrywać.
To zmienia ocenę całej sytuacji. Nie mówimy już wyłącznie o irytującym DRM, który ograniczał możliwość skopiowania legalnie kupionej muzyki. Producent poprzez własne oprogramowanie obniżał bezpieczeństwo komputera klienta i tworzył gotowe narzędzie, które mogli wykorzystywać autorzy prawdziwego malware. Niedługo po ujawnieniu sprawy rzeczywiście zaczęły pojawiać się złośliwe programy próbujące korzystać z możliwości ukrywania oferowanych przez XCP.
Z perspektywy bezpieczeństwa był to niemal podręcznikowy przykład złamania jednej z najważniejszych zasad: nie twórz sekretnego mechanizmu działającego na poziomie systemu tylko dlatego, że uważasz, że nikt inny go nie wykorzysta. Jeżeli mechanizm istnieje, wcześniej czy później ktoś go znajdzie.
Legalny klient dostał gorszy produkt niż pirat
Afera miała również wyjątkowo ironiczny wymiar. DRM miał sprawić, że piractwo stanie się mniej atrakcyjne. W praktyce legalnie kupiona płyta mogła instalować dodatkowe oprogramowanie, narzucać użytkownikowi specjalny odtwarzacz, ograniczać liczbę kopii, utrudniać przeniesienie muzyki na wybrane urządzenia, zmieniać konfigurację Windows i wprowadzać ryzyko związane z bezpieczeństwem. Osoba, która pobrała te same utwory w zwykłych plikach MP3 z sieci P2P, nie miała żadnego z tych problemów.
To jeden z powodów, dla których historia Sony BMG tak mocno zapisała się w dyskusji o DRM. Technologia zabezpieczająca treść może być tak agresywna, że najbardziej dotyka właśnie uczciwego klienta. Pirat usuwa lub omija zabezpieczenie raz, a potem rozpowszechnia czysty plik. Każdy legalny kupujący musi natomiast zmierzyć się z ograniczeniami od początku.
Dodatkową ironią były późniejsze zarzuty dotyczące wykorzystania przez XCP fragmentów oprogramowania open source objętego licencjami wymagającymi przestrzegania określonych zasad dystrybucji. Oprogramowanie stworzone po to, by chronić prawa autorskie wielkiej wytwórni, samo zaczęło więc rodzić pytania o respektowanie cudzych praw do kodu.
Program nie tylko siedział w komputerze. Potrafił także „telefonować do domu”
W miarę jak badacze analizowali XCP, wychodziły na jaw kolejne problemy. Odtwarzacz towarzyszący płytom komunikował się z serwerami w internecie, co umożliwiało między innymi przekazywanie informacji potrzebnych do prezentowania treści związanych z odtwarzanym albumem. Dla badaczy prywatności było to kolejne pytanie: dlaczego zwykłe odtworzenie kupionej płyty ma powodować komunikację z serwerem wydawcy i czy konsument został o tym wystarczająco jasno poinformowany?
Problem szerszy niż samo XCP potwierdziły później działania amerykańskiej Federal Trade Commission dotyczące systemów DRM stosowanych przez Sony BMG. Regulator zarzucał firmie m.in. niewystarczające informowanie klientów o instalowanym oprogramowaniu, ograniczeniach użytkowania, ryzyku bezpieczeństwa oraz monitorowaniu sposobu słuchania muzyki w przypadku części technologii stosowanych na płytach. Afera rootkitowa zaczynała więc obejmować nie tylko kwestię bezpieczeństwa Windows, ale również świadomej zgody użytkownika i granicy pomiędzy ochroną praw autorskich a kontrolą nad cudzym komputerem.
Odpowiedź Sony tylko dolała oliwy do ognia
Pierwsza reakcja Sony BMG nie uspokoiła sytuacji. Firma i dostawca technologii podkreślali, że komponent nie jest złośliwy i miał służyć wyłącznie ochronie przed kopiowaniem. Przygotowano aktualizację mającą usunąć funkcję ukrywania, ale początkowo nie była ona prawdziwym deinstalatorem XCP. Oprogramowanie nadal pozostawało w systemie. Co więcej, kolejne narzędzia mające pomóc klientom same zostały zakwestionowane przez badaczy bezpieczeństwa. Szczególnie głośno zrobiło się o mechanizmie usuwania wykorzystującym kontrolkę ActiveX, który mógł stworzyć nową możliwość wykonania kodu przez złośliwą stronę internetową. Firma próbowała więc naprawić problem bezpieczeństwa i w trakcie naprawy tworzyła następny problem bezpieczeństwa.
Do historii przeszedł również komentarz Thomasa Hessego, jednego z najważniejszych menedżerów cyfrowego biznesu Sony BMG. Sens jego wypowiedzi sprowadzał się do pytania: skoro większość ludzi nawet nie wie, czym jest rootkit, dlaczego miałoby ich to obchodzić? Komunikacyjnie trudno było wybrać gorszy moment na takie podejście. Problem nie polegał przecież na tym, czy przeciętny klient zna techniczne znaczenie słowa „rootkit”. Klient nie musi wiedzieć, jak działa układ hamulcowy w samochodzie, żeby oczekiwać, że producent nie zrobi w nim czegoś niebezpiecznego. Podobnie użytkownik komputera nie musi znać wewnętrznej architektury Windows, aby mieć prawo oczekiwać, że legalnie kupiona płyta muzyczna nie będzie ukrywać przed nim zmian w systemie.
Kiedy wirusy zaczęły korzystać z pomysłu Sony, nie dało się już udawać, że nic się nie stało
Najgorszy scenariusz szybko przestał być tylko teorią. W listopadzie 2005 roku firmy zajmujące się bezpieczeństwem zaczęły informować o złośliwym oprogramowaniu wykorzystującym mechanizm ukrywania zapewniony przez XCP. Dla Sony był to punkt, w którym tłumaczenie, że zabezpieczenie samo w sobie nie jest wirusem, przestało mieć większe znaczenie. Firma stworzyła infrastrukturę ułatwiającą prawdziwym wirusom ukrywanie się na komputerach klientów.
Temat natychmiast trafił do największych światowych mediów. Poniżej znajduje się autentyczny screenshot strony technologicznej BBC News z 11 listopada 2005 roku. Główny materiał nosił tytuł „Viruses use Sony anti-piracy CDs” – wirusy wykorzystują antypirackie płyty Sony. Trudno wyobrazić sobie bardziej dotkliwe podsumowanie produktu stworzonego przez jedną z największych firm technologiczno-medialnych świata.

Wtedy do gry wszedł również Microsoft. Firma uznała komponent XCP za zagrożenie dla bezpieczeństwa Windows i zapowiedziała dodanie możliwości jego wykrywania i usuwania do swoich narzędzi antymalware. Sytuacja była wręcz groteskowa: producent systemu operacyjnego musiał przygotowywać mechanizm usuwający z komputerów klientów oprogramowanie instalowane z legalnych płyt jednego z największych wydawców muzycznych świata.
Miliony płyt trzeba było ściągać ze sklepów
W połowie listopada Sony BMG wstrzymało produkcję płyt wykorzystujących XCP, a następnie zdecydowało się na ich wycofanie ze sprzedaży i uruchomienie programu wymiany. Technologia znajdowała się na dziesiątkach tytułów – różne zestawienia obejmowały około pięćdziesięciu albumów, a wyprodukowano kilka milionów takich nośników. Wśród wykonawców, których wydawnictwa znalazły się na listach, byli m.in. Van Zant, Celine Dion, Neil Diamond, Switchfoot, Our Lady Peace, Chris Botti, The Coral czy Acceptance.
Sam XCP był jednak tylko częścią większego problemu. Sony BMG stosowało również zabezpieczenie MediaMax firmy SunnComm. Technicznie działało inaczej, ale także wzbudzało zastrzeżenia dotyczące sposobu instalacji, możliwości usunięcia, prywatności oraz bezpieczeństwa. Późniejsza skarga amerykańskiej Federal Trade Commission mówiła już o systemach DRM umieszczanych łącznie na ponad stu tytułach muzycznych. W efekcie afera przestała dotyczyć jednego źle zaprojektowanego programu. Zaczęła dotyczyć filozofii, według której wydawca może instalować na komputerze klienta złożone oprogramowanie kontrolne, o ile służy ono walce z kopiowaniem.
Pozwy, ugody i regulatorzy
Konsekwencje prawne przyszły bardzo szybko. Pojawiły się pozwy zbiorowe, a organy poszczególnych stanów zaczęły analizować, czy działanie Sony BMG nie narusza przepisów dotyczących ochrony konsumentów i spyware. Szczególnie głośna była sprawa wszczęta w Teksasie, gdzie technologię XCP potraktowano właśnie w kontekście przepisów wymierzonych w ukryte oprogramowanie instalowane na komputerach użytkowników.
Pod koniec 2005 roku Sony BMG osiągnęło wstępną ugodę w amerykańskim postępowaniu zbiorowym. Klienci otrzymali możliwość wymiany problematycznych płyt, zaoferowano im także określone formy rekompensaty. W 2007 roku firma zawarła natomiast ugodę z Federal Trade Commission. Regulator zobowiązał Sony BMG m.in. do wyraźnego informowania o ograniczeniach stosowanych na płytach, uzyskiwania zgody przed instalacją oprogramowania, zapewniania skutecznego sposobu jego usunięcia oraz niewykorzystywania zebranych informacji o zwyczajach słuchaczy do marketingu bez odpowiedniej zgody. Przewidziano również możliwość zwrotu kosztów naprawy komputera – do 150 dolarów – w przypadku szkód powstałych podczas prób usuwania problematycznego oprogramowania.
Dla wielkiej korporacji nie były to koszty mogące zagrozić jej istnieniu. Znacznie większa była strata wizerunkowa. Sony było przecież firmą produkującą komputery, elektronikę, konsole i nośniki danych. Marka kojarzyła się z technologią. Tymczasem znalazła się w sytuacji, w której eksperci bezpieczeństwa, organizacje praw cyfrowych, media, regulatorzy i w końcu sam Microsoft ostrzegali klientów przed oprogramowaniem dostarczanym przez Sony na legalnych produktach.
Dlaczego ta afera była przełomowa?
Sony BMG Rootkit był jednym z wydarzeń, które zmieniły sposób myślenia o DRM. Wydawcy przez lata traktowali zabezpieczenie antypirackie głównie jako problem relacji pomiędzy właścicielem praw a osobą chcącą wykonać kopię. Afera pokazała, że oprogramowanie DRM jest przede wszystkim oprogramowaniem uruchamianym na cudzym komputerze, a więc musi podlegać dokładnie takim samym wymaganiom bezpieczeństwa jak każdy inny program.
Firma nie może powiedzieć: „to tylko zabezpieczenie przed kopiowaniem”, jeżeli jej kod działa w jądrze systemu, ukrywa pliki, przechwytuje funkcje Windows i pozostawia komputer bardziej podatny na działanie innych programów. Cel biznesowy nie zmienia technicznego charakteru rozwiązania.
Wydarzenie było również ważnym sygnałem dla producentów antywirusów. Jeśli podejrzany mechanizm instaluje cyberprzestępca, klasyfikacja jest prosta. Co jednak zrobić, jeśli praktycznie identyczne techniki wykorzystuje ogromna, legalna korporacja chroniąca własność intelektualną? Bezpieczeństwo nie może zależeć od tego, czy kod podpisała rozpoznawalna marka. Musi zależeć od tego, co kod faktycznie robi na komputerze użytkownika.
Najbardziej absurdalna lekcja: legalny produkt może być źródłem zagrożenia
Do dzisiaj jedną z podstawowych porad bezpieczeństwa jest pobieranie programów z legalnych źródeł i unikanie pirackiego oprogramowania. To dobra zasada. Sony BMG pokazało jednak jej ograniczenie: legalność produktu nie oznacza automatycznie, że sposób jego działania jest bezpieczny. Użytkownik kupił oryginalny album w normalnym sklepie, wyprodukowany przez jedną z największych firm muzycznych świata, po czym po włożeniu go do komputera otrzymywał oprogramowanie stosujące techniki kojarzone z rootkitami.
To również świetna lekcja dotycząca zaufania. Im większe uprawnienia otrzymuje program, tym większą odpowiedzialność ponosi jego producent. Jeżeli aplikacja chce działać na poziomie sterownika systemowego, ukrywać elementy systemu albo ingerować w działanie urządzeń, musi istnieć wyjątkowo dobry powód, transparentność i możliwość pełnego usunięcia. Sony BMG zrobiło praktycznie odwrotnie: ukrywanie było elementem projektu, użytkownik miał nie mieć nad nim pełnej kontroli, a pierwsze próby naprawienia sytuacji same przyniosły nowe problemy.
Co zostało po Sony BMG Rootkit?
Po ponad dwudziestu latach sam model sprzedaży muzyki zmienił się nie do poznania. Płyty CD są produktem znacznie bardziej niszowym, większość ludzi korzysta ze Spotify, YouTube Music, Apple Music czy innych usług streamingowych, a walka z kopiowaniem przeniosła się głównie do świata kont użytkowników, zaszyfrowanych strumieni i licencji przypisanych do platform. Konflikt pomiędzy kontrolą dostawcy a kontrolą użytkownika jednak nie zniknął. Widać go dziś w grach komputerowych, aplikacjach wymagających stałego połączenia z internetem, antycheatach działających na poziomie kernela, systemach subskrypcyjnych czy urządzeniach, których funkcje producent może zmienić zdalną aktualizacją.
Najważniejsza lekcja z 2005 roku pozostaje więc aktualna: firma nie dostaje prawa do dowolnej ingerencji w nasze urządzenie tylko dlatego, że chce chronić swój model biznesowy. Użytkownik ma prawo wiedzieć, co jest instalowane, po co jest instalowane, jakie dane opuszczają komputer i jak program można całkowicie usunąć. Jeżeli producent zaczyna ukrywać przed właścicielem urządzenia to, co robi w jego systemie, przekracza granicę, której nie powinno usprawiedliwiać ani DRM, ani walka z piractwem, ani ochrona własności intelektualnej.
W przypadku Sony BMG granica została przekroczona wyjątkowo spektakularnie. Klient zapłacił za legalną płytę, producent chciał ochronić ją przed piractwem, a skończyło się na wycofywaniu milionów nośników, pozwach, interwencji regulatorów i sytuacji, w której Microsoft musiał usuwać z Windows oprogramowanie instalowane przez Sony. Trudno o lepszy przykład technologicznego zabezpieczenia, które stało się większym problemem niż problem, który miało rozwiązać.
Materiały wizualne do tego tekstu są oparte na autentycznych artefaktach z epoki: płycie, interfejsie XCP, analizie Russinovicha i archiwalnym screenie BBC opisującym pojawienie się malware wykorzystującego mechanizm Sony. Historia odkrycia, działanie $sys$, skala dystrybucji, recall oraz późniejsze działania FTC są zgodne z dokumentacją Russinovicha, FTC i analizami badaczy z Princeton.

