Il n'y a pas de recette générale. Si votre système a été infecté par un cheval de Troie inconnu, tout ce que vous pouvez faire est de réinstaller.
Si vous savez que le cheval de Troie fonctionne d'une certaine manière - par exemple, vous savez que le cheval de Troie n'infecte pas le noyau - il peut y avoir un moyen moins dur de récupérer. Mais cela dépend entièrement de savoir comment se comporte le cheval de Troie. Si tout ce que vous avez est les symptômes (tels que votre ordinateur envoie du spam sans votre consentement), il n'y a pas de technique générale: le détecteur de cheval de Troie doit être plus intelligent que le concepteur de cheval de Troie (et chanceux). En ce qui concerne les chevaux de Troie, la détection et la dissimulation sont comme des armes à feu et des armures: il y a une escalade technologique, et aucune des parties n'a un avantage intrinsèque (bien que les cacheurs aient une longueur d'avance).
De nombreux systèmes disposent d'un canal de distribution sécurisé. Par exemple, lorsque vous installez un package à partir des référentiels Ubuntu avec les outils apt-based (apt-get, aptitude, synaptic, software center,…), l'outil vérifie que le package est signé (vérifié) par une personne de confiance d'Ubuntu. (La plupart des distributions ont un mécanisme similaire.) Lorsque vous installez un package à partir d'un PPA, tout ce que vous pouvez savoir, c'est que le propriétaire du PPA a vérifié le package, ce qui n'est d'aucune aide si vous n'avez aucune raison de faire confiance au propriétaire du PPA en premier lieu.
À propos des chevaux de Troie et des portes dérobées, je recommande fortement de lire la conférence du prix Turing de Ken Thompson , Reflections on Trusting Trust . Pour résumer, il a changé le compilateur pour que lors de la compilation du programme de connexion, il ajoute du code qui lui permet de se connecter avec un mot de passe secret; puis il a changé le compilateur pour que quand il se compilerait, il insérerait le code pour ajouter la porte dérobée; puis il a recompilé l'ensemble du système (en particulier le programme de connexion et le compilateur); enfin, il a restauré la source du compilateur à la source d'origine, incontestable. Encore une fois, lisez l'article de Ken Thompson ; alors vous pouvez également lire le contrepoint de David Wheeler , peut-être mieux appréhendé à travers l' article de blog de Bruce Schneier .