Inlägg taggade ‘avkodningar’
Paranoida spekulationer kring Stuxnet
Det är sommar, det är semestertider. Vad sägs om lite desinformation, en och annan konspirationsteori och en hel drös rena spekulationer?
W32.Stuxnet har fascinerat mig ända sedan förra sommaren då detaljer om det avancerade datorviruset började sippra ut på nätet och i media. Jag har ingen lust att ge en ingående beskrivning eller utförlig introduktion, det finns det så många som redan gjort. Kim Zetter har skrivit en lång och läsvärd text som berättar historien om Stuxnet och hur analytiker på Symantec och andra företag tillsammans dekompilerade sig in i virusets gastkramande inre. Det är otroligt spännande läsning – nästan som en thriller.
Kort bara: Stuxnet är ett Windowsbaserat datorvirus som sprider sig med hjälp av ett flertal nolldagarssårbarheter. Det är konstruerat för att ta sig in i slutna nätverk utan internetaccess, bland annat via USB-stickor. Det maskerar sig själv med hjälp av ett rootkit som kommer med drivrutiner signerade med två olika stulna certifikat (från JMicron och Realtek som båda huserar i samma “science park” i Taiwan). Likt en rysk Matrjosjkadocka är virusets binära kod inkapslad i flera på varandra krypterade lager som dekrypteras i minnet efter behov. Så långt är det visserligen imponerande och synnerligen intrikat, men det var när kodanalytikerna började förstå vad viruset faktiskt gjorde med infekterade datorer — naturen av dess “payload” — som de förstod vidden av hur avancerat det faktiskt var.
Viruset letar efter datorer med Microsoft Windows, kopplade till en viss typ av industristyrningssystem från Siemens, så kallade “Programmable Logic Controllers” eller PLCs. Om det hittar ett sådant system (eller egentligen dess programvara Step 7) och systemet är konfigurerat på ett visst sätt så dekrypteras virusets inre kärna, “payload”:en aktiveras och går till attack. Stuxnet börjar injicera egna kommandon mellan programvaran och den externa PLC-hårdvaran, samtidigt som den rapporterar tillbaka just de kommandon som styrsystemet tror sig skicka. Allt ser normalt ut.
Den speciella PLC-konfiguration som viruset söker är av allt att döma anrikningsanläggningar för uran. De kommandon som injiceras är riktade till frekvenskonverterare som styr rotationshastigheten för de centrifuger som används vid anrikning. Genom att med ganska långa intervall omväxlande accelerera och retardera hastigheten för centrifuger kan Stuxnet åsamka dessa skada.
Media började tidigt spekulera. Målet för attacken ansågs vara anrikningsanläggningar i Iran. Det finns mycket som pekar på det, bland annat visade Symantec att spridningen av viruset var större i Iran än i något annat land, något som inte brukar vara fallet vid epidemiska utbrott av datorvirus. Dessutom fanns det tecken på att Natanz, en anrikningsanläggning i Iran, hade problem med ovanligt många trasiga centrifuger.
Stuxnet anses så sofistikerat att bland annat Kaspersky Lab gått ut med att det måste röra sig om en statssponsrad operation (“…this type of attack could only be conducted with nation-state support and backing”). Media har kategoriskt och ogenerat pekat ut Israel och USA, något som knappast känns långsökt. Det är dock viktigt att komma ihåg att det finns inga som helst bevis för detta, det rör sig enbart om spekulationer.
I den rapport som Symantec skrivit om Stuxnet finns två intressanta fynd som möjligen säger något om virusets skapare.
Det finns en så kallad “do not infect”-mekanism inbyggd i viruset. Om registryvärdet “NTVDM TRACE” med nyckeln “HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\MS-DOS Emulation” har värdet 19790509 så smittas inte den aktuella datorn. Det är ett sätt för virusmakarna att undvika att smitta sina egna datorer under utvecklingen (och senare). Symantec spekulerar i rapporten kring det numeriska värdet:
The value may be a random string and represent nothing, but also appears to match the format of date markers used in the threat. As a date, the value may be May 9, 1979. This date could be an arbitrary date, a birth date, or some other significant date. While on May 9, 1979 a variety of historical events occured, according to Wikipedia “Habib Elghanian was executed by a firing squad in Tehran sending shock waves through the closely knit Iranian Jewish community. He was the first Jew and one of the first civilians to be executed by the new Islamic government. This prompted the mass exodus of the once 100,000 member strong Jewish community of Iran which continues to this day.”
Det andra intressanta fyndet är en kvarlämnad sökväg till en så kallad symbolfil som återfanns i en av virusets drivrutiner. En symbolfil är en genererad fil som används vid avlusning under mjukvaruutveckling. Sökvägen i virusets binärkod är “b:\myrtus\src\objfre_w2k_x86\i386 \guava.pdb”. Symantec spekulerar igen:
Guavas are plants in the myrtle (myrtus) family genus. The string could have no significant meaning; however, a variety of interpretations have been discussed. Myrtus could be “MyRTUs”. RTU stands for remote terminal unit and are similar to a PLC and, in some environments, used as a synonym for PLCs. In addition, according to Wikipedia, “Esther was originally named Hadassah. Hadassah means ‘myrtle’ in Hebrew.” Esther learned of a plot to assassinate the king and “told the king of Haman’s plan to massacre all Jews in the Persian Empire…The Jews went on to kill only their would-be executioners.”
Dessa två fynd — de subtila referenserna till judisk historia och kultur — kan förstås tolkas som spår av israelisk inblandning. Som jag ser det finns det dock två problem med detta:
-
Med tanke på hur avancerat och välgjort Stuxnet är ter det sig närmast ofattbart slarvigt att lämna sådana spår efter sig, särskilt den kvarlämnade symbolsökvägen. Att så skickliga programmerare skulle göra en sådan tabbe är tveksamt.
-
De två spåren tycks nästan lite för lagom subtila och tvetydiga. Visst, 19790509 kan möjligen vara ett datum. Eller så är det bara en slumpmässig sträng av siffror. Visst, det kan röra sig om datumet för Habib Elghanians avrättning. Eller så är det en födelsedag för en av virusmakarna som “taggat” sitt verk. Guavaspåret känns aningen långsökt, men samtidigt känns symboliken mellan det saboterade iranska kärnvapenprogrammet och den judiska berättelsen om att “the Jews went on to kill only their would-be executioners” lite för passande för att vara en slump.
Kort och gott: de två spåren har den omisskänneliga auran av desinformation. Symantec är förstås medvetna om “false flag”-aspekten och poängterar i samband med båda spekulationerna:
Symantec cautions readers on drawing any attribution conclusions. Attackers would have the natural desire to implicate another party.
Går det då att dra några slutsatser utifrån detta? Nej, givetvis inte, men man kan spekulera vilket är precis vad jag föresatt mig att göra.
Den tråkigaste spekulationen är att det är Israel som ligger bakom Stuxnet, eventuellt har man då också planterat de två spåren med vilje. Anledningen till detta skulle kunna vara att göra sig själv till den troligaste kandidaten — den som alla vet gjorde det — utan att lämna några entydiga bevis efter sig. På så sätt kan man åtnjuta respekten för att ha genomfört en osedvanligt avancerad cyberattack och på samma gång undgå en internationell kontrovers.
Den mest konspirationsteoretiska spekulationen är att USA ensam ligger bakom. En anledning till detta skulle kunna vara att det sedan en tid tillbaka pågår en lobbykampanj i USA där militären försöker förvandla “cyberkriget” till det fjärde vapenslaget efter armén, flottan och flygvapnet. Detta har bland annat resulterat i United States Cyber Command. Som vanligt hägrar lukrativa kontrakt för det militärindustriella komplexet och som väntat är det också därifrån man hör de mest högljudda varningarna för cyberkriget (“The United States is fighting a cyber war today, and we are losing”).
Sunda säkerhetsexperter skakar förstås på huvudet åt detta vansinne.
Det är inte otänkbart att Stuxnet är en produkt av denna militärisering av internet. Se det som två flugor i en smäll, Irans kärnvapenprogram fick sig en rejäl törn och på samma gång fick man ett bra exempel på det farliga cyberhotet — precis vad man behövde för att övertyga politikerna. Och just det, med hjälp av två planterade spår skyllde man allt på Israel.
Men som sagt, det är bara spekulationer.
Men om vi nu ändå slösar bort värdefulla soltimmar på rena spekulationer, varför inte gå hela vägen? Jag backar bandet — …drivrutiner signerade med två olika stulna certifikat… — STOP. Digitalt signerade drivrutiner bygger på asymmetrisk kryptering — kryptering baserad på publika och privata nycklar. Man signerar sin drivrutin med den hemliga privata nyckeln och lämnar ut den publika nyckeln via ett certifikat. Certifikatet gör det möjligt att verifiera att drivrutinen är tillförlitlig. Grunden för denna tillit är den matematiska förhoppningen — något formellt bevis existerar ej — att det är svårt att återskapa den privata nyckeln utifrån den publika. Detta bygger i sin tur på förhoppningen att det är, och alltid kommer vara, mycket svårt att primtalsfaktorisera stora tal.
Om en underrättelsetjänsts stab av matematiker mot all förmodan knäcker detta problem uppstår ett intressant dilemma. Man har just tillintetgjort en betydande del av all världens kryptering, hur använder man denna kunskap utan att avslöja för andra att man har den? Tja, till exempel så knäcker man två olika drivrutinscertifikat som rent fysiskt finns förvarade bredvid varandra i samma stad, i samma område… Den enda rimliga förklaringen blir ett inbrott.
0x00000000
0x00000000
0xFFFFFFFF
0xFFFFFFFF
0x0D15EA5E
0xDEADBEEF
0xFACEDEAD
Om sjöfarten och andra avkodningar
En sak jag uppskattar med dagstidningar är de märkliga, nästan arkaiska avdelningar som hänger kvar år efter år: nekrologer, bridge- och schackspalter, lokaltidningskolumner med titlar som “övrigt” och “personligt”, börslistor och andra underligheter i skuggan av nyhetsuppslagen. De har alla sitt eget särpräglade språk och det finns ibland något hemlighetsfullt och till och med fantasieggande över dem.
När jag var liten berättade min syster för mig att de besynnerliga meddelanden som ibland dök upp under lokaltidningens “personligt”-kolumn kunde vara kodsignaler avsedda för spioner och kriminella – startsignaler för ljusskygga operationer. Så här i efterhand misstänker jag att hon spred vidare en vandringssägen. Men i alla fall så följde jag den där spalten under flera år och funderade på vad olika budskap kunde betyda. Han som verkligen älskade Emma och ville meddela det via lokaltidningen fick sin dåliga grammatik omvandlad till koder i min barnsliga fantasi.
Det kan ha varit under den här perioden som jag blev desinformatör och poet.
Förra våren började jag följa schackkolumnen i DN efter att länge sneglat nyfiket på den. Jag fick lära mig schacknotation och bekanta mig med underliga utsagor om bondestormar, damflyglar och gambitbönder. Under flera månader följde jag slaviskt med i DN-partiet, begrundade dagens drag varje morgon och funderade på hur vit möjligen skulle kunna avvärja en hotande tornattack på b-linjen. Som i en underlig resonans med den tid då jag försökte dechiffrera lokaltidningen, började jag fantisera om hemliga budskap nedkodade i partierna, omöjliga drag i matchreferaten, numerologiska budskap och schacktaktiker som gör motståndaren galen. Det var en härlig tid, men vi växte ifrån varandra, schackkolumnen och jag.
Av alla underliga tidningsavdelningar har jag en favorit som står över de andra – sjöfartsnytt. Jag hittade ett exempel i en gammal norrländsk lokaltidning som jag sparat av ovidkommande anledning. “Sjöfarten” står det som titel till den minimala textkolumnen. Där kan man läsa följande:
Inneliggande fartyg
Holländska Flinterdam ska lossa massaved från Riga och lasta trä till Danmark.
Bogserbåten Aris med pråmen Buffel ska lossa massaved från Kaliningrad.
Assi Euro Link lastar skogsprodukter till England, Holland och Tyskland.
En underbart tidlös liten notis – besynnerligt suggestiv. Den skulle lika gärna kunna vara från 1800-talet. Frågorna hopas i huvudet när de avkodande delarna av hjärnan börjar gå på högvarv. Vad för mönster bildar egentligen de angivna sjöfartssträckorna på kartan? Assi Euro Link, vilket ord döljer sig i detta anagram? Massaved från Kaliningrad? Stridsspetsar från öst? Och namnen – bogserbåten Aris och pråmen Buffel! Vilka djävulska krafter är satta i rörelse?