IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Frankenstein : le virus qui s'assemble à partir de logiciels légitimes
Pour 'se fondre dans la foule'

Le , par tarikbenmerar

5PARTAGES

9  0 
Victor Frankenstein cousait les parties des corps de ses victimes entre elles pour créer des monstres. Désormais, on s'en inspire pour créer un virus informatique dévastateur, difficile à détecter.



Ce virus a été nommé Frankenstein par ses créateurs Vishwath Mohan et Kevin Hamlen de l'université du Texas. Après l'infection d'un ordinateur, il pioche dans des logiciels communs (et légitimes), tels que Internet Explorer ou Notepad, des fragments de codes appelés gadgets, qui servent à exécuter un type précis de tâches. Ensuite, Frankenstein qui comporte des modèles préécrits exécutant certaines tâches, remplace ces derniers avec les gadgets récupérés.

Cette opération se répète à chaque infection, ce qui signifie que le logiciel malveillant apparaît toujours différemment aux yeux de l'antivirus, tout en assurant le même impact sur la machine infectée.

Hamlen explique que « les deux algorithmes de test que nous avons choisi sont plus simples qu'un logiciel malveillant complet, mais ils représentent une logique maîtresse qu'un vrai malware pourrait utiliser pour se déballer ». Il affirme : « Nous considérons ceci comme une forte indication qu'on peut élargir le concept à un malware complet ».

Le projet de recherche a été financé par l'US Air Force, et Hamlen affirme que Frankenstein peut être particulièrement utile pour les agences de sécurité nationale, pour infiltrer des systèmes informatiques bardés de défenses Antivirus non identifiés.

Il peut ainsi déduire les défenses mises en place à partir des fichiers existants sur le système pour « se fondre dans la foule ».

Source : New Scientist

Et vous ?

Que pensez-vous de ce genre de nouveau concept de Virus ?
Est-il si puissant ce Frankenstein ?

Une erreur dans cette actualité ? Signalez-nous-la !

Avatar de Freem
Membre émérite https://www.developpez.com
Le 22/08/2012 à 11:43
Marrant cette news après les virus qui ont touchés certain pays...
4  0 
Avatar de kolodz
Modérateur https://www.developpez.com
Le 22/08/2012 à 14:30
L'important dans cette technique est de séparé le point d'entré et l'utilisation finale du hack.
Si le défenseur doit vérifier la non présence de point d'entré, cela devient plus complexe que de vérifier la non-présence d'un programme (fichier).

Ce type d'attaque est selon moi très efficace contre un système mise à jour régulièrement depuis des sources extérieurs diverses. Car chaque programme qui dispose d'un système de mise à jour dispose d'un point d'entré légitime.
Pour un système fermé, où il existe une source fiable (et unique de préférence) des programmes. La réalisation d'un anti-virus consisterai simplement à vérifier la correspondance entre le programme sur la machine et sa version "source". Cela veux aussi dire qu'un programme non à jour serai considéré comme non licite et donc à ré-installer avec la nouvelle version de la source.*1 La

Que pensez-vous de ce genre de nouveau concept de Virus ?
Le concept n'est pas nouveau, mais son implémentation l'est. L'ensemble est basé sur le nombre de point d'accès différent qu'est capable de crée un même virus.
Mais si ce virus crée l'ensemble de ces oint d'accès lors de l'infection d'une machine, alors une simple observation du virus permettra de listé ces points d'entré. L'infection serai plus étendu, mais la relativement simple.

Est-il si puissant ce Frankenstein ?
Le principe l'est, mais tout dépend de la réalisation. Si un virus est capable de crée 10 type d'entré différente. Et que celui-ci n'en crée deux nouvelles sur chaque ordinateur infecté. Il vous faudra étudier un peu plus de 10 ordinateurs infectés avec ce virus pour trouver l'ensemble des portes à bloquer.*2
Ce virus ne serai pas in-stop-able, mais lourd à contrer.
Mais cela se base sur un type de défense très perfectible en de nombreux points.

Note 1 : la réalisation d'un sha1 ou d'un md5 sur les fichiers d'un programme serai suffisant à l'établissement d'une identification simple d'une version d'un programme et donc à sa non corruption. Cela prend en hypothèses que seul des personnes mettant à jour la source peuvent modifier un programme...
Note 2 : Je prends en hypothèse qu'on n'ai pas accès à la génération des points d'entrée.
2  0 
Avatar de rt15
Membre éclairé https://www.developpez.com
Le 22/08/2012 à 16:42
Est-il si puissant ce Frankenstein ?
Pour le moment pas des masses, il se résume à du python et du prolog.
Tout ça prend en entrée des exécutables quelconques et disons... un algo (Semantic blueprint dans la doc). Cet algo est stocké dans un langage intermédiaire qui ressemble à de l'assembleur (Sous forme de "data". Frankenstein "compile" cet algo non pas en générant du code machine, mais en assemblant des morceau des fichiers exécutables passés en entrée.



De cette manière, Frankenstein peut générer n fichiers exécutables avec du code machine (Venant d'application gentille) différent de l'un à l'autre et pourtant faisant la même chose.

Donc dans l'état actuel, il pourrait être utilisé comme une usine à malware difficilement détectables. Mais pas tout à fait encore, car les possibilités au niveau de l'algo sont encore limitées. Ils ont fait un tri par insertion par exemple. Super méchant lol.

L'étape d'après consiste à faire un vrai virus, autrement dit a écrire frankenstein dans le langage intermédiaire et à le faire générer par lui même !
Il pourra enfin se propager en chiant tout un tas de petits morveux qui font la même chose que lui, mais avec des morceaux de viandes différents. Ces morveux vont eux même s'empresser de devenir papa et ainsi de suite jusqu'à la fin du monde.
2  0 
Avatar de jmnicolas
Membre éprouvé https://www.developpez.com
Le 23/08/2012 à 8:45
Quoiqu'il en soit avant que ce virus puisse nuire, il faut que qu'un attaquant logiciel ou humain ait pris le contrôle de la machine cible et y ait installé le "squelette" de Frankenstein.

C'est quand même pas anodin comme pré-requis.
2  0 
Avatar de messinese
Membre éclairé https://www.developpez.com
Le 22/08/2012 à 14:36
Et bien a priori il faut juste comparer ce type de 'polymorphisme' (si je puis dire) avec les attaques en ROP (Return Oriented Programming) afin de bien comprendre le fonctionnement.

Alors oui, si tu trouve un A.V qui check ton executable avant et aprés exécution tu n'obtiendras quand meme rien !!
Et c'est la que c'est génial justement , il se sert de routine piochée dans l'environnement sur lequel il se trouve afin d'executer ce qu'il souhaite sans avoir de comportement suspect puisque ce n'est pas lui qui le fait !!

Si il as besoins par exemple d'un appel à une fonction de type "socket" (juste pour l'exemple bien sur) alors il ira la chercher par exemple dans I.E de telle maniere que lui ne l'appellera pas directement et ainsi desuite.
C'est ce principe de ce qu'on appelle "Gadgets" qui en fait une arme redoutable.

Une chose est sure : ça change des injection de code dans les dll/lib ou processus actifs !

doc supplémentaire sur le sujet

PS: Qui plus est, les A.V fonctionnent sur des signatures et la ce n'est pas gagné car comment définir la signature d'un tel malware??
1  0 
Avatar de messinese
Membre éclairé https://www.developpez.com
Le 22/08/2012 à 11:39
Article trés intéréssant !

En effet, quand on y pense en s'inspirant des techniques d'exploitation de BoF par ROP (construction de gadget pour bypasser les protections actuelles) cela semble tout a fait réalisable !

C'est trés bien pensé de la part des auteurs.

Donc aux questions je répondrai:

Que pensez-vous de ce genre de nouveau concept de Virus ?
Que c'est assez "simple" bien que particulier cela dis trés bien pensé et demande beaucoup de recherche et de temps.
J'en félicite les auteurs tout en me disans que ce nouveau genre peut etre trés largement diffusable et donc dévastateur!

Est-il si puissant ce Frankenstein ?

Je pense qu'il peut l'etre et qu'avec quelques évolution ça peut etre une arme redoutable à l'heure de la guerre des systèmes de l'information.
0  0 
Avatar de hotcryx
Membre extrêmement actif https://www.developpez.com
Le 22/08/2012 à 11:47
Intéressant mais il y aurait quand même moyen de les détecter: ils changent de "forme" (le code change). Donc toute vérification avant et après, permettront de les identifier.

Maintenant, si le code ne change que sur l'ordinateur infecté, et je crains que ce soit le cas pour plus d'efficacité, effectivement ce sera difficile de les détecter.
0  0 
Avatar de Freem
Membre émérite https://www.developpez.com
Le 22/08/2012 à 14:18
Citation Envoyé par hotcryx Voir le message
Intéressant mais il y aurait quand même moyen de les détecter: ils changent de "forme" (le code change). Donc toute vérification avant et après, permettront de les identifier.

Maintenant, si le code ne change que sur l'ordinateur infecté, et je crains que ce soit le cas pour plus d'efficacité, effectivement ce sera difficile de les détecter.
Ça dépends, si c'est, comme je le pense, la nouvelle copie qui est différente, alors ce système outrepasse ce souci.
Que la nouvelle copie soit sur le même système ou pas ne change rien.
0  0 
Avatar de zoonel
Membre actif https://www.developpez.com
Le 22/08/2012 à 15:44
plus d’info ici:
https://www.usenix.org/conference/wo...enign-binaries

D’après ce que j’ai compris ça ne sert qu’a créer un nombre important de mutants du virus/malware difficile à détecter par les antivirus/antimalwares (d’après les auteurs) car combinés à partir de bout de code de programmes légitimes.
Ce n’est pas du ROP (Return Oriented Programming), c’est juste l’idée de bouts de codes qui est reprise.
0  0 
Avatar de messinese
Membre éclairé https://www.developpez.com
Le 22/08/2012 à 16:02
Oui c'etait l'idée de mes posts :

il faut juste comparer ce type de 'polymorphisme' (si je puis dire) avec les attaques en ROP (Return Oriented Programming)
ça s'en inspire largement
0  0