Archive for the ‘Elak kod’ Category

Märklig kod för slumpmässig header

Tuesday, June 3rd, 2008

DailyWTF dök det upp en postning om en märklig kod som försöker åstadkomma slumpmässiga headrar. Koden i fråga ser ut så här:

Dim rNumber As Integer = 0
rNumber = RandomNumber(13, 1)
Select Case rNumber
Case 0
Me.hl_logo.ImageUrl = "~/sysimages/header.jpg"
Case 1
Me.hl_logo.ImageUrl = "~/sysimages/header2.jpg"
Case 2
Me.hl_logo.ImageUrl = "~/sysimages/header.jpg"
Case 3
Me.hl_logo.ImageUrl = "~/sysimages/header.jpg"
Case 4
Me.hl_logo.ImageUrl = "~/sysimages/header2.jpg"
Case 5
Me.hl_logo.ImageUrl = "~/sysimages/header2.jpg"
Case 6
Me.hl_logo.ImageUrl = "~/sysimages/header.jpg"
Case 7
Me.hl_logo.ImageUrl = "~/sysimages/header.jpg"
Case 8
Me.hl_logo.ImageUrl = "~/sysimages/header2.jpg"
Case 9
Me.hl_logo.ImageUrl = "~/sysimages/header2.jpg"
Case 10
Me.hl_logo.ImageUrl = "~/sysimages/header.jpg"
Case 11
Me.hl_logo.ImageUrl = "~/sysimages/header2.jpg"
Case 12
Me.hl_logo.ImageUrl = "~/sysimages/header.jpg"
Case Else
Me.hl_logo.ImageUrl = "~/sysimages/header2.jpg"
End Select

(Que pasa? WTF?! Eller på Dalsländska: Ööööööö…)

Personen som postade koden hade pratat med personen som skrivit koden, och motiveringen till koden var:

It makes it more random because you get more repeats when you select from two random numbers than you do with thirteen.

Nära skjuter ingen hare…

Riktigt elak hårdvara

Wednesday, April 30th, 2008

USENIX-konferensen Large-Scale Exploits and Emergent Threats 08 (LEET08!) presenterade Samuel T. King, Joseph Tucek, Anthony Cozzie, Chris Grier, Weihang Jiang och Yuanyuan Zhou en mycket intressant artikel om hårdvarubaserade trojaner.

LEET-logga

Artikeln Designing and Implementing Malicious Hardware, som utsågs till konferensen bästa artikel, är något av det mest intressanta och skrämmande jag läst på länge. Artikelns sammanfattning beskriver väl vad den handlar om:

Hidden malicious circuits provide an attacker with a stealthy attack vector. As they occupy a layer below the entire software stack, malicious circuits can bypass traditional defensive techniques. Yet current work on trojan circuits considers only simple attacks against the hardware itself, and straightforward defenses. More complex designs that attack the software are unexplored, as are the countermeasures an attacker may take to bypass proposed defenses.

We present the design and implementation of Illinois Malicious Processors (IMPs). There is a substantial design space in malicious circuitry; we show that an attacker, rather than designing one specific attack, can instead design hardware to support attacks. Such flexible hardware allows powerful, general purpose attacks, while remaining surprisingly low in the amount of additional hardware.

We show two such hardware designs, and implement them in a real system. Further, we show three powerful attacks using this hardware, including a login backdoor that gives an attacker complete and highlevel access to the machine. This login attack requires only 1341 additional gates: gates that can be used for other attacks as well.

Malicious processors are more practical, more flexible, and harder to detect than an initial analysis would suggest.

Författarna börjar med att beskriva hur olika attacker rört sig nedåt från applikation och OS till firmware och till virtualiseringssystem. Men, frågar sig författarna, hur svårt är det att modifiera en hårdvarukonstruktion, en processor, så att den dels gör systemet som kör på hårdvaran osäkert, och om det går att göra så att systemet inte märker av modifieringen.

Författarna har valt att modifiera open-source-processorn LEON3 från Göteborgsbaserade Gaisler Research.

LEON3-processorn är placerad i ett högst ordinärt och typiskt HW-system med USB-kontroller, VGA-kontroller m.m. På LEON3-processorn kör man sedan ett normalr GNU/Linux-system. Hela klabbet har realiserats på en Xilinx-FPGA.

I LEON3 har man sedan implementerat olika attacker. Den första attacken är en modifiering till LEON3-processorns MMU som gör att en process som känner till modifieringen kan trigga procesorn att ignorera minnesskydd och låta processen ge sig själv rootaccess. Författarna förklarar:

Our memory access mechanism provides hardware support for unprivileged malicious software by allowing access to privileged memory regions. Malicious software triggers the attack by forcing a sequence of bytes on the data bus to enable the memory access circuits. This sequence can be arbitrarily long to avoid false positives, and the particular sequence must be agreed upon before deployment.

Once the sequence is observed, the MMU in the data cache ignores CPU privilege levels for memory accesses, thus granting unprivileged software access to all memory, including privileged memory regions like the operating system’s internal memory. In other words, loading a magic value on the data bus will disable protection checking.

We implement this technique by modifying the data cache of our processor to include a small state machine that looks for the spe-cial sequence of bytes, plus some additional logic in the MMU to ignore privilege levels when malicious software

Författarna beskriver även en shadow-mod som gör det möjligt att gömma trojan genom att skapa en extra processormod, och kod som körs i denna mod döljs från resten av systemet. Denna shadow-mod används sedan av författarna för att implementera en funktion som snor lösenord samt ett sätt att implementera en bakdörr rätt in i OS:et. Mycket imponerande, fräckt och skrämmande.

Det författarna visar är hur lite som krävs för att implementera den här typen av funktioner. Författarna lade till mindre än 200 rader kod till VHDL-koden LEON3 består av. Minnesmodifieringen krävde knappt 1000 gates och shadow-funktionen drygt 1300 gates. Närmast avrundningsfel i en modern HW-konstruktion.

Författarna avslutar sin artikel med en diksussion om hur man kan skydda sig mot den här typen av attacker. Bla om man kan använda sidoeffekter för att detektera om en krets utför operationer man inte tänkt. Författarna konstaterar att det i dag antagligen finns få/inga vettiga skyddmekanismer, vilket jag håller med om.

Frågan man bör ställa sig i det här läget är dock: Men hur stor är risken egentligen?

Som exempel på ett ökande risk för trojaner i hårdvarukonstruktioner citerar författarna en rapport från USAs Department of Defence Science Board som bland annat skriver att

First, it has become economically infeasible to procure high performance ICs other than through commercial suppliers. Second, these commercial suppliers are increasingly moving the design, manufacturing, and testing stages of IC production to a diverse set of countries, making securing the IC supply chain infeasible. Together, commercial-off-the-shelf (COTS) procurement and global production lead to an “enormous and increasing” opportunity for attack

Att det finns problem med äktheten hos kretsar visar om inte annat att det nu bildas organisationef för att försöka stävja den snabbt ökande förekomsten av piratkopierade kretsar.

Det är inte så svårt att tänka sig att dessa kretsar skulle kunna innehålla mer än den piratkopierade konstruktionen. Man får ett mervärde man kanske inte hade tänkt sig. (Tomas Gilså uppmärksammade detta i en artikel om risker med piratkopierade routrar och switchar - ja jag är citerad.

På Cryptography-listan kommenterade Karsten Nohl trenden mot snabbt ökande komplexitet på chipnivå och användningen av IP-cores med:

Hardware designs currently move away from what in software would be open source. Chip obfuscation meant to protect IP combined with the ever increasing size of chips makes it almost impossible to reverse-engineer an entire chip.

Helt sant. I dag bygger man chip med allt fler och allt större IP-cores. Men hur vet man att dom faktiskt bara gör det dom säger att dom gör. Att kontrollera att konstruktionen följer en spec är en sak, men att visa att den även kan göra något mer?

Så möjligheten att modifiera konstruktioner, och den vägen få in en elak HW-funktion finns, frågan är om det finns kompetens och motivation? Kompetens kan man tyvärr köpa, så frågan är om någon är intresserad. Skall man döma av den snabbt ökande ekonomiska IT-brottsligheten finns det en hel del som är beredda att jobba hårt och lägga mycket pengar på att vara elaka.

Den här artikeln har uppmärksammats en del på krypto- och säkerhetslistor. Även Matt Blaze har bloggat kloka tankar som är värda att läsa. I diskussionen på Cryptography påpekades det att mikrokoden i Intels och AMDs processorer går att uppdatera. Hur kontrolleras att den mikrokod som laddas ner är ok? Någon som vet?

Jag tycker att artikeln som presenterades på LEET08 är mycket, mycket intressant. Och jag hoppas att artikeln får uppföljning i form av metodik och verktyg för att inspektera HW-konstruktioner och chip. Jag tror att vi kommer att behöva återkomma till den här frågan.

Hälsa på ditt IT-säkerhetshot

Tuesday, March 18th, 2008

MessageLabs har skapat bilder av olika typer av IT-säkerhetshot. Med utgångspunkt från källkoden har konstnären Alex Dragulescu skapat bilder av olika virus, trojaner och andra typer av hot. Så här ser exempelvis viruset (masken) Netsky ut:

Netsky

Och här är spywareprogrammet Ghost:

Ghost

Det jag gärna hade sett är hur olika versioner/varianter av samma hot ser ut. Det är inte alls säkert att detta leder till några större fördelar och att det underlättar förståelsen. Men fräckt är det.

Testa filer med VirusTotal

Wednesday, January 9th, 2008

VirusTotal är en tjänst på nätet där man kan testa filer man misstänker innehåller elak kod mot ett stort antal AV-program. Bakom VirusTotal står säkerhetslaboratoriet Hispasec Sistemas och sidan sponsras av ett stort antal AV-tillverkare:

* AhnLab (V3)
* Aladdin (eSafe)
* ALWIL (Avast! Antivirus)
* Authentium (Command Antivirus)
* Avira (AntiVir)
* Bit9 (FileAdvisor)
* Cat Computer Services (Quick Heal)
* ClamAV (ClamAV)
* CA Inc. (Vet)
* Doctor Web, Ltd. (DrWeb)
* Eset Software (ESET NOD32)
* ewido networks (ewido anti-malware)
* Fortinet (Fortinet)
* FRISK Software (F-Prot)
* F-Secure (F-Secure)
* Grisoft (AVG)
* Hacksoft (The Hacker)
* Ikarus Software (Ikarus)
* Kaspersky Lab (AVP)
* McAfee (VirusScan)
* Microsoft (Malware Protection)
* Norman (Norman Antivirus)
* Panda Security (Panda Platinum)
* Prevx (Prevx1)
* Rising Antivirus (Rising)
* Secure Computing (Webwasher)
* Softwin (BitDefender)
* Sophos (SAV)
* Sunbelt Software (Antivirus)
* Symantec (Norton Antivirus)
* VirusBlokAda (VBA32)
* VirusBuster (VirusBuster)

På VirusTotals webbplats finns även en sida med statistik. Bland annat kan man se vilka som är dom vanligaste typerna av elak kod VirusTotal detekterar just nu:

VirusTotal just nu.

Det går att skicka filer till VirusTotal med SSL, däremot hittar jag ingen info om vad som händer med filerna efter att dom analyserats av VirusTotal. Litar man på att VirusTotal är snäll och skyddar filerna känns detta som en bra tjänst för att testa misstänkta filer.

Samtidigt finns det diskussioner om att utvecklare av elak kod själva använder VirusTotal för att verifiera att deras kod flyger under RADARn, något VirusTotal tar upp på i ett inläggsin blogg.

Ross Andersson söker efter ondska

Thursday, November 22nd, 2007

En av mina stora idoler på säkerhetsfronten, forskaren Ross Andersson har hälsat på Google och hållit en presentation. Presentationen Searching for Evil finns på YouTube och är väl värd att titta på:

Sammanfattningen på YouTube förklarar vad presentationen handlar om:

Computer security has recently imported a lot of ideas from economics, psychology and sociology, leading to fresh insights and new tools. I will describe one thread of research that draws together techniques from fields as diverse as signals intelligence and sociology to search for artificial communities.

Evildoers online divide roughly into two categories - those who don’t want their websites to be found, such as phishermen, and those who do. The latter category runs from fake escrow sites through dodgy stores to postmodern Ponzi schemes.

Google-video om Gmail och spam

Tuesday, November 20th, 2007

Google har släppte en video om hur de arbetar för att bekämpa spam i Gmail:

Kanske inte den mest seriösa videon. Men problembeskrivningen i sig tycker jag stämmer. Och om de verkligen använder den teknik de beskriver för att identifiera spam (inklusive optisk teckenigenkänning i bilder) är det klart intressant.

Dagens säkerhetsdumhet presenteras av….

Thursday, November 15th, 2007

FPGA-leverantören Xilinx.

Var precis inne på Xilinx webbplats och upptäckte att på sidan för att ladda ner utvecklingsverktyg fanns den här uppmaningen till Xilinx användare:

Turn off virus scanner to reduce installation time. Download file will contain installations for multiple platforms. After downloading, unzip the file and run “setup”

Detta på en webbplats som endast är skyddad med ett lösenord. Jag som användare har ingen möjlighet att verifiera att:

  1. Sidan verkligen tillhör Xilinx och är en del av deras webbplats.
  2. Programmet som laddas ned kommer från Xilinx
  3. Programmet som laddats ned inte påverkats på vägen

Att då uppmana sina användare att stänga av viruskontrollen är kort sagt uselt säkerhetstänkande. Xilinx använder SSL/TLS på delar av sin webbplats, men inte på sidan för nedladdning. Och hur svårt är det egentligen att ta fram och publicera information om storlek och signatur för de filer man gör tillgängliga? (Även om en sådan information behöver skyddas den också - om webbplatsen är hackad är antagligen den informationen inte att lita på.)

Jag har skickat en kommentar/uppmaning till Xilinx om att ta bort sin uppmaning och tänka till på säkerheten. Om jag får ett svar återkommer jag.

En kollega kom för övrigt med en bra observation: Varför är det så få kommersiella företag som publicerar signaturer för de filer och program de gör tillgängliga? Ser man MD5-, SHA-signaturer kan man nästan vara säker på att leverantören är ett öppen/fri kod-projekt.

Intelligenta algoritmer och dumma människor

Tuesday, November 13th, 2007

Jag har tidigare skrivit om CAPTCHA - Completely Automated Public Turing test to tell Computers and Humans Apart, dvs automatiserade tester avsedda att särskilja människor och maskiner.

Syftet med CAPTCHA är att kunna blockera maskiner från access till olika resurser, exempelvis diskussionsforum eller nätspel, men samtidigt inte hindra mänskliga besökare. Ofta är CAPTCHA:n utformad som en förvrängd bild där människans förmåga att tolka bilder utnyttjas:

Typisk CAPTCHA.
(Typiska CAPTCHA-bilder lånade från Wikipedia.)

CAPTCHA och intresset för att komma åt de tillgångar CAPCTHA-tekniken skyddar har lett till ett ställningskrig mellan de som utvecklar CAPTCHA-algoritmer och de (typiskt SPAM-troll) som försöker hitta på algoritmer för att knäcka CAPTCHA-algoritmerna. Men om man nu tycker att det är svårt att hitta på smarta algoritmer för att attackera CAPTCHA kan man istället ta till dumma människor.

Computerworld hade för ett tag sedan en artikel om hur spammare använder access till porr för att locka användare att tolka CAPTCHAs plockade från webbplatser spammarna vill få access till:

Spammers are using a virtual stripper as bait to dupe people into helping criminals crack codes they need to send more spam or boost the rankings of parasitic Web sites, security researchers said today.

A series of photographs shows “Melissa,” no relation to the 1999 worm by the same name, with progressively fewer clothes and more skin each time the user correctly enters the characters in an accompanying CAPTCHA (Completely Automatic Public Turing Test to Tell Computers and Humans Apart), the distorted, scrambled codes that most Web mail services use to block bots from registering hundreds or thousands of accounts. Spammers rely on Web e-mail accounts because they’re disposable; by the time filters have blocked the address, the spammers throw it away and move on to another.

The CAPTCHAs that Melissa feeds to users are, in fact, legitimate codes snatched from Yahoo Mail’s signup screens, said analysts at Trend Micro Inc. The hackers, frustrated at their inability to come up with a way to automate account registration, are getting users to do their dirty work.

“They’re using human beings in semi-real time to translate CAPTCHAs by proxy,” said Paul Ferguson, a network architect at Trend Micro. “You have to give them this, it’s clever.”

Each time the user correctly decodes the CAPTCHA, a new Melissa photo is revealed, pulled from a hacker-controlled server in Israel, according to Symantec Corp. The plain-text decodes are sent to that same server, where they are presumably banked for future use in generating large numbers of Yahoo Mail accounts.

På Wikipedias sida om CAPTCHAs finns även en länk till en sida med information om där människor anställts för att sitta och lösa CAPTCHAS, på liknande sätt som folk anställs för att träna upp karaktärer i spel som World of Warcraft. (Den sidan kallar fenomenet Turing farm.)

Jag vill ändå separera dessa två typer av attacker mot CAPTCHAs där människor plockas in som beräkningsenheter. I det förra fallet handlar det om att på olika sätt lura och locka folk att hjälpa till med något de annars inte hade ställt upp på. Och frågan är hur man skyddar sig mot detta. Finns det bra sätt att tekniskt stoppa denna typ av attack?

Dels kan man försöka stoppa möjligheten att skicka CAPTCHAn vidare, vilket i sig inte är helt lätt. Men frågan är om CAPTCHA-tekniken i sig går att förändra? Jag bloggade för ett tag sedan om knäppa CAPTCHAs, men det kanske är så att för vissa webbplatser är CAPTCHAs med domänspecifik semantisk koppling lösningen.

Matte-CAPTCHA.
(Matte-CAPTCHA.)

Dvs bara användare som verkligen är intresserade av access till webbplatsen är kapabla att lösa CAPTCHAn… Med konsekvens att Internet blir än mer slutet och fragmenterat. Men knäppa CAPTCHAs är kanske inte så knäppt i alla fall.

Recensions-fusk på Amazon

Tuesday, November 6th, 2007

Jag sitter just och tröskar igenom boken AVIEN Malware Defence Guide.

Boken AVIEN Malware Defence Guide.

För att kolla upp lite fakta och vad andra tyckt om boken kollade jag på Amazon. Bokens betyg på Amazon är fem fyrar, och är baserat på två läsarkommentarer, mer exakt den här:

5.0 out of 5 stars The *must have book* for all Malware administrators, August 11, 2007 By Michael P. Blanchard “co-Author of AVIEN Malw… (Mass, USA)

If your book budjet only allows for one book this year, this is the book you should buy. If you’re a malware administrator for a small to huge size enterprise this is the book that will help guide you through your day to day activities.

The section on detection of a piece of malware that may be running on a user’s machine is extreamly helpful, the tools mentioned in that chapter will all become staple items in your outbreak “jumpkit” after reading that section.

There really isn’t any other book like this out on the market today. The entire book was written by the global top professionals in the field that live with the malware threat on a daily basis. They are not people that are locked away in a lab somewhere only discecting threats, although that is a part of many of their jobs. These authors know what it’s like to be in the trenches, trying to protect their enterprise environments while still maintaining that extreamly delicate balance that allows their users to perform the daily activities that they require to make the enterprise run smoothly. These authors help walk you through their sections as if they are right there with you guiding you along and answering your questions.

Och:

5.0 out of 5 stars One of the Author’s Speaks, August 10, 2007 By Kenneth Bechte

This is the book I wish I had when I started in the field back in 1988. Every one of the contributors to the book are great and knowledgeable folks. Unlike the other books on this subject everyone who contributed is highly regarded, experienced and active in the career field.

This is a MUST for every Corporate IT library.

Men hallå?! Det är alltså två av författarna till boken som skrivit dessa recensioner! (Tur att dom inte tog till överord…)

Jag har inte bestämt mig för om boken är bra eller ej, men att författarna är ohederliga och inte att lita på, det har jag kommit fram till.

Ett säkert lösenord

Monday, October 15th, 2007

Den här bilden dök upp i en artikelWorse Than Failure:
PW för MS Knowledge Base
Visst, det är nog ingen som kan gissa ditt lösenord - men blir det inte lite jobbigt att logga in? … Och gissningsvis måste du byta lösenord innan du lärt dig det gamla utantill…