Malwarebytes avertit les chevaux de Troie pour C # de base «Hello World! programme


85

Fondamentalement, je viens de lancer un scan de mon ordinateur avec Malwarebytes (mis à jour les définitions avant de démarrer), et il a dit que mon programme "helloworld" écrit en C # a un cheval de Troie .

Je sais pertinemment que c'est un faux positif, car j'ai écrit le programme il y a seulement 2-3 jours et suivi un petit site Web de tutoriel pour créer le programme en lequel j'ai confiance. Je suis nouveau sur C #, mais je ne vois rien qui puisse donner un avertissement à un cheval de Troie.

Rapport Malwarebytes

Le programme marque l'exécutable, mais pas le fichier source.

using System;

namespace HelloWorldApplication
{
    class HelloWorld
    {
        static void Main(string[] args)
        {
            Console.WriteLine("\n\tHello World!");
            Console.WriteLine("This is my first C# program.\nI'm so proud of myself!");
            Console.WriteLine("\tTeehee!");
        }
    }
}

C'est le code, écrit en Notepad ++ , et il est exécuté à partir de la ligne de commande ( Cygwin , en fait). Pourquoi cela signale-t-il cela? Est-ce quelque chose que, en tant que programmeur C # en herbe, je devrais savoir?


1
Je devrais ajouter qu'aucun des autres fichiers source C # ou exécutables dans le même dossier n'est marqué.
Qwurticus

2
Avez-vous téléchargé un exemple de code à partir d'un site Web? Peut-être que du code est en cours d'exécution dont vous ne réalisez pas qu'il s'exécute via des étapes de construction personnalisées ou des références à des dll dans le dossier bin, etc. Je n'y vois rien qui puisse se rapporter à une signature de virus.
BateTech

13
sans rapport, mais l'image dans ce post a été bloquée par sophos avec un avertissement de malware
puser

4
De plus, même si ce n'est pas probable dans ce scénario, il convient de noter que ce n'est pas parce que votre code source ne contient pas de mauvais code que votre exécutable ne le fait pas: scienceblogs.com/goodmath/2007/04/15/…
Fabio Beltramini

4
Dans mon travail de thèse, j'utilise environ 14 antivirus pour tester plus de 2500 malwares et j'ai trouvé que Malwarebytes est un antivirus très médiocre. Voici les diapositives - Diapositive 32 pour un graphique de comparaison
Grijesh Chauhan

Réponses:


131

Le problème peut être que le cheval de Troie Backdoor.MSIL.PGen est généralement appelé «hello.exe». Le nom de votre exécutable est probablement «hello.exe» ou «helloworld.exe».

Renommez simplement votre projet ou changez l'exécutable de sortie en quelque chose ne contenant pas «bonjour», et il devrait cesser de le détecter.

Cette réponse est quelque peu spéculative, mais étant donné le nom de votre projet, et un historique de détection trop agressive de ce malware (voir ici ), cela semble un coup raisonnable.


58
C'est là un logiciel antivirus grossier.
tom.dietrich

73
Je suis étonné qu'un logiciel aussi prestigieux que MalwareBytes signale un faux positif basé uniquement sur le nom du fichier
Brad Thomas

14
@BradThomas: Eh bien, je ne suis pas sûr que ce soit la raison, mais étant donné le nom du projet ci-dessus, c'est un pistolet fumant majeur ... :) Il y a aussi une histoire de MalwareBytes détectant avec zèle ce cheval de Troie: forums.malwarebytes.org /index.php?showtopic=135095
Baldrick

23
Vous aviez raison ... C'était le nom. XP. Je trouve ça assez stupide, tbh. Je l'ai changé en un nom différent et il ne l'a pas signalé. Merci!
Qwurticus

10
Je suppose que l'heuristique est (a) contient du code MSIL (le type de bytecode produit par le compilateur C #), (b) est nommé "hello.exe". L'un de ceux-ci en soi ne suffit pas.
nneonneo

14

La réponse de Baldrick est probablement correcte, mais il y a aussi une autre possibilité: il existe des virus qui recherchent des exécutables aléatoires sur le système et les modifient en y insérant leur propre code (c'est en fait la définition originale de « virus informatique "). Lorsque vous constatez qu'un exécutable que vous savez digne de confiance est soudainement signalé comme infecté, vous avez peut-être affaire à un tel virus.

Mais à moins que votre antivirus ne signale d'autres exécutables comme étant le même virus, cela est peu probable.


6
J'aurais aimé qu'il ait posté l'exécutable. Je serais plutôt amusé si quelqu'un le décompilait et découvrait qu'il contient un virus.
Navin

3
@Navin S'il l'avait posté, je l'aurais appelé pour avoir sciemment publié un exécutable potentiellement malveillant.
Philipp

@Navin Et c'est pourquoi Philipp a dit "un exécutable potentiellement malveillant".
Le gars au chapeau

3
@TheGuywithTheHat Très bien. Je pense toujours qu'il est prudent de l'afficher avec un avertissement.
Navin

0

Je viens de comprendre ceci: changez un peu le "Guid" dans AssemblyInfo.cs, puis réessayez.

Cela a fonctionné pour moi.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.