Hur ofta kan ett program infektera ett annat? LÄt oss rÀkna vÀgarna

 Hur ofta kan ett program infektera ett annat?  LÄt oss rÀkna vÀgarna

LAS VEGAS – Det finns en anledning till att vi hĂ€nvisar till datavirus och enheter eller processer som “infekterade”. Tillbaka nĂ€r virus var nya och program sammanstĂ€lldes till COM-filer var det enkelt att infektera ett program. Viruset bifogade sin egen kod i slutet av mĂ„let och skrev över den allra första instruktionen med ett hopp till den koden. Den senaste instruktionen frĂ„n viruset startade genomförandet av programmets vanliga funktioner – en mycket tidig form av processinjektion.

Black Hat Bug Art

Spola framÄt till den moderna vÀrlden, och möjligheterna Àr mer komplexa och mÄnga. Vid Black Hat-konferensen hÀr presenterade ett par forskare frÄn SafeBreach, som avtalar för att bedöma och mildra sÀkerhetsrisker, en uttömmande undersökning av alla sÀtt som ett program kan injicera kod i ett annat. Deras session Àr inte förrÀn pÄ torsdag, men vi kom ikapp med dem före informationssamtalet.

Medgrundare och CTO Itzik Kotler och VP för sĂ€kerhetsforskning Amit Klein gick ut med sitt team för att samla in, samla och visa alla möjliga sĂ€tt som en kodare för skadlig kod kan Ă€ventyra andra processer. Ursprungligen tĂ€nkte de att de skulle hitta sex eller sju, men de avvecklades med 20 variationer, kokade ner till ett dussin. I en nick till populĂ€rkulturen har presentationen undertexten “Gotta Catch Them All.”

Processinjektion för alla

Jag nĂ€mnde min tanke om gamla COM-programvirus till Kotler, och han var överens om att det var ett mycket tidigt exempel pĂ„ processinjektion. “Det Ă€r viktigt att komma ihĂ„g att COM-filer och DOS inte hade nĂ„gon sĂ€kerhet”, sa han. “Idag mĂ„ste Microsoft erbjuda sĂ€kerhet för alla.”

Kotler och Klein undersökte först alla tekniker som anvÀnts för att injicera kod i Windows-program och slÀngde dem som inte lÀngre var livskraftiga och fann att de fortfarande hade mycket.

Jag kommer inte att gÄ i detalj om de faktiska teknikerna, förutom att nÀmna att tillsammans med denna samling skapade Kotler och Klein ocksÄ en ny som de kallade Stack Bombi. Vid sin Black Hat-presentation slÀpper de ett verktyg som heter Pinjectra som implementerar var och en av de samlade teknikerna.

Vem behöver det?

Pinjectra Àr ett open source-verktyg, fritt tillgÀngligt för alla. Tekniskt kunniga konsumenter kan anvÀnda den för att testa förmÄgan hos en sÀkerhetssvit. FöretagssÀkerhetsteam kan göra detsamma med sitt slutpunktsskydd. Och naturligtvis kan kodare för skadlig kod studera koden för att fÄ nÄgra nya idéer.

Jag frĂ„gade Kotler varför han hade lagt verktyget i skurkarna. “Jag har gjort offensiv sĂ€kerhet i 15 Ă„r. Jag tror att nĂ€r vi inte publicerar saker betyder det inte att de dĂ„liga killarna inte har det”, svarade han. “Det betyder bara att vi som samhĂ€lle inte tar itu med det. Att ignorera verkligheten fixar inte saker.”

Han noterade att verktyget Pinjectra inte har nĂ„gon skadlig nyttolast. Om din sĂ€kerhet inte skyddar mot en viss attack ser du ett popup-meddelande som sĂ€ger “Hello World”, inget mer. “Ja, det kan folk Ă€ndra pĂ„”, erkĂ€nde han. “Men de kan Ă€ndra stort sett vad som helst till ondska.”

Varför fixade inte Microsoft det?

Jag frĂ„gade varför Microsoft inte bara kunde patcha operativsystemet för att förhindra dessa processinjektionsattacker. “Naturligtvis kan jag inte tala för dem, men dessa tekniker kan anvĂ€ndas för legitima Ă€ndamĂ„l,” sa han. “De kan behövas för att stödja Ă€ldre applikationer. Vissa kan anvĂ€ndas för felsökning. Ingenting i processinjektionen Ă€r i sig dĂ„ligt.”

Varför kan din sĂ€kerhetsprodukt göra vad Microsoft inte kan? “Du har ett val i din sĂ€kerhetsprodukt”, sa Kotler. “Du förstĂ„r dess begrĂ€nsningar. Kanske vet du att det bryter med Ă€ldre program, sĂ„ du förbjuder Ă€ldre program. Kanske Ă€r tekniken patenterad och inte tillgĂ€nglig för Microsoft.”

Det Àr uppenbart att processinjektion Àr kvar för att vi ska stanna, eftersom det hade bÄde bra och dÄliga anvÀndningsomrÄden. Men var inte orolig. Om du har skyddat dina enheter med en kraftfull sÀkerhetssvit har du flera lager av skydd som ska hÄlla dig sÀker. Dessa inkluderar att förhindra nedladdning av den skadliga koden, kÀnna igen och ta bort den efter nedladdning, upptÀcka och förhindra dess skadliga beteende, skydda offrets process mot manipulation och mer. Ja, det finns mÄnga öppningar för attacker, men eftersom de Àr kÀnda Àr försvar möjligt.