Hoofdcategorieën
Device Settings

'Dynamisch geobfusceerde' malware in opkomst

Door Mick de Neeve, maandag 8 januari 2007 23:39
Bron: Net Security, submitter: Bram S, views: 21.742

Volgens securitybedrijf Finjan maken virusbakkers steeds vaker gebruik van technieken die bij iedere besmetting dusdanig andere code opleveren, dat opsporingsmethoden van antivirussoftware er niet in slagen de malware te herkennen.

malware clones De malwaretechniek wordt omschreven als 'dynamic obfuscation'. Obfuscation wordt wel door softwarebedrijven gebruikt om sourcecode onleesbaar te maken zodat er niets mee gedaan kan worden bij ongewenste toegang tot de programmatuur. Een variant is code morphing: hierbij wordt de code zodanig gewijzigd dat de uiteindelijke gecompileerde machinecode verandert. Afhankelijk van het type malware zijn beide technieken interessant door de boze bril van de virusschrijver bekeken: er kan mee bereikt worden dat iedere bezoeker aan een geïnfecteerde website op een andere instantie van effectief hetzelfde stukje kwaadaardige software wordt getrakteerd. Dat kan bestaan uit het geven van willekeurige functie- of parameternamen tot het verschuiven van blokken assemblycode. Er zouden al toolkits zijn gesignaleerd die het obfuscatieproces volledig automatiseren. Het blokkeren van dergelijke malware, die zich in talloze verschillende vormen kan openbaren, wordt daardoor tot een explosief moeilijkere taak, zo waarschuwen de onderzoekers.

Volgende 09:12 PlayStation 3 kaapt prijzen weg - update
Vorige 20:13 Sharp showt 's werelds grootste lcd-tv
Advertentie

Reacties

«  1  2  3  »


De medewerkers van het Anti-Virus bedrijf hadden anders dan mooi mijn powerpoint presentatie kunnen maken.

Geen goede zaak dit hoor. Ik denk zelf dat deze ontwikkelingen ertoe leiden dat er in de toekomst alleen nog maar gewerkt zal worden met embedded software die niet verandert kan worden en dus tot een beperking in vrijheid van keuze. Het resultaat: kant en klaar pc van microsoft.

Klopt niet helemaal denk ik: wat wel zo zal zijn is dat er softwarecertificaten zullen komen (is nu ook al zo min of meer, maar het zal een steeds belangrijkere rol innemen)...

En dan maar hopen dat die certificaten niet te duur worden voor kleine bedrijfjes... maar ook niet te goedkoop :/

Ik denk dat de toekomst juist webbased software word en zolang er meerdere bedrijven zijn die paketten van webbased software aanbieden zie ik het verschil niet. Jijzelf kan er dan wel niets aan wijzigen, maar het scheelt wel een hoop gezeur van software die niet up-to-date is en als bestanden dan ook nog is online opgeslagen worden hoef je, je ook niet druk meer te maken dat die beschadigd/zoek raken.
En een bedrijf als Google zorgt er echt wel voor dat hij af en toe een update krijgt.

Ik denk dat de toekomst juist webbased software word
Tenzij bij de consument het besef komt te ontstaan dat online zijn gevaarlijk is, en dus tot een minimum beperkt moet worden. En die kans acht ik groter.


Dat kan ook iets minder :)
---

Zijn gedachtengang is goed te volgen.
Meer werk; En ook geld voor mij.

Als je het er niet mee eens bent kan dat ook zonder mafketel :)


-----------
Ik vind het eerlijk gezegd wel leuk.
Het houd je bezig; Anders zitten ze bij die Anti-Virus software ook maar een beetje saai dingen in te meppen, omdat die in een geval zo voorkomen.

Aan de andere kant kan het heel erg irritant zijn wanneer je aan het werk bent met zoiets.


En evenals Elmuerte zou ik graag de oplossing van finJan horen :)

Tuurlijk is het goed voor de economie. Er worden miljoenen antiviruspakketten verkocht die vaak ook nog ieder jaar vernieuwd moeten worden en dus weer miljoenen oplevert. Er komt inderdaad af en toe wel is een virus dat de boel verziekt en een grote schade oplevert, maar dat maken de antivirus bedrijven wel weer goed met het geld dat ze aan de antivirus pakketten verdienen. De laatste echte grote virus uitbraak was volgens mij sasser of blaster, hoeveel jaar is dat alweer geleden? 2, 3 jaar?
Moet je is uitrekenen hoeveel antiviruspakketten er in 3 jaar geupdate zijn en dat ook nog is 3x (want 3x een jaar)
Ik maak nu even een grove schatting en die zal natuurlijk niet helemaal kloppen, maar stel: 100.000.000 antiviruspakketten, update kost meestal iets van 50,-

100.000.000 x 50 = 5.000.000.000 (5 miljard) x 3 jaar = 15 miljard (in 3 jaar!)
Haal daar ontwikkelkosten en die ene virusuitbraak vanaf en je houdt er echt miljarden aan over.

Een beetje basiseconomie voor COMPUTERNERDNR1 en josko: Het gaat om het efficiënt inzetten van productiefactoren (arbeid, kapitaal) om zoveel mogelijk welvaart te bekomen uit schaarse bronnen resources (en deze liefst min of meer eerlijk te verdelen onder de bevolking).

Laten we even veronderstellen dat iedereen een werkend antiviruspakket koopt/onderhoudt, en we negeren dus de kosten van virusuitbraken. (Dus al een grote toegeving aan jou theorie, gezien de kosten van uitbraken volgens jou de enige kosten voor de gehele economie zijn)

Al die inkomsten van virusbedrijven komen van particulieren en andere bedrijven:
-Particulieren: hebben hierdoor minder geld te besteden aan andere goederen en/of kunnen minder sparen. Vooral andere software (een subsituut dus, de kruislingse prijselasticiteit is dus positief) zal de vraag dus dalen.
-Bedrijven: de aanschaf van antivirussoftware zorgt voor hogere vaste kosten (FK) en hogere marginale kosten (MK) door de onderhoudskosten van al die computers, zeker in de dienstensector.

Bijvoorbeeld een waarschijnlijk gevolg op de markt van andere (minder noodzakelijke) software voor consumenten (aangenomen dat we een min of meer vrije markt hebben): het evenwichtspunt zal veranderen: de software wordt duurder (aanbodscurve is immers gestegen) en er wordt minder van gekocht (vraagcurve is gedaald). En dit is maar een van de vele nadelen ten koste van de boom in de antivirusindustrie.

Een centraal begrip hier is opportuniteitskost: wat is de best mogelijke besteding die de consumenten/bedrijven hadden kunnen doen met het geld dat ze nu kwijt zijn aan antiviruspakketten. Gezien men deze in een virusvrije wereld uitgevoerd had, is dit allemaal misgelopen door de virussen. Dus de nadelen voor de ganse economie overstijgen ruimschoots de voordelen voor de (beperkte) antivirusindustrie.

Dit tekstvak is te beperkt om dit aan te tonen in simpele grafiekjes, maar laat me het illustreren met een extreem, overdreven voorbeeld:
Door een of andere ramp hangt de atmosfeer vol giftige stoffen en iedereen moet buiten permanent een gasmasker dragen.
Jou redenering zou zijn "Goed voor de economie, want die gasmaskerbedrijven zullen miljarden omzet/winst maken", terwijl dit de economie in werkelijkheid veel zal kosten... Terwijl zonder de gasramp bijna alle mensen (productiefactor arbeid!) die in de (grotendeels overbodige) gasmaskerindustrie werken hadden ingezet kunnen worden voor nuttigere zaken.

Economie is meer dan jouw gut feeling... micro-economische modellen kunnen vaak verrassende resultaten opleveren. Als je er meer over wil weten: het boek "Inleiding tot de economie" van Decoster & Berlage is erg uitgebreid en van hoog niveau. Je kan er een vrij uitgebreid analytisch inzicht door verwerven. Zowel op micro- als op macroniveau.

geobfusceerde

ik weet dat het tweakers.net is, en dat we het een beetje op nivo willen houden maar dit kan toch ook iets toegankelijker geformuleerd worden.
Om het voor iedereen leesbaar te houden zou je een omschrijving kunnen gebruiken die iedereen begrijpt.
In plaats van deze titel zou je ook kunnen schrijven dat virussen zich steeds beter vermommen of verbergen.
Dan wordt het ineens voor veel meer lezers interessant.
Zo weet ook de minder ervaren gebruiker tenminste ook dat hem mogelijk nog veel onheil te wachten staat.

Wat goed is voor de een, is een ramp voor de ander.
Daar kom je wel achter als alle PC's in je bedrijf/thuis besmet en niet meer bruikbaar zijn.

Geloof mij, dat soort praktijken zijn misschien wel goed voor de portemonnee van IT-ers zoals jij en ik, maar globaal is het zeer slecht voor de economie. Want op deze manier gaat er geld naar een bedrijfstak(IT) waar het niet voor bedoeld was. Gevolg, bedrijven kunnen minder investeren. Minder investeren is per definitie slecht voor de economie.


Of een Apple, of Linux, of BSD, of etc

De virusscanner kunnen tegenwoordig toch ook al op oneffenheden scannen. Dus als een bestand een vreemde samenstelling heeft, maar nog niet als virus bekend is deze toch wordt gedecteerd of verwijderd? Als dit optimaal werkt dan zou dit in principe geen probleem moeten zijn lijkt mij.

@reacties hieronder:

Wat ik bedoel is heuristische detectie (gedragsherkenning). Deze analyseerd bedreigingen.

Wat bedoel je met oneffenheden in assembly code? Dit klinkt me vrij abstract.

B.v. willekeurige instructies gemengt met de echte instructies die effectief niets doen. Het programma wordt langer, maar de uitvoer is identiek.

Er zijn diverse manieren om bij elke installatie van dergelijke malware dergelijke instructies met elkaar om te wisselen b.v. of uit te wisselen met andere delen van het programma.

Is bijvoorbeeld een security patch dan ook niet een oneffenheid? Of begrijp ik je uitleg verkeerd?

B.v. willekeurige instructies gemengt met de echte instructies die effectief niets doen. Het programma wordt langer, maar de uitvoer is identiek.
Dat is vrijwel onmogelijk te automatiseren, dan moet elk willekeurig programma geannalyseerd worden op efficientie? Veel te ingewikkeld, alle mogelijkheden in het verloop van de assembly code moet nagegaan worden.

Al zou het werken, ook gewone programma's hebben wel 'ns nutteloze code dus dan zouden er veel onterechte hits komen. Bovendien kun je makkelijk extra code toevoegen die wel iets doet maar net anders.

Als er een programma'tje is dat onmiddellijk kan zien of een programma ook maar iets efficienter kan dan weet ik daar veel intereressantere toepassingen voor...

Als een programma gewijzigd wordt en jij weet daar niks vanaf dan zal een goede virusscanner de verandering detecteren en vragen of dit klopt of niet. Zeg jij nee omdat je geen update hebt uitgevoerd van dat programma dan zal je virusscanner dat dus in quarantaine plaatsen en later verwijderen, afhankelijk van je instellingen.
De grootte van de meeste bestanden zijn vaak wel bekend bij je virusscanner als je die al eens eerder hebt gedraaid.

Is dat zo? Ik zie altijd die virusscanners wel standaard op SMART scan staan. Dan vergelijkt ie alleen met de database toch? Aangezien het gros van de pc gebruikers er geen klap vanaf weet en ze installeren norton en denken dat het goed komt wordt het malware probleempje denk ik toch wat serieuzer.

Als gebruiker betaal je geen dure paketten om er iets vanaf te moeten weten en jah, je mag verwachten dat je voor elk nieuw verschijnsel beveiligd word ;)

Zouden ze nog bestaansrecht hebben als ze niet je gegevens kunnen beschermen of je computer ? Lijkt me sterk.

Het word eens tijd dat overheden gaan inzien dat de strafmaat dusdanig hoog moet worden dat een virusschrijver zich wel 2 keer bedenkt om troep te blijven maken. Het verleden heeft laten zien dat die zogenaamde strafmaat vaak bestaat uit beloningen, zoals vette kontrakten bij grote bedrijven.

Zolang dat niet veranderd blijven we dit gezeur houden, terwijl de economie alleen maar verlies lijdt door dit soort zaken, aangezien een groot deel van consumenten wereldwijd winkelen en online bankieren nog steeds niet genoeg vertrouwen.

Dit zal inderdaad een gevaarlijke ontwikkeling zijn, het zal de antivir programmeurs veel meer tijd kosten om zo'n virus compleet te kunnen verwijderen(in al zijn vormen en gedaantes) dit kan ook resulteren in extreem veel updates en enorme virus definitie bestanden. Maar uit eindelijk zullen er wel weer oplossingen worden verzonnen, het moet wel ze worden er min of meer toe gedwongen wat ook weer op zich geen slechte ontwikkeling is. Gaat een beetje 2 kanten op haha.

Het hoeft geen probleem te zijn.
Je kan op de site van VMware een player downloaden en daarbij een OS dat enkel geschikt is om te browsen.
Doordat je in een read only OS zit is het geen probleem om wat voor site dan ook te openen. enkel als je dingen gaat downloaden moet je oppassen wat je binnen haalt.

[gewonemensenmode]VMware? OS? Read-only? Ik snap er nix van hoor, ik klik wel gewoon op ja.[/gewonemensenmode]

Je hebt natuurlijk gelijk dat dat de boel oplost voor normaal sitebezoek, maar tis veels te ingewikkeld voor de gemiddelde gebruiker. Die denkt met z'n virusscanner en vuurmuurtje geactiveerd gewoon veilig te zijn.

Als je die gewone gebruiker na een flinke virusinfectie vertelt wat voor hopeloze bagger Norton is, en dat de rest maar een klein beetje beter is, en vervolgens in een virtuele machine laat surfen is hij prima tevreden. Ik zie niet helemaal waar het ingewikkeld zou worden?

Als je die woorden niet kent vraag ik me af waarom je op deze site zit, maar goed niet iedereen kan alles weten. Er is trouwens ook nog zoiets als een zoekmachine als je graag wilt weten wat iets is.

Voor deze keer een kleine uitleg: VMware is een programma die je op een OS ( = Operating System = besturingsysteem = windows/linux/etc. ) kunt draaien en is een virtuele computer waar je weer een ander OS op kunt installeren. Je ziet een virtuele computer in een venster. Het is dus alsof je een ander besturingsysteem op je bestaande besturingssysteem draait, maar in werkelijkheid is het gewoon een bestand op je harde schijf. Ik denk dat Tees bedoelt dat je ook een kant en klaar VMware bestand kunt downloaden met alleen maar een OS met een browser en verder niets.
Read-only = alleen lezen. Je kunt dus browsen wat je wilt, er word niets naar je (virtuele) harde schijf geschreven, dus ook geen virus/spyware/adware.

Dat is nou precies wat Tees bedoelt.

Niet iedereen met een internet aansluiting komt op Tweakers.net of weet wat de diverse termen betekenen.
Oftewel de noob klikt er maar op los, en dan praat je toch over de meerderheid van de internet gebruikers.

Sorry hoor, maar het is toch van de gekken dat je, simpelweg om het risico op een virus te ontlopen, een volledige virtuele computer met browser moet gaan simuleren? |:(

tot er een fout/exploit in de player gevonden wordt ja..

Ik vraag me dan af, als ik in mijn guest OS vmware tools installeer kan het guest os communiceren met zijn host..

Heb hiervan ook al wat leuke expirimenten voorbij zien komen.

Hoe lang zal het duren voor de malware detecteerd dat hij in een vm zit, en een 'feature' in de vm-drivers of vm-tools misbruikt?

Maar voorlopig is het inderdaad veilig, maar of dat dan ook echt user friendly is .. ?

Als dit zo door gaat ga ik mijn PC maar weer van internet afgooien en alleen "online" als ik het netwerk nodig heb. Nu laat ik mijn PC('s) gewoon aanstaan met als nadeel dat mijn W98 laptop nu weer stuk is omdat die te lang online heeft gestaan en er dus iets tussen mijn firewall/virus ding is doorgekomen die daarachter mijn hele netwerk heb lopen aantasten. Als ik dat meer en meer krijg ben ik niet blij. Vroeger vond ik dat leuk lekker windows opnieuw installeren enzo maar tegenwoordig kan ik mijn tijd wel beter gebruiken (kinderen opvoeden enzo).

Misschien verstandig om die win98 laptop ertussen uit te halen? :Y)

Theoretisch zou ik zeggen dat bij gelijke invoer de uitvoer altijd indentiek zal moeten zijn (anders is er meer mee gebeurd dan slechts obfuscation). Dus door een deel van de code te laten lopen in een sandbox zou je dergelijke programmas aan de uitvoer moeten herkennen. Kortom als de malware bakkers wat bedenken dan bedenken de anti-malware bakkers waarschijnlijk ook wel weer iets.

Ja, en heb je tenlotte een quad-quadcore cpu en een halve terrabyte geheugen om je malware scanners te draaien...

Ik denk dat dat wel meevalt hoor. Niet alle bestanden bevatten x86-code, en alleen die bestanden hoef en kun je in een VM uitvoeren. Het probleem is meer dat deze techniek niet alleen op x86-code kan worden gedaan door wat assembly heen en weer te schieten, maar ook in andere virustalen (denk aan macrovirussen...). virusscanners scannen nu al op het moment dat code wordt uitgevoerd, dus die check moet gewoon wat worden veranderd om ook dit soort veranderende programma's toe te staan :) Er zal iets moeten worden bedacht om niet meer aan de hand van signatures, maar andere kenmerken een virus te herkennen. Misschien dat ze vooraf kunnen analyseren hoeveel API-calls een bepaald virus maakt en bij verdacht gedrag het programma stilzetten.

Ja, en heb je tenlotte een quad-quadcore cpu en een halve terrabyte geheugen om malware en virussen te draaien...

:Y)

teRabyte (met één r dus)

terra = aarde
tera = 10^12

http://nl.wikipedia.org/wiki/Tera

Veel tweakers doen dit consequent fout, wat erg jammer en onbegrijpelijk is. (Waarom schrijft niemand "meggabyte", "killobyte" etc.?)

Maar hoe bepaal je wat de effectieve uitvoer is van een stukje malware? Als er naast het vernielen van je systeem een bestandje foo.txt wordt aangemaakt door malware A en een bestandje bar.txt door malware obfuscated(A) met dezelfde inhoud, is dat dan hetzelfde of moet je dat als verschil zien?

wat de specifieke invoer is en op welke specifieke kenmerken gelet moet worden is om zo maar te zeggen de blauwdruk van het malware of zoals het bij virusscanners heet 'virus definition files'. Stel dat een stuk malware de harde schijf scanned voor bestanden die eindigen met de extensie PDF. Als de malware een PDF bestand vind opent het een verbinding met een server genaamd http://im.a.malware.server. Het feit dat de malware reageert op het vinden van een PDF door een verbinding met deze server zal genoeg moeten zijn als 'definition'. Voor de malware scanner: De invoer is een fake PDF bestand, de uitvoer is het feit dat er verbinding gemaakt wordt met deze server. De malware kan dan opzich duizend andere dingen doen, maar die zijn op zich niet relevant voor de herkenning.

Dat is ook te faken, wat als je pdf een link bevat naar
http://im.a.malware.server en de volgende besmette pdf naar http://me.to.malware.server en de volgende naar http://something.else.malware.server

Een webserver die alle subdomeinen bedient via 1 website is niet moeilijk in te richten, virussen die steeds een andere 'verschijning' maken (blijkbaar) ook niet. De virusscanner-maker zal (traditioneel) op voorkomen van http://im.a.malware.server scannen en niet op http://[*]malware.server

regel 1. als de code steeds verandert is het malware = blokkeren + wissen
regel 2. als nieuwe code iets doet wat niet mag is het malware = blokkeren + wissen

Wat is nou precies het probleem?

Ja daar heeft ie een punt.... :Y)

regel 1. als de code steeds verandert is het malware = blokkeren + wissen
Hoe controleer je dat dan? iedere keer als je je computer opstart alle files controleren?
regel 2. als nieuwe code iets doet wat niet mag is het malware = blokkeren + wissen
Hoe weet een computer wat niet mag....

[edit]
@ELB
dus je denkt dat alle virussen iets met het register doen.
En hoe zit het dan met programma's installeren enz.

als het ZO simpel was hadden ze daar jaren '90 al iets op gevonden....

Hoe weet een computer wat niet mag....
Daar zit nou net wél weer een patroon in ;)

Niet mag = registry aanpassen, processen kapen

Hoe controleer je dat dan? iedere keer als je je computer opstart alle files controleren?
en hash bij houden van alle bestanden die worden gestart als windows start is best te doen.

het probleem is eerder dat het bestand al gemorphed is voor het op je computer komt, en dan niet meer veranderd,
als jouw computer dan het virus naar een andere computer zend zal het alleen dan de code weer veranderen.

regel 1 : niets aan te doen mi,
regel 2 : door te definiëren wat wel mag, wat we in het vakjargon een 'positief securitymodel' plegen te noemen. Je laat toe wat herkend wordt als goed en blokkeert al de rest. Mogelijke oplossingen hiervoor zijn Cisco Security Agent en McAfee Policy Enforcer (er zijn er nog een pak andere ...). Jammer genoeg gaat hier een grondig studie- en leerproces aan vooraf wat voor thuisgebruik de lat wel heel erg hoog legt.

nota : een negatief securitymodel (Anti-X) gaat uit van een referentie van wat slecht is en blokkeert/elemineert enkel dat ... dit model is voorbijgestreefd. Hij die zich nu nog veilig voelt met anti-x software op z'n machine/serverpark mag zich ernstig zorgen beginnen maken.

Lijkt me toch niet zo moeilijk, "mag niet tenzij uitdrukkelijk toegestaan". ofwel regestry alleen aanpassen na uitdrukkelijk toestemming van gebruiker, lijkt me ook voor de thuisgebruiker niet moeilijk om onderschijd te maken tussen normaal gebruik en installatie !!


of "mag niet tenzij ingelogd als admin", alleen het installeren van software toestaan als administrator en het admin account verplicht met een veilig wachtwoord beveiligen.

of ben ik gek ??

Het gaat er volgens mij om dat door deze techniek(en) elke bezoeker van een website/ontvanger van malware andere code krijgt, die daarna niet meer veranderd. Doordat iedereen andere code krijgt is het niet in een signatures te vangen en/of te herkennen.

security through obscurity.

wat voor de een werkt, werkt voor de andere natuurlijk ook, alleen pech voor jou dat de andere een virusschrijver is |:(

2e generatie virussen: virussen door virussen geschreven... doet me denken aan allerlei sci-fi films...

Het einde der tijden komt er aan! :+
«  1  2  3  »

Op dit item kan niet meer gereageerd worden.

Volgende 09:12 PlayStation 3 kaapt prijzen weg - update
Vorige 20:13 Sharp showt 's werelds grootste lcd-tv
VNU Media logo Hosted by True

© 1998 - 2012 Tweakers.net B.V. - Alle rechten voorbehouden - Contact - Jouw privacy - Algemene Voorwaarden

Uitgever van:

Website van het jaar 2011