Malwarebytes ostrzega przed trojanem dla podstawowego języka C # „Hello World!” program


85

Po prostu przeskanowałem swój komputer za pomocą Malwarebytes (zaktualizowałem definicje przed uruchomieniem) i okazało się, że mój program „helloworld” napisany w C # zawiera trojana .

Wiem na pewno, że jest to fałszywy alarm, ponieważ napisałem program dopiero 2-3 dni temu i podążyłem za małą witryną z samouczkiem, aby stworzyć program, któremu ufam. Jestem nowy w C #, ale nie widzę niczego, co w ogóle dałoby ostrzeżenie przed trojanem.

Raport Malwarebytes

Program oznacza plik wykonywalny, ale nie plik źródłowy.

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!");
        }
    }
}

To jest kod napisany w Notepad ++ i jest uruchamiany z wiersza poleceń ( właściwie Cygwin ). Dlaczego to oznacza? Czy jest to coś, o czym jako początkujący programista C # powinienem wiedzieć?


1
Powinienem dodać, że żaden z innych plików źródłowych C # ani plików wykonywalnych w tym samym folderze nie jest oflagowany.
Qwurticus

2
Czy pobrałeś przykładowy kod ze strony internetowej? Może to być kod, o którym nie zdajesz sobie sprawy, że jest wykonywany za pomocą niestandardowych kroków kompilacji lub odwołań do bibliotek dll w folderze bin itp. Nie widzę tam niczego, co wiązałoby się z sygnaturą wirusa.
BateTech

13
niepowiązane, ale obraz w tym poście został zablokowany przez Sophos z ostrzeżeniem o złośliwym oprogramowaniu
puser

4
Ponadto, nawet jeśli nie jest to prawdopodobne w tym scenariuszu, warto zauważyć, że tylko dlatego, że kod źródłowy nie zawiera złego kodu, nie oznacza, że ​​plik wykonywalny go nie zawiera: scienceblogs.com/goodmath/2007/04/15/ ...
Fabio Beltramini

4
W mojej pracy magisterskiej używam około 14 programów antywirusowych do testowania ponad 2500 złośliwego oprogramowania i stwierdziłem, że Malwarebytes jest bardzo słabym programem antywirusowym. Oto slajdy - Slajd-32 dla wykresu porównawczego
Grijesh Chauhan

Odpowiedzi:


131

Problem może polegać na tym, że trojan Backdoor.MSIL.PGen jest zwykle nazywany „hello.exe”. Nazwa pliku wykonywalnego to przypuszczalnie „hello.exe” lub „helloworld.exe”.

Po prostu zmień nazwę projektu lub zmień plik wyjściowy na coś niezawierającego „hello”, a program powinien przestać go wykrywać.

Ta odpowiedź jest nieco spekulatywna, ale biorąc pod uwagę nazwę twojego projektu i historię nadmiernie agresywnego wykrywania tego złośliwego oprogramowania (patrz tutaj ), wydaje się rozsądną decyzją.


58
To jakieś prymitywne oprogramowanie antywirusowe.
tom.dietrich

73
Jestem zdumiony, że oprogramowanie tak głośne jak MalwareBytes oznaczałoby fałszywy alarm oparty wyłącznie na nazwie pliku
Brad Thomas,

14
@BradThomas: Cóż, nie jestem pewien, czy to jest powód, ale biorąc pod uwagę nazwę powyższego projektu, jest to poważny dymiący pistolet ... :) Jest też historia MalwareBytes nadgorliwie wykrywająca tego trojana: forums.malwarebytes.org /index.php?showtopic=135095
Baldrick

23
Miałeś rację ... To była nazwa. XP. Uważam, że to całkiem głupie, tbh. Zmieniono go na inną nazwę i nie oflagował go. Dziękuję Ci!
Qwurticus

10
Domyślam się, że heurystyka (a) zawiera kod MSIL (rodzaj kodu bajtowego utworzonego przez kompilator C #), (b) nazywa się „hello.exe”. Jeden z nich sam w sobie nie wystarczy.
nneonneo

14

Odpowiedź Baldricka jest prawdopodobnie poprawna, ale istnieje również inna możliwość: istnieją wirusy, które wyszukują losowe pliki wykonywalne w systemie i modyfikują je, wstawiając do nich własny kod (w rzeczywistości jest to oryginalna definicja " wirusa komputerowego ”). Gdy okaże się, że plik wykonywalny, o którym wiesz, że jest godny zaufania, zostanie nagle zgłoszony jako zainfekowany, być może masz do czynienia z takim wirusem.

Ale jeśli twój skaner antywirusowy nie zgłasza innych plików wykonywalnych jako tego samego wirusa, jest to mało prawdopodobne.


6
Żałuję, że nie opublikował pliku wykonywalnego. Byłbym raczej rozbawiony, gdyby ktoś go zdekompilował i stwierdził, że zawiera wirusa.
Navin

3
@ Navin Gdyby to opublikował, wezwałbym go do świadomego opublikowania potencjalnie złośliwego pliku wykonywalnego.
Filip.

@ Navin I dlatego Philipp powiedział: „ potencjalnie złośliwy plik wykonywalny”.
The Guy with The Hat

3
@TheGuywithTheHat Fair wystarczająco. Nadal uważam, że umieszczenie tego wraz z ostrzeżeniem jest bezpieczne.
Navin

0

Właśnie to rozgryzłem: zmień trochę „Guid” w AssemblyInfo.cs, a następnie spróbuj ponownie.

To zadziałało dla mnie.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.