84 votes

Malwarebytes avertit les chevaux de Troie de la base C # "Hello World!" programme

En gros, j'ai juste couru une analyse de mon ordinateur avec Malwarebytes (mis à jour les définitions avant de lancer), et il a dit mon "helloworld" programme écrit en C# est un cheval de troie.

Je sais pour un fait, c'est un faux positif, comme je l'ai écrit le programme de 2-3 jours et suivie d'un petit tutoriel site internet afin de rendre le programme en qui j'ai confiance. Je suis novice en C#, mais je ne peux pas voir tout ce qui pourrait donner un cheval de troie un avertissement à tous.

Malwarebytes report

Le programme des drapeaux de 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 dans Notepad++, et il est exécuté à partir de la ligne de commande (Cygwin, en fait). Pourquoi faut-il des drapeaux? Est-ce quelque chose qui, comme un apprenti programmeur C#, je devrais connaître?

130voto

Baldrick Points 6425

Le problème pourrait être que la porte de derrière.MSIL.PGen cheval de Troie est généralement appelé "hello.exe'. Le nom de votre fichier exécutable est probablement "hello.exe" ou "helloworld.exe'.

Il suffit de renommer votre projet ou modifier la sortie de l'exécutable à quelque chose, ne contenant pas de "bonjour", et il devrait arrêter de le détecter.

Cette réponse est un peu théorique, mais vu le nom de votre projet, et une histoire de plus agressif, la détection de logiciels malveillants (voir ici), il semble raisonnable de poignard.

14voto

Philipp Points 22441

La réponse par Baldrick est probablement correct, mais il y a aussi une autre possibilité: Il y a des virus qui recherche aléatoire de fichiers exécutables sur le système et de les modifier en insérant leur propre code (ce qui est, en fait, la définition originale de "virus informatique"). Quand vous trouvez qu'un exécutable qui vous le savez est digne de confiance soudain est signalé comme infecté, vous pourriez être aux prises avec un tel virus.

Mais à moins que votre antivirus signale d'autres exécutables que le même virus, ce qui est peu probable.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X