Hoe kan een werkend virus deels in een onbekende programmeertaal geschreven zijn?

Er staat op Nu.nl een artikel (http://www.nu.nl/internet/2759316/duqu-virus-geschreven-in-onbekende-programmeertaal.html) over een virus dat deels in een andere programmeertaal geschreven is. Hoe kan zo'n virus dan werken? Ik dacht altijd dat een programmeertaal bekend moet zijn in een browser of op een besturingssysteem om effect te kunnen hebben. C++ is een bekende programmeertaal die wordt herkend, maar zou die onbekende programmeertaal dan ook herkend kunnen worden? Kun je je eigen programmeertaal schrijven en werkend gebruiken?

Weet jij het antwoord?

/2500

Het beste antwoord

Zie ook dit artikel: olgens de Russische malware-onderzoekers is het mogelijk dat de Duqu-programmeurs een eigen framework hebben gebouwd om zelfgeschreven C-code met een eigen compiler te compileren of dat er een tot nu toe onbekende taal is ontwikkeld. Het 'Duqu-framework' blijkt bovendien zeer veelzijdig in zijn mogelijkheden. Zo kan de betreffende module op diverse manieren contact maken met de c&c-servers, onder andere via http, proxy servers en netwerk-sockets. Ook kan de module http-requests van de server afhandelen en is het in staat om buitgemaakte informatie door te sturen of nieuwe malware-code te injecteren op andere met Duqu besmette systemen binnen een netwerk.

Bronnen:
http://tweakers.net/nieuws/80552/duqu-troj...

Jazeker, het is de compiler die een verzonnen programmeertaal omzet naar machine-instructies die de processor begrijpt. Dus, je kunt een programmeertaal ontwerpen zoals je wil, maar de daadwerkelijke inspanning zit in het maken van de compiler die de vertaalslag maakt naar machine-instructies.

Dat is heel simpel. Als ik de artikelen lees zijn er alleen nitwits aan het woord. Die kennen alleen C== en aanverwante talen. De computer begrijpt alleen nul-eens. Dus als je het in nullen en enen schrijft begrijpen ze er niets van. Toegevoegd na 1 minuut: C== -> C++

Programmeurs schrijven het liefst in hogere programmeer talen, zoals C, C++, C#, Java etc, maar de computer begrijpt alleen assembler code. Compilers zetten dan een die hogere taal om naar assembler, de taal die wel begrijpbaar is voor een computer. Alle compilers hebben een bepaalde manier om dat te doen, dus als je dan de assembler bekijkt, dan kan je zien wat de compiler is geweest die dat gemaakt heeft. Omdat deze assembler code niet herkend worden, denken ze dat het een onbekende hogere taal is. Je kan het een beetje vergelijken met hoe iemand nederlands spreekt: je kan horen of het een geboren nederlander is, of van Engelse, Duitse, Surinaamse enz. achtergrond is. Als je nu iemand Nederlands hoort praten met een zinsbouw (die je wel begrijpt!) die je niet herkent, dan weet je dus niet wat zijn oorspronkelijke nationaliteit is (bv Chinees, Japans, Koreaans).

Je kunt inderdaad een eigen programmeertaal maken. De duqu programmeurs hebben dat vast ook gedaan. Zo werd hun virus niet zo snel herkend, vermoed ik.

Stel zelf een vraag

Ben je op zoek naar het antwoord die ene vraag die je misschien al tijden achtervolgt?

/100