Ceci était à l'origine dans un commentaire d'une autre réponse, mais je pense que ce serait plus approprié comme réponse de haut niveau.
Un *virus* informatique est un concept très simple. Pour écrire un virus informatique, vous pouvez simplement écrire un programme qui se copie sur tous les supports disponibles (c'est-à-dire tous les lecteurs réseau connus, les lecteurs flash, les disques durs externes, etc). ). C'est tout. C'est un virus. Un virus signifie simplement "un programme qui se propage à d'autres ordinateurs par une combinaison d'opérations automatisées et manuelles." Donc, tant que le programme se copie sur d'autres ordinateurs, c'est un virus. Il n'a pas besoin de s'exécuter sur les autres ordinateurs, car un virus se propage par une intervention manuelle. Si la propagation du programme est complètement automatisée, et ne nécessite aucune action humaine, ce'n'est pas un virus mais plutôt un ver.
Mais peut-être que le questionneur voulait plutôt dire "comment puis-je construire un malware ?" auquel la réponse serait d'écrire un programme qui affiche un popup toutes les 10 minutes. C'est ennuyeux, et l'utilisateur ne veut pas qu'il s'exécute, donc c'est un malware.
Plus probablement, il voulait dire "comment puis-je construire un malware de pointe qui'est réellement intéressant du point de vue de la sécurité ?" à laquelle la réponse la plus réaliste est "Vous ne pouvez'pas." Les logiciels malveillants modernes sont extrêmement complexes, et sont construits par de multiples personnes spécialisées. Quelqu'un travaille sur le xdev (développement de l'exploit) pour trouver et exploiter une vulnérabilité afin de faire fonctionner un shellcode sur l'ordinateur de la victime et de déployer un dropper. Une autre personne travaille sur le dropper, qui téléphone à l'ordinateur de l'attaquant depuis l'ordinateur de la victime et télécharge la charge utile. Quelqu'un d'autre travaille sur l'encapsuleur pour que la charge utile reste obscure jusqu'à ce que l'on soit sûr qu'elle n'est pas exécutée dans une sandbox antivirus. Quelqu'un d'autre travaille sur la charge utile elle-même, qui fait réellement les choses intéressantes. Une autre personne peut travailler sur un rootkit pour cacher la charge utile une fois qu'elle est déployée sur le système de la victime. La plupart de ces étapes peuvent être ignorées dans certaines circonstances, par exemple l'exploit et le shellcode peuvent être ignorés si je peux convaincre l'utilisateur de télécharger et d'exécuter le malware directement. Ce qui n'est pas très difficile avec la plupart des utilisateurs (il suffit de leur promettre des émoticônes ou du porno gratuits)
La plupart des malwares modernes sont une compilation de nombreux composants provenant de nombreux auteurs. Certains sont issus de la rétro-ingénierie d'autres malwares, d'autres sont écrits sur mesure, d'autres sont achetés à une entreprise. En général, une seule personne n'écrit plus de logiciels malveillants intéressants. C'est un projet trop vaste, nécessitant trop d'expertise, et franchement, tout faire à partir de zéro est un gaspillage d'efforts puisque cela signifierait réinventer tant de roues.
Pour ce qui est de tuer les logiciels malveillants ? Vous ne le faites pas. Si vous savez que votre ordinateur a été infecté, sauvegardez toutes vos données, effacez le disque dur, installez un nouvel OS, et quelques mois plus tard, exécutez toutes les données sauvegardées à travers plusieurs antivirus différents en utilisant un système d'exploitation médico-légal tel que Kali (www.kali.org -- également, voir www.virustotal.com pour une bonne suite d'analyse) avant de les recharger dans votre OS normal. Si vous en avez besoin avant cela, accédez-y uniquement à partir d'un système d'exploitation actif. Même après tout cela, il se peut que vous soyez encore infecté, mais si c'est le cas, vous'ne le saurez probablement jamais et la seule solution sûre serait de remplacer l'ordinateur de toute façon.
Beaucoup de gens vous diront que'c'est un conseil terrible, que c'est beaucoup trop et que je'suis juste paranoïaque. Eh bien, je suis un analyste de logiciels malveillants (amateur seulement, pas professionnel) et de mon point de vue, c'est le seul conseil solide à suivre une fois que vous savez que vous avez été infecté. Si vous faites autre chose, vous devez croire que le logiciel malveillant que vous avez reçu n'était pas vraiment malveillant, et cela vous semble-t-il être une décision intelligente ? D'autant plus que, si vous y réfléchissez, tout ce que vous obtenez qui n'est'pas très dangereux va probablement télécharger beaucoup de choses qui sont très dangereuses parce que les gens qui font les choses vraiment dangereuses sont prêts à payer tout le monde pour distribuer leurs charges utiles pour eux.
En guise de conclusion, si vous voulez vraiment apprendre comment les logiciels malveillants sont fabriqués et comment ils fonctionnent, je recommande d'apprendre l'ingénierie inverse des logiciels. Vous'apprendrez un *ton* sur les malwares de cette façon, même si vous'ne savez pas déjà comment programmer. Vous apprendrez également beaucoup de choses sur les ordinateurs en général. C'est une bonne chose à apprendre en toutes circonstances. Amusez-vous bien ! 🙂