De très nombreux troyens sont disponibles sur Internet, mais un certain nombre sont particulièrement répandus.
Quelques exemples de troyens les plus connus et facilement téléchargeables sur le Web :
Socket de Troie (ou socket 2.3 français)
Back Orifice (le plus connu, sorti en aout 1998, voir ici)
NetBus
Trojan Horse Construction Kit
mIRC troyen
script.ini (troyen sous mIRC)
ICKiller (troyen pour ICQ)
P2R Troyen (Peur2Rien)Exemple détaillé : BackOrifice
Texte original
Etude réalisée par Jean-Claude BELLAMY © 1998
Copie et diffusion de ce document autorisée
1) Définition de "Back Orifice"
"Back Orifice" est une application client/serveur qui permet au logiciel client de surveiller, administrer, et effectuer à distance n'importe quelle action (réseau, multimédia, redémarrage, fichiers,…) sur la machine exécutant le serveur.
Actuellement, le serveur ne peut s'exécuter que sous Windows 95/98. Par contre, l'application cliente (en mode console ou en mode graphique) peut être lancée sous Windows 95/98 ou Windows NT, et même sous UNIX (interface console seulement)
2) Origine et buts de "Back Orifice"
Cette application a été développée en 1998 par un groupe de "hackers" nommé "Cult of the Dead Cow" (cDc) et diffusée sur Internet très rapidement, dans le but (d'après leurs auteurs) de mettre en évidence les trous de sécurité existant dans Windows 95/98 (et donc de dévaloriser ce système. L'intention "anti-MicroSoft" est clairement affichée, comme en témoigne le nom même de "Back Orifice", évoquant la suite bureautique de Microsoft "Back Office").
Ce groupe n'est pas clandestin :
adresse postale : cDc communications, PO Box 53011, Lubbock, TX, 79453, USA
adresse Web : http://www.cultdeadcow.com
Il a été créé en 1984 et a adopté ce nom pour le moins étrange de "Culte de la Vache morte" par référence à une expression utilisée par Li Peng pour désigner (avec un certain mépris) le respect des Droits de l'Homme (Les hackers du cDc n'ont pas apprécié la rencontre de Bill Gates avec le président chinois en 1996).
Remarque importante : ce logiciel n'est pas un virus, en effet le programme ne se duplique pas automatiquement comme le fait un virus.
3) Composition de Back Orifice
Il peut être obtenu depuis différents sites Internet.
Pour l'application client et serveur Windows (exécutables - le fichier compressé a une taille de 278 ko).
Pour l'application cliente UNIX (source + makefile - le fichier compressé a une taille de 27 ko).
Back Orifice a été téléchargé 35 000 fois dans les 4 premières heures et 100 000 fois après 21 jours (à l'heure actuelle plus de 200 000 fois)
Une fois décompressé (version Windows) , "Back Orifice" se compose des fichiers suivants :
Nom
Taille (ko)
Implantation
Interface
Rôle
BOGUI.EXE
284 160
Client
Graphique
Application cliente en mode graphique, permettant d'envoyer des commandes vers la station serveur
BOCLIENT.EXE
57 856
Client
Console
Application cliente en mode texte, permettant d'envoyer des commandes vers la station serveur
BOCONFIG.EXE
28 672
Client
Console
Module de configuration de l'exécutable serveur (nom, mot de passe, n° de port IP)
FREEZE.EXE
33 280
Client
Console
Compresseur de fichiers
MELT.EXE
29 184
Client
Console
Décompresseur de fichiers
BOSERVE.EXE
124 928
Serveur
Néant
Application serveur lancée en tâche de fond sur la station Windows 95/98
BO.TXT
15 184
Client
Documentation générale
PLUGIN.TXT
914
Client
Documentation sur les extensions possibles
4)Installation de Back Orifice
Serveur
Il suffit d'exécuter le fichier exécutable BOSERVE.EXE
Cette exécution peut être effectuée :
Volontairement par l'utilisateur de la station Windows 95/98. En effet, malgré sa réputation "sulfureuse", Back Orifice peut être un EXCELLENT outil de télémaintenance, au même titre que des produits commerciaux comme "PCAnyWhere".
Involontairement,à la suitede l'installation d'un autre logiciel dans lequel BOSERVE aura été ajouté, ou encore plus simplement en exécutant BOSERVE qui aura été renommé sous un nom quelconque et plus ou moins familier à l'utilisateur. Par exemple, on veut envisager le scénario suivant :
Un serveur FTP, HTTP, Notes,…met à la disposition de tout le monde un utilitaire de conversion de fichier (Word, PDF, ..), nommé (par exemple) "wordconf.exe".
En réalité, cet exécutable n'est autre que "boserve.exe" renommé.
Une fois ce fichier téléchargé, il est vu comme un exécutable tout à fait inoffensif par n'importe quel antivirus. En effet, il ne possède aucune signature de réplication, et son exécution n'altère aucun secteur disque vital tel que le MBR (Master Boot Record, qui contient la table de partitions) ou un secteur de démarrage.
Son exécution, qui est totalement silencieuse, ne va générer aucun message. L'utilisateur n'y prêtera pas une attention particulière (dans le cas d'un filtre de conversion, il n'y a rien de "visible" qui doive se produire).
Lors de sa première exécution, BOSERVE.EXE va procéder aux 2 opérations suivantes :
auto-renommage de "BOSERVE.EXE" en " .EXE".
Le nom du fichier se réduit à un espace, suivi de l'extension habituelle "exe" des exécutables!) Cela lui permet de passer presque inaperçu à l'utilisateur. En, effet, une commande DOS telle que "dir *.exe" va afficher le nom court de ce fichier, qui est alors "exe~1" (sans extension)
modification de la clé suivante de la base de registres :
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
La valeur par défaut de cette clé, vide en temps normal, se voit affecter la chaîne " .exe"
Conséquences :
La clé désignée ci-dessus contient la liste de toutes les applications lancées au démarrage de Windows, avant même l'ouverture d'une session utilisateur. Or l'éditeur de stratégies système "PolEdit" (fourni avec Windows) ne trouve aucune trace de Back Orifice (rubrique "Registre /Ordinateur local/ Système/ Programmes à exécuter/ Exécuter services" qui sert à afficher et/ou éditer la listes des services).
Cette anomalie s'explique simplement par le fait que Back Orifice, renommé en " .exe", est un service sans nom puisque inscrit dans la valeur par défaut de la clé de la BDR.
Seul un examen approfondi de la BDR à l'aide de regedit peut repérer Back Orifice (et à la condition de connaître son nouveau nom " .exe")
Ce qu'il y a dans la base de registre :
Back Orifice fait appel à des API très importantes de Windows. Par exemple on dénote :
accès et modification de la base de registre
gestion de processus
gestion réseau
terminaison de Windows
gestion de "hook" (détournement de messages Windows)
Client
Il suffit d'exécuter (sous Windows) l'un des deux programmes BOCLIENT.EXE (mode console) ou BOGUI.EXE (mode graphique).
Principe de communication client/serveur
Le client et le serveur échangent des paquets cryptés en UDP/IP (donc un mode non connecté) et utilisent par défaut le port n° 31337 .
Ce numéro peut être modifié à l'aide d'un utilitaire (boconfig.exe) appliqué sur le module serveur avant téléchargement vers le serveur. Il suffit ensuite que l'application cliente connaisse le hostname ou adresse IP du serveur, ainsi que le numéro de port retenu.
Dans le cas où le serveur n'a pas d'adresse IP statique (dans la plupart des cas, sauf liaisons cacles, ADSL...), il a été prévu dans l'application cliente une procédure de balayage de plages d'adresses IP, effectuant alors une série de "ping" jusqu'à ce que le serveur réponde.
Un nombre très important de commandes est disponible. Certaines sont des commandes TCP/IP encapsulées.
5) Tests
"System Info"
Affiche les caractéristiques principales du serveur :
Processeur
Système d'exploitation
Mémoire vive
Disques durs
"File view"
Affiche le contenu de n'importe quel fichier texte (dans l'exemple ci-contre, le fichier "notes.ini")
"HTTP Enable"
Back Orifice serveur contient un serveur HTTP, dont on peut choisir le n° de port. Ici, on a retenu 8181.
Il est alors possible d'explorer les répertoires depuis n'importe quel navigateur Web.
"Process list"
Affiche la liste de tous les processus actifs sur le serveur.
"Reg list values"
Affiche la liste des valeurs contenues dans une clé de la base de registres. Dans l'exemple ci-contre, on affiche la liste des services.
"System dialogbox"
Permet d'afficher sur le serveur une boite de dialogue avec le titre et le message que l'on veut.
"System Passwords"
Une des fonctionnalités les plus étonnantes (etdangereuses) : Back Orifice affiche en clairTOUS les mots de passe réseau mémorisés par le système !
(ces mots de passe ont été masqués dans l'exemple ci-contre!)
Les autres commandes existantes sont :
transfert de fichiers via FTP
arrêt puis redémarrage de Windows
exécution d'un programme
création / suppression de répertoires
copie / suppression de fichiers
compression / décompression de fichiers
opérations "multimédia" (exécution d'un fichier son, clip vidéo,..)
connexion / déconnexion réseau (montage / démontage de ressources)
création / suppression de clés dans la BDR
6) Conséquences
Elles sont évidentes : Si le serveur Back Orifice a été introduit sur une station Windows 95/98 dans un but mal intentionné, toute station dotée du client Back Orifice pourra TOUT faire à distance sur cette machine (suppression de fichier, capture de mot de passe, exécution de n'importe quel programme,…)
Donc les conséquences peuvent être très graves !
Mais il faut noter que l'utilisation d'outils de télémaintenance tout à fait "officiels" comme "PCAnyWhere", "Carbon Copy", "LapLink", … peuvent de la même façon perturber le fonctionnement d'une machine s'ils sont mal utilisés.
Cette situation est due au fait qu'il n'y a aucune sécurité réelle dans Windows 95/98, à l'opposé de Windows NT et de tout système UNIX. Une fois que l'on a pu accéder par exemple au "menu démarrer", il n'y a pas de contrôle d'exécution par rapport à l'utilisateur en cours (Par exemple, sous Windows NT, l'accès à la base de registre est réservée aux administrateurs, de même, sous UNIX, seul le compte "root"' peut modifier les fichiers de configuration situés dans le répertoire /etc)
7) Les parades
Préventives
S'assurer au maximum de la provenance des fichiers téléchargés depuis un serveur Internet.
Travailler sous un système d'exploitation sécurisé : Windows NT, UNIX (Linux)
Curatives
Comme on a pu le voir précédemment, Back Orifice serveur est constitué d'un seul fichier (BOSERVER.EXE, renommé en " .exe"), et d'une clé dans la Base de Registres. Donc pour enlever Back Orifice de sa machine, il suffit de :
supprimer le fichier " .exe" (situé dans le répertoire \windows\systeme)
supprimer la chaîne " .exe" de la valeur par défaut de la clé
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\RunServices
redémarrer la machine
Outils d'éradication ou de surveillance
Indépendamment des anti-virus habituels, différents outils ont été développés soit pour éradiquer Back Orifice, soit pour averir l'utilisateur qu'il est "espionné" par Back Orifice :
Antigen
Cet utilitaire gratuit sert à détecter, nettoyer et détruire Back Orifice. Il utilise une interface graphique pour guider l'utilisateur dans cette tâche. C'est un produit de Fresh Software.
Il est disponible à l'adresse suivante :
http://www.arez.com/fs/antigen/
Back Orifix
Ce logiciel est diffusé gratuitement sur Internet depuis le 1er septembre 1998. Il émane de l'entreprise canadienne "GroupAxion". Son but est de supprimer Back Orifice. Back Orifix effectue une recherche complète de Back Orifice, affiche le fichier le concernant puis le supprime. Par contre, il ne restaure pas la Base de registres, ce qui est un oubli important.
Il est disponible à l'adresse suivante :
http://www.groupaxion.com/BOrifix/telechargement.html
BOFreeze
Cet utilitaire gratuit a un rôle défensif. Il ne prémunit pas contre l'infiltration de Back Orifice et ne le supprime pas, par contre il peut avertir l'utilisateur d'une "attaque" de Back Orifice. Il identifie les paquets UDP arrivant sur le PC, les décrypte et détecte la chaîne caractéristique de Back Orifice qui est *!*QWTY? .
Ensuite il retourne au client Back Orifice des paquets volontairement malformés afin de le bloquer complètement.
Il est disponible à l'adresse suivante :
http://members.xoom.com/wzc/bof/main.html
NOBO
Cet utilitaire gratuit sert à détecter une attaque de Back Orifice. Il ne prémunit pas contre l'infiltration de Back Orifice et ne le supprime pas.Il engistre les paquets UDP arrivant sur le PC et les stocke dans un fichier journal.
Il est disponible à l'adresse suivante :
http://web.cip.com.br/nobo/nobo_en.html