Rapport

Cyberspionage anno 1996

Publicerat: 
2017-04-20 10:45

Kaspersky och forskare från Kings College släppte för en dryg vecka sedan rapporten Penquin’s Moonlit Maze –The dawn of Nation-State Digital Espionage. Rapporten är spännande då den påvisar en möjlig länk mellan ryskt cyberspionage i internets vagga och idag, [4].

Jämför man med idag där nyheter om datorangrepp som kostar företag miljonbelopp är vardagsmat, så känns 90-talets datorangrepp förhållandevis milda. De cyberangrepp många minns kring mitten av nittiotalet, var hacktivister som ersatte företags hemsidor med sina egna ofta politiska budskap. Ett känt exempel på detta från 1996 var när CIA:s hemsida hackades i protest mot rättegången mot medlemmarna i Swedish Hacking Association, där Bo Skarinder var åklagare.

Hackad version av CIA:s hemsida

Parallellt med denna typ av attacker initierades dock runt 1996 en våg av cyberangrepp mot olika amerikanska myndigheter och organisationer med försvarskopplingar, inklusive flygbaser, forskningsinstitutioner och NASA. Dessa angrepp pågick i åtminstone två år, gjordes troligen av ryska aktörer i spionageändamål och kom senare att få namnet Moonlight Maze. Kasperskys rapport handlar om dessa angrepp och om eventuella kopplingar mellan dem och Penquin Turla år 2011. För den oinvigde så är Penquin Turla det första upptäcka cyberangreppen mot Linux och Unix från den ryskspråkiga, spionageorienterade och nu aktiva hackergruppen Turla, en känd så kallad APT.

Utgångspunkten för Kasperskys rapport är att de fick tillgång till en gammal server på ett brittiskt företag som de ryska angriparna efter att ha hackat använts som ett hjälpmedel för sina fortsatta angrepp. Den brittiska servern användes först som proxy vilket innebär att trafiken från angriparna skickades genom servern för att dölja angriparnas verkliga IP-adress. Därutöver användes den brittiska servern även som en staging server vilket innebär att servern fungerade som en samlingsplats för skadlig kod och verktyg vilka laddades ned till nya hackade servrar. De angriparna inte visste var dock att serverns roll upptäckts av myndigheterna och att FBI tillsammans med Scotland Yard använde servern för att kartlägga angriparnas förehavande. Servern ställdes därför in för att samla loggar, spara alla filer, fånga trafik och övervaka en specifik användare på servern. Företagets dåvarande systemadministratör bestämde sig för att spara servern och har nyligen gett Kaspersky tillgång till den.

Den initiala attackvektor som angriparna använde sig av var den då välkända sårbarhet i en Common Gateway Interface (CGI) som paketerades som exempelkod med http-daemoner för Linux och därmed ofta fanns på publika webbservrar. Något förenklat är en http-daemon ett bakgrundsprogram som gör att servern kan hantera http-trafik och en CGI gör det möjligt för denna att köra utvalda kod på servern. En risk än idag är dock att denna funktionalitet missbrukas av en angripare för att köra godtyckliga kommandon på servern. Denna typ av sårbarheter uppstår när data och kommandon är möjliga att mata in via samma input och kallas på engelska för command injection. Det finns standardiserade metoder för att mitigera risken för att så ska ske genom exempelvis validering av input och automatiserad formatering av symboler med innebörd i underliggande språk. Trots det ligger command injection på förstaplats på OWASP lista över de tio mest kritiska sårbarheterna för webbapplikationer, och förekommer frekvent inom exempelvis applikationer som gör slagningar mot en bakomliggande SQL-databas [5].

Den CGI som angriparna utnyttjade 1996 hette phf och mot exempelvis IP-adressen 1.2.3.4. Gjorde angreppet genom att göra anropet:

http ://1.2.3.4/cgi-bin/phf?Qalias=%ff/bin/cat%20/etc/passwd

I anropet är %ff oväntad input till variabeln Qalias vilket när det ges som argument till phf (genom phf?Qalias=%ff), gör att det som kommer därefter körs som ett kommando på servern istället för att tolkas som data. I detta fall är det kommando som körs

/bin/cat /etc/passwd

Detta kommando skriver helt enkelt ut innehållet filen passwd, vilket 1996 ofta innehöll såväl användarnamn som lösenord för alla användare. Angriparna använde sedan de erhållna användarnamnen och lösenorden för att logga in på servern via telnet eller ftp. Sårbarheten var känd på sin tid och finns publikt tillgänglig, exempelvis i exakt samma formulering som användes i Moonlight Maze i databasen Fyodor's Exploit World som underhölls fram till 1998 av skaparen till det kända skanningsverktyget nmap, [2].

Exploit Worlds logga

När angriparna kom in på en ny server verkade de i blindo ha laddat ned olika exploits och testa att köra dem i förhoppningen att den aktuella servern skulle vara sårbar mot dessa. Detta tillvägagångssätt är mycket högljutt sätt att angripa en server som riskerar göra offret uppmärksam på angreppet. Idag förknippas därför ett sådant agerande snarare med scriptkiddies än avancerade riktade angrepp. Bland de verktyg som användes på detta sätt fanns bakdörren LOKI2 som publicerats i Phrack, [1].

LOKI2 var skickligt utformad och dolde sin trafik i för ändamålet ovanliga protokoll som DNS och ICMP. Vid angreppens början användes LOKI2 i standardutförande, men anpassades medan angreppen fortgick. En intressant parallell som Kaspersky drar är att ungefär samtidigt som spåren efter Moonlight Maze upphör finns de första spåren av Penquin Turla. Spåren utgörs av data från ett angrepp som påvisar att just en modifierad variant av LOKI2 används i angrepp 2016 mot företaget RUAG som arbetar för den schweiziska militären. Dessa båda varianter av LOKI2 är snarlika och forskarna bakom rapporten spekulerar därför i att Moonlight Maze utvecklades till att bli Turla. Stämmer spekulationerna påvisar de en rysk underrättelseoperation som varit aktiv i 20 år i likhet med, den nyligen upptäcka och troligen NSA-kopplade, Equation Group [3]

Eftersom utvecklingen går så snabbt framåt inom IT-säkerhet är det lätt att glömma bort historien. Detta blir väldigt påtagligt av Kasperskys rapport då skillnaden mellan att ta sig in på servrar genom att använda kända sårbarheter för att få dem att skriva ut lösenord känns extremt avlägset från de skräddarsydda och komplexa attacker som ingår i Turlas arsenal idag och till exempel har innefattat exfiltrering av data via satelliter.

Referenser
[1]- Daemon9, 1997, LOKI2 (the implementation), Phrack Magazine Vol. 7, Issue 51, http://phrack.org/issues/51/6.html#article
[2] – Exploit World, ca. 1996, /cgi-bin/phf vulnerability, http://insecure.org/sploits/phf-cgi.html
[3] - Kaspersky lab, 2015, Equation group questions and answers, https://securelist.com/files/2015/02/Equation_group_questions_and_answer...
[4] – Kaspersky lab, 2017, Penquin’s Moonlit Maze –The dawn of Nation-State Digital Espionage, https://securelist.com/files/2017/04/Penquins_Moonlit_Maze_PDF_eng.pdf
[5] - OWASP, 2013, OWASP Top 10 2013 –The Ten Most Critical Web Application Security Risks, https://www.owasp.org/images/f/f8/OWASP_Top_10_-_2013.pdf

 

Skribent(er): 
Anders Lundman

Post Passwords 2015 Conference - Phraser release on Github

Publicerat: 
2015-12-17

 

Last week I held a tutorial talk on the Passwords 2015 Conference in Cambridge.

 

My talk was titled "Linguistic Cracking of  Pass Phrases using Markov Chains", and the work behind it is a continiuation of my master thesis made this spring/summer.

It was well received, and I got great feedback from some of the best of the best in the passwords area.

 

I also promised to share my work, and I am glad to announce that the code is now released as open source at Github.

It goes under the name of "Phraser", and is available via this link: https://github.com/Sparell/Phraser

 

The slides from the talk is available through this link.

An English writeup on the work is also available here.

One longer but older version (the original thesis) in swedish is available here. It includes some additional general info about passwords and cracking as well as a short intro on context-free grammars, an alternative method I considered for the pass phrase cracking.

 

If anyone is interested in contributing in optimizing the code, you are more than welcome.

Tips/suggestions are also welcome.

 

Throw me a mail at [firstname.lastname]@simovits.com with questions or if you need more info. (My name is Peder Sparell) 

 

Hope to also see you at the RSAConference in San Francisco this spring.

 

 
Skribent(er): 
Peder Sparell

Knäckning av lösenordsfraser på ISACA-dagen

Publicerat: 
2015-10-09 23:00
 
I veckan gick konferensen ”ISACA-dagen 2015” av stapeln på Münchenbryggeriet, och Simovits Consulting fanns representerade på plats.
Dagen var lyckad och intressant med många bra talare som tog upp en hel del intressanta ämnen inom mestadels IT-governance och auditing, och förutom närvaron representerade jag även Simovits Consulting, likväl som KTH, i programmet som en av talarna, då jag under eftermiddagen presenterade mitt examensarbete som slutfördes i somras. Examensarbetet blev nämligen tilldelat ISACA:s årliga stipendium för bästa examensarbete inom området IT-säkerhet, och på ISACA-dagen var det dags att officiellt erhålla stipendiet efter att arbetet presenterats.
 
Titeln på arbetet är ”Lingvistisk knäckning av lösenordsfraser”, och arbetet riktar in sig på knäckning av upp till 20 tecken långa språkriktiga lösenordsfraser eftersom allmänt tillgängliga effektiva metoder idag saknas för att knäcka så långa lösenord. Resultaten visar att den i arbetet använda metoden är relativt effektiv och den lyckas knäcka en hel del långa lösenord som med andra metoder inte skulle vara rimliga att knäcka, och ytterligare optimeringar är möjliga. Om någon har tips på andra relevanta effektiva metoder som riktar in sig på att knäcka långa lösenord så är jag intresserad och ni får gärna maila mig.
 
Lösenordsknäckning av långa lösenord kräver tid, oavsett effektivitet, och eftersom exjobbet hade en deadline fick vissa försök avbrytas som beräknades ta längre tid än några dagar. Men vi har nu fått några nya resultat sedan exjobbets inlämning, vilka kommer att presenteras i en ny rapport vid annat tillfälle under hösten.
 
Tanken är sedan att vi senare i höst/vinter ska dela med oss av tillämpningen, och koden är tänkt att läggas upp som ett open-sourceprojekt så att den som är intresserad kan hjälpa till att optimera och anpassa programmet. Så håll utkik här på bloggen i höst!
 
För den som är intresserad av att läsa mer innan dess, finns en direktlänk till rapporten här, och den finns även publicerad både via KTH, och snart även via ISACA:s stipendiumsida.
Presentationsbilderna från ISACA-dagen finns här.
 
 
Min mailadress följer mönstret [förnamn.efternamn] hos simovits.com
 
Skribent(er): 
Peder Sparell