Binder un server
Il existe trois manières principales pour rendre un trojan indétectable par un antivirus,ici je vais vous montrer les deux façons les plus simple et cela en le modifiant légèrement
la troisième étant plus complexe a été mis sur cette page :. Nous baptiserons le trojan modifié "troyen masqué" ("masked trojan" en Anglais). Aucune des manières n’est efficace à 100% avec l’ensemble de antivirus et quelque soit la manière utilisée il va falloir mettre la main à la pâte et travailler un peu. Il faut aussi avoir en idée que les signatures des virus ne sont pas forcément les mêmes d’un antivirus à un autre. Ce qui veut dire qu’après avoir utilisé une des trois manières, il se peut que le trojan modifié ne soit plus détecté par un antivirus X mais encore détecté par un autre antivirus Y. Il vous faudra donc essayer le troyen masqué avec différents antivirus.
1. Modifier le code source (C/C++, VB, Java, Delphi) Avant de pouvoir modifier le code source, il faut pouvoir déjà le trouver. En effet les développeurs de trojans diffusent assez rarement le code source de leurs bébés. C’est aussi quelque part une sécurité afin que les débutants ne les utilisent pas n’importe comment et dans tous les sens. Parfois les sources sont disponibles en contactant directement son développeur par mail : voir la liste des sites officiels. Parfois ces sources sont payantes et certains hackers n’hésitent pas à faire payer cher des sources de code permettant d’obtenir des trojans uniquement indétectable par les antivirus. En supposant que vous disposez d’un code source (il y en a un en OPEN SOURCE sur le site de Osiris par exemple), il va falloir maintenant disposer des connaissances afin de pouvoir modifier le maximum de choses dans le source du serveur sans affecter le fonctionnement. Par exemple modifier les noms de toutes les variables, certaines structures dans les fonctions, certaines valeurs extrapolables, ajouter du code inutile pour modifier l’offset.....tout cela afin que la signature du trojan en soit modifiée, ce qui n’est pas totalement certain après avoir passé peut être plusieurs heures ou plusieurs jours de recherche intensive !
2. Appliquer un binder ou un packer Un binder (beast 2.06 en contient un) permet de rassembler au moins deux EXE (fichier exécutable) en un seul EXE. Cela a la faculté de parfois modifier les signatures. Un seul inconvénient : les binders sont eux mêmes détectés par les antivirus. En effet un binder ajoute du code entre les deux EXE afin que ceux ci soient lancés simultanément, et comporte également une signature. Même si un binder est inoffensif en soi, il sera donc détecté comme dangereux par les antivirus. L’idéal est de se confectionner (à partir de morceaux de sources trouvés sur Internet) son propre Binder, ce qui est tout de même plus rapide que chercher à modifier le code source du trojan. Il existe déjà plusieurs dizaines de Binders sur Internet... Donc pour utiliser en général un binder, il faut le rendre également indétectable, a voir la méthode du paragraphe suivant, et s’assurer également que les fichiers à l’intérieur du binder soient aussi indétectables. Cela donnera des résultats remarquables. Un packer permet de compresser un fichier non compressé (unpacked). Il en existe également plusieurs dizaines. L’avantage du packer est qu’il modifie très probablement la signature du trojan, mais ce n’est pas sûr à 100%. Cela vient du faite que certaines parties (comportant des overlays) ne peuvent pas être compressées. ET donc si la signature du trojan est située dans cet overlay....le packer ne modifiera pas la signature. Le principe général d’un packer est de rechercher les redondances (codes répétés plusieurs fois) de codes hexadécimaux dans le fichier à compresser. Par exemple, imaginons que le code hexadécimal "15D9C2" (6 caractères) apparaît 50 fois dans le fichier. Si le compresseur remplace ces 6 caractères par 4 caractères (par exemple "AAAA") cela fait un gain de place très important. En effet 50 x 6 = 300 caractères remplacés par 50 x 4 = 200 caractères correspondant à un taux de compression de 100 - 200 / 300 x 100 = 44.44%. Tout le code d’origine peut ainsi être remplacé par un code similaire plus court s’il y a redondances. Cela a pour effet de modifier énormément le contenu du fichier et donc la signature. Essayez par exemple sur le serveur Beast 2.06. Editez un serveur non compressé avec UPX (case UPX à décocher) et appliquez (en fenêtre DOS) la commande d :\CETEX server.exe s.exe CETEX est un packer à trouver dans la zone des téléchargements. Consultez également la documentation fournie avec chaque packer. Testez enfin votre antivirus sur le nouveau fichier créé "s.exe" et constatez l’efficacité des packers.