Malwarebytes đưa ra cảnh báo trojan cho C # cơ bản “Hello World!” chương trình


85

Về cơ bản, tôi vừa quét máy tính của mình bằng Malwarebytes (đã cập nhật các định nghĩa trước khi chạy) và nó cho biết chương trình "helloworld" của tôi được viết bằng C # có trojan .

Tôi biết thực tế đây là một sự tích cực sai, vì tôi chỉ mới viết chương trình cách đây 2-3 ngày và theo dõi một trang web hướng dẫn nhỏ để tạo ra chương trình mà tôi tin tưởng. Tôi mới sử dụng C #, nhưng tôi không thể thấy bất kỳ điều gì có thể đưa ra cảnh báo trojan.

Báo cáo Malwarebytes

Chương trình gắn cờ tệp thực thi, nhưng không gắn cờ tệp nguồn.

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

Đây là mã, được viết bằng Notepad ++ , và nó được chạy từ dòng lệnh ( thực tế là Cygwin ). Tại sao nó gắn cờ điều này? Đó có phải là điều mà, với tư cách là một lập trình viên C # mới bắt đầu, tôi nên biết?


1
Tôi nên thêm, không có tệp nguồn C # nào khác hoặc tệp thực thi trong cùng một thư mục bị gắn cờ.
Qwurticus

2
Bạn đã tải xuống một ví dụ mã từ một trang web? Có thể mã đang thực thi mà bạn không nhận ra là đang thực thi thông qua các bước xây dựng tùy chỉnh hoặc tham chiếu đến dlls trong thư mục bin, v.v. Tôi không thấy bất cứ điều gì ở đó có thể liên quan đến dấu hiệu vi rút.
BateTech

13
không liên quan, nhưng hình ảnh trong bài đăng này đã bị chặn bởi sophos với cảnh báo phần mềm độc hại
đẩy vào

4
Ngoài ra, mặc dù nó không có khả năng xảy ra trong trường hợp này, nhưng điều đáng quan sát là chỉ vì mã nguồn của bạn không chứa mã xấu không có nghĩa là tệp thực thi của bạn không: scienceblogs.com/goodmath/2007/04/15/…
Fabio Beltramini

4
Trong công trình luận án của mình, tôi sử dụng khoảng 14 phần mềm chống vi rút để kiểm tra hơn 2500 phần mềm độc hại và nhận thấy Malwarebytes là phần mềm chống vi rút rất kém. Đây là các trang trình bày - Trang trình bày-32 cho đồ thị so sánh
Grijesh Chauhan

Câu trả lời:


131

Vấn đề có thể là Trojan Backdoor.MSIL.PGen thường được gọi là 'hello.exe'. Tên tệp thực thi của bạn có lẽ là 'hello.exe' hoặc 'helloworld.exe'.

Chỉ cần đổi tên dự án của bạn hoặc thay đổi tệp thực thi đầu ra thành một thứ không chứa 'hello' và nó sẽ ngừng phát hiện ra nó.

Câu trả lời này có phần suy đoán, nhưng với tên dự án của bạn và lịch sử phát hiện quá mức phần mềm độc hại này (xem tại đây ), đây có vẻ là một cú đâm hợp lý.


58
Đó là một số phần mềm chống vi-rút thô sơ ở đó.
tom.dietrich

73
Tôi ngạc nhiên rằng một phần của phần mềm như cấu hình cao như MalwareBytes sẽ đánh dấu một dương tính giả nếu chỉ dựa trên tên tập tin
Brad Thomas

14
@BradThomas: Chà, tôi không chắc đây là lý do, nhưng với tên của dự án ở trên, nó là một khẩu súng hút thuốc lớn ... :) Cũng có một lịch sử của MalwareBytes phát hiện quá mức trojan này: forum.malwarebytes.org /index.php?showtopic=135095
Baldrick

23
Bạn đã đúng ... Đó là cái tên. XP. Tôi thấy điều đó khá ngu ngốc, tbh. Thay đổi nó thành một tên khác mà nó không gắn cờ nó. Cảm ơn bạn!
Qwurticus

10
Tôi đoán rằng heuristic là (a) chứa mã MSIL (loại bytecode do trình biên dịch C # tạo ra), (b) được đặt tên là "hello.exe". Chỉ một trong những điều đó là không đủ.
nneonneo

14

Câu trả lời của Baldrick là có thể đúng, nhưng cũng có một khả năng khác: Có những loại virus tìm kiếm các tệp thực thi ngẫu nhiên trên hệ thống và sửa đổi chúng bằng cách chèn mã riêng của chúng vào chúng (thực tế đây là định nghĩa ban đầu của " vi rút máy tính "). Khi bạn nhận thấy tệp thực thi mà bạn biết là đáng tin cậy đột nhiên bị báo cáo là bị nhiễm, bạn có thể đang đối phó với loại vi-rút như vậy.

Nhưng trừ khi máy quét vi-rút của bạn báo cáo các tệp thực thi khác giống như cùng một loại vi-rút, điều này khó xảy ra.


6
Tôi ước anh ấy đã đăng tệp thực thi. Tôi sẽ rất thích thú nếu ai đó đã dịch ngược nó và phát hiện ra rằng nó có chứa virus.
Navin

3
@Navin Nếu anh ta đã đăng nó, tôi sẽ gọi anh ta ra vì cố ý xuất bản một tệp thực thi có khả năng độc hại.
Philipp

@Navin Và đó là lý do tại sao Philipp nói "một tệp thực thi có khả năng độc hại."
The Guy with The Hat,

3
@TheGuywithTheHat Đủ công bằng. Tôi vẫn nghĩ rằng nó là an toàn để đăng nó cùng với một cảnh báo.
Navin

0

Tôi vừa tìm ra điều này: thay đổi một chút "Hướng dẫn" trong AssemblyInfo.cs, sau đó thử lại.

Điều đó đã làm việc cho tôi.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.