logo

Knowledge Is Power

 
 

- Reinit des nouveaux posts -

- Recherche -

Messages Privés - Derniers posts
S'enregistrer - Login - Liste des membres
Vous logger : Login Pass

Reverse Engineering >> Locreate: An Anagram for Relocate Newtopic | Reply
poster txt
sirius_black
Inscrit le 05-07-2003
Avatar
Posté le 15-01-2007 15:41

Quote:
This paper presents a proof of concept executable packer that does not use any custom code to unpack binaries at execution time. This is different from typical packers which generally rely on packed executables containing code that is used to perform the inverse of the packing operation at runtime. Instead of depending on custom code, the technique described in this paper uses documented behavior of the dynamic loader as a mechanism for performing the unpacking operation. This difference can make binaries packed using this technique more difficult to signature and analyze, but only when presented to an untrained eye. The description of this technique is meant to be an example of a fun thought exercise and not as some sort of revolutionary packer. In fact, it's been used in the virus world many years prior to this paper.



http://www.uninformed.org/?v=6&a=3

je m'y connais pas assez pour dire ce que ça vaut mais l'article semble récent, ça intéressera peut-être du monde
_________________________
d4 n3wS
profil | mail | Website | edit | quote
jehv
Inscrit le 29-08-2006
Posté le 15-01-2007 20:32

Cette technique de packer et ca http://www.phreedom.org/solar/code/tinype/ ca fait peut faire un parfait malware ca non ...
_________________________
it's all about life
profil | edit | quote
Kharneth
Inscrit le 22-07-2004
Posté le 19-01-2007 17:23

Merci sirius_black.

D'après ce que j'ai compris, la technique consiste à crypter l'exécutable pour qu'il soit décrypté par le loader de windows au chargement. Ceci est possible en utilisant une table de relocation, normalement utilisée pour modifier les adresses absolues lorsque l'exécutable est chargée à une adresse différente.

Je trouve la technique très astucieuse mais pas vraiment intéressante. Du moins, juste comme ça, c'est pas utile car l'exécutable est en clair lorsqu'il est chargé dans un debugger. Il n'y a donc rien à faire pour décrypter l'exécutable. Et en statique, il suffit d'appliquer les Relocs de la même façon que le loader de windows.

En ce qui concerne le 2eme article, l'auteur veut juste montrer que l'heuristique des AV ne prend pas en compte les imports au format UNC. Cela ne change pas grand chose car la dll est de toutes façons téléchargée avant d'être mappée par le processus, donc l'AV pour l'intercepter à ce moment.

Quote:
Cette technique de packer et ca http://www.phreedom.org/solar/code/tinype/ ca fait peut faire un parfait malware ca non ...



Attention aux conclusions hâtives quand on lit ce genre d'article.
_________________________

profil | Website | edit | quote
tweakie
Inscrit le 01-02-2002
Posté le 19-01-2007 23:06

En ce qui concerne les virus, Kaze avait publié un article et un POC sur le sujet sur le site de la FAT.

L'article:
http://fat.next-touch.com/data/relocs.txt

Le code:
http://fat.next-touch.com/code/win9x.sankei.zip

L'inconvénient majeur de ce type de techniques (je me place du point de vue du codeur de virus) est qu'on fait appel à une caractéristique qui diffère du standard (valeur d'ImageBase). Ca fait un critère de détection idéal pour les AVs (pas suffisant, mais qui permet de discriminer 99.9% des exécutables en un test).
_________________________
Un peu de science vaut mieux que beaucoup de dévotion
profil | Website | edit | quote
kaze_
Inscrit le 09-10-2004
Posté le 21-01-2007 13:22


Pour être exact, c'est Tcp de 29a qui le premier avait brievement évoqué l'idée. Ce qui a conduit pour lui aux virus Resur et pour moi à Sankey (aka Slicer dans le book de Peter Szor, cf. l'intro de ton papier).

Et oui, cette technique possède peu d'intérêt pour le RE. Le seul cas interessant serait un prog possedant de puisssants anti-debugs dès le début de son code, qui amenerait à une étape de modification statique du binaire. Dans ce cas là, pas forcément évident de voir que les relocs ont été modifiées.
J'avais partialement réussis sous linux cette fois (cette technique est aussi valable pour le ELF), mais je n'ai jamais réussi à rendre le crackme portable.

Pour les virus, l'interet est bien plus grand, les AV ne pouvant se permettre de reloger chaque executable scanné.
Néanmoins, comme le dit tweakie, un peu d'heuristique et le tour est joué.

Mais pour la petite histoire, les AV détectent Sankey non pas de cette manière, mais via une classique signature (vu que j'avais aligné l'imagebase sur 64k, seul un word sur deux était crypté). Donc, rien ne dit qu'une telle heuristique ait été mise en place.
Je n'ai pas poussé plus loin, mais si qqun a des infos sur le sujet, qu'il n'hesite pas à les mettre.

[ Ce Message a été édité par: kaze_ le 2007-01-21 13:47 ]
profil | Website | MSN | edit | quote
Newtopic | Reply

Online : adiwifopaj, ahaganucali, awejebi, clergoFloli, eketugneqe, emijigejadoqe, euirude, FaustoVat, Georgedig, ihosolabominu, iikofefuxoj, ijareeicuhoj, ivoruupagi, JustinLal, Mitsenkofew, nciicoda, olmSlime, ucjizoc, utejipudu, varaben et 53 Guests


Retour Index NewFFR Repository : http://taz.newffr.com
Cagades à Stick : http://alcane.newffr.com
Forum HTML et Archive -> ici
ForumFR Sql/Xml (2006/04) (SF pas à jour du tout...) - Alive since 2001 Newffr.com
Pour toute plainte ou problème -> Contacter Borax, Hyatus, Tweakie ou Stick par message privé (ou Gueulez sur le forum :) )
Retour haut de page