Làm thế nào để chống vi-rút hoạt động?


54

Vì vậy, tôi đã suy nghĩ về virus gần đây và tự hỏi làm thế nào chính xác các virus chống lại? Xem xét bất cứ ai đã mã hóa trong vài tuần có thể hack cùng nhau một thứ gì đó gây ra những điều khó chịu, khó chịu cho PC của ai đó, chỉ riêng số lượng sẽ tạo ra một danh sách băm đơn giản bị cấm, vậy làm thế nào để diệt virus? Họ có giám sát quá trình hoạt động và có 3 quy tắc đình công để làm những việc giống như vi-rút không? Và nếu vậy, điều gì ngăn nó kích hoạt những thứ hoàn toàn vô hại (như tôi di chuyển các tệp trong \ system32)?

Tôi đã làm một chút googling, nhưng những nơi thường xuyên không đặc biệt giúp đỡ, và tôi không thể tìm thấy một bản dupe ở đây, vì vậy tôi nghĩ rằng sẽ rất tốt để hỏi :)


4
@joe không cần thêm thẻ windows. Một chương trình chống vi-rút hoạt động khá giống với bất kỳ hệ điều hành nào. Ngoài ra, cách AV hoạt động không chủ quan.
alex

Oh. Xin lỗi tôi đã nghĩ rằng điều này có thể là trên cửa sổ và chủ quan. Tôi hiểu điều đó
joe

6
Chúng được cài đặt sẵn khi bạn mua máy tính xách tay và liên tục rên rỉ trong 60 ngày mà bạn nên đăng ký / trả tiền cho chúng, cho đến khi bạn cuối cùng đưa chúng ra khỏi hệ thống của bạn. Thông thường, các hộp thoại của họ là phương thức và trên cùng để họ có thể ngăn bạn thực hiện bất kỳ việc gì khác một cách hiệu quả và họ không bao giờ cung cấp một cách dễ dàng để gỡ cài đặt.
Daniel Daranas

trả lại +1 cho một câu hỏi rất hay
dag729

Các heuristic AV rất tinh vi nhưng sẽ không phát hiện ra các mối đe dọa mới (hoặc các biến thể thông minh của các mối đe dọa hiện có). Heuristic thường tạo ra dương tính giả trên phần mềm / mã hoàn toàn lành tính. Phần mềm AV rất hữu ích nhưng thường là một cái nạng, mang lại cho người dùng cảm giác an toàn sai lầm. Tôi đã kiểm tra nhiều loại virus đã biết trên ( virustotal.com/en ) và các tên tuổi hàng đầu như Symantec, McAfee và AVG không phát hiện thấy gì (mặc dù nói chung, Kaspersky hoạt động rất tốt). Tốt hơn là biết hệ thống của bạn, xem những gì bạn làm ... và có một bản sao lưu!
AlainD

Câu trả lời:


17

Bài viết này từ năm 2002 nói về việc xây dựng một công cụ chống vi-rút.

Bài viết này sẽ mô tả các ý tưởng, khái niệm, thành phần và phương pháp tiếp cận cơ bản liên quan đến việc phát triển chương trình chống vi-rút từ đầu theo quan điểm của nhà phát triển phần mềm / nhà phát triển phần mềm. Nó sẽ tập trung vào các yếu tố chính của công cụ chống vi-rút (sau đây gọi là công cụ AV) và sẽ loại trừ các khía cạnh như giao diện người dùng đồ họa, màn hình thời gian thực, trình điều khiển hệ thống tệp và trình cắm cho một số phần mềm ứng dụng nhất định như Microsoft Exchange hoặc Microsoft Office. Mặc dù các công cụ AV chạy / quét cho các nền tảng đơn (như Palm OS hoặc EPOC / Symbian OS) có thể được thiết kế theo cùng một cách, bài viết này sẽ tập trung vào thiết kế các công cụ quét đa nền tảng, phức tạp hơn nhiều.

Ngoài ra còn có một bài viết về các kỹ thuật heuristic để phát hiện nhiễm trùng. Đây cũng là một bài đọc thú vị.


+1 cho bài viết heuristic đó - rất thú vị :)
Phoshi

Đó là một trong những thực sự đáng đọc. Phần heuristic là điều cần thiết :)
alex

Tôi có một sự tôn trọng mới được tìm thấy đối với các phần mềm chống vi-rút sau khi đọc nó, một thứ khá thông minh!
Phoshi

Chúng là những ứng dụng cực kỳ phức tạp. Thật không may, họ đã biến chúng thành một thứ mà rất nhiều người, bao gồm cả tôi, ghét. Các giao diện tùy chỉnh, cẩu thả, không trực quan, các tính năng được xử lý chỉ để thêm một dấu đầu dòng khác vào danh sách tính năng, phình to. Đây là thứ đã biến chúng thành ác mộng. Mọi thứ đang quay lại, mặc dù; ví dụ tốt nhất về giải pháp AV tốt là MSE.
alex

Đó là những thứ heuristic đã đưa nó ra, xin lỗi joe: P Câu trả lời tốt bất kể :) @alex; Than ôi, tôi phải đồng ý, nhưng hiểu được sự phức tạp dưới đây khiến tôi thông cảm nhiều hơn. Đó là những thứ phức tạp và sẽ không đủ ý nghĩa để thu hút một khách hàng tiềm năng, trong đó có "GUI màu tùy chỉnh!" có thể :(
Phoshi

13

Khoảng một năm trước, tôi đã tham dự một bài giảng của Mikko Hyyppönen, một trong những nhà nghiên cứu chính của F-Secure. Ông cho thấy mạng thử nghiệm tự động của họ, nơi họ tạo ra các máy ảo cho mọi mẫu được gửi cho họ, phân tích cấu trúc của nó, cho phép nó chạy, ghi nhật ký mọi thứ nó làm, tham chiếu chéo với các mẫu trước đó và tạo một bản tóm tắt để con người kiểm tra sau. Nếu con người kết luận rằng đó là vi-rút, hệ thống sẽ tự động tạo chữ ký phát hiện và gửi bản cập nhật cho khách hàng. Tôi tưởng tượng các nhà cung cấp khác cũng có các hệ thống tương tự để giữ cho cơ sở dữ liệu chữ ký của họ được cập nhật.


4

Từ phần mềm chống vi-rút hoạt động như thế nào? (Thế giới chống vi-rút):

Chương trình phần mềm chống vi-rút là chương trình máy tính có thể được sử dụng để quét các tệp để xác định và loại bỏ vi-rút máy tính và phần mềm độc hại khác (phần mềm độc hại).

Phần mềm chống vi-rút thường sử dụng hai kỹ thuật khác nhau để thực hiện việc này:

  • Kiểm tra các tệp để tìm vi-rút đã biết bằng từ điển vi-rút Xác định hành vi đáng ngờ từ bất kỳ chương trình máy tính nào có thể chỉ ra nhiễm trùng
  • Hầu hết các phần mềm chống vi-rút thương mại sử dụng cả hai cách tiếp cận này, tập trung vào cách tiếp cận từ điển vi-rút.

Cách tiếp cận từ điển vi-rút Trong phương pháp từ điển vi-rút, khi phần mềm chống vi-rút kiểm tra một tệp, nó đề cập đến một từ điển các vi-rút đã biết đã được xác định bởi tác giả của phần mềm chống vi-rút. Nếu một đoạn mã trong tệp khớp với bất kỳ vi-rút nào được xác định trong từ điển, thì phần mềm chống vi-rút có thể xóa tệp đó, cách ly nó để tệp không thể truy cập được vào các chương trình khác và vi-rút không thể lây lan hoặc cố gắng để sửa chữa tệp bằng cách loại bỏ vi rút khỏi tệp.

Để thành công trong trung và dài hạn, phương pháp từ điển vi-rút yêu cầu tải xuống trực tuyến định kỳ các mục từ điển vi-rút được cập nhật. Khi các vi-rút mới được xác định là "trong tự nhiên", người dùng có đầu óc kỹ thuật và thiên về kỹ thuật có thể gửi các tệp bị nhiễm của mình cho các tác giả của phần mềm chống vi-rút, sau đó đưa thông tin về vi-rút mới vào từ điển của họ.

Phần mềm chống vi-rút dựa trên từ điển thường kiểm tra các tệp khi hệ điều hành của máy tính tạo, mở và đóng chúng; và khi các tập tin được gửi qua email. Bằng cách này, một loại virus đã biết có thể được phát hiện ngay khi nhận được. Phần mềm cũng có thể được lên lịch để kiểm tra tất cả các tệp trên đĩa cứng của người dùng một cách thường xuyên.

Mặc dù cách tiếp cận từ điển được coi là hiệu quả, các tác giả vi-rút đã cố gắng đi trước một phần mềm như vậy bằng cách viết "vi-rút đa hình", mã hóa các bộ phận của chính họ hoặc sửa đổi bản thân như một phương pháp ngụy trang, để không khớp với chữ ký của vi-rút trong từ điển

Hành vi đáng ngờ tiếp cận Cách tiếp cận hành vi đáng ngờ, ngược lại, không cố gắng để xác định virus được biết đến, nhưng thay vì theo dõi các hành vi của tất cả các chương trình. Ví dụ, nếu một chương trình cố gắng ghi dữ liệu vào một chương trình thực thi, thì điều này được gắn cờ là hành vi đáng ngờ và người dùng được cảnh báo về điều này và hỏi phải làm gì.

Không giống như cách tiếp cận từ điển, cách tiếp cận hành vi đáng ngờ do đó cung cấp sự bảo vệ chống lại các vi-rút hoàn toàn mới chưa tồn tại trong bất kỳ từ điển vi-rút nào. Tuy nhiên, nó cũng có vẻ là một số lượng lớn các thông tin sai lệch và người dùng có thể trở nên mẫn cảm với tất cả các cảnh báo. Nếu người dùng nhấp vào "Chấp nhận" trên mỗi cảnh báo như vậy, thì phần mềm chống vi-rút rõ ràng là vô dụng đối với người dùng đó. Vấn đề này đặc biệt trở nên tồi tệ hơn trong 7 năm qua, vì nhiều thiết kế chương trình không độc hại khác đã chọn sửa đổi các .exes khác mà không liên quan đến vấn đề tích cực sai này. Vì vậy, hầu hết các phần mềm chống vi-rút hiện đại sử dụng kỹ thuật này ngày càng ít đi.

Các cách khác để phát hiện vi-rút Một số phần mềm chống vi-rút sẽ cố gắng mô phỏng phần đầu của mã của mỗi tệp thực thi mới đang được thực thi trước khi chuyển quyền kiểm soát sang tệp thực thi. Nếu chương trình dường như đang sử dụng mã tự sửa đổi hoặc xuất hiện dưới dạng vi-rút (nó ngay lập tức cố gắng tìm các tệp thực thi khác), người ta có thể cho rằng tệp thực thi đã bị nhiễm vi-rút. Tuy nhiên, phương pháp này dẫn đến rất nhiều kết quả dương tính giả.

Một phương pháp phát hiện khác là sử dụng hộp cát. Một hộp cát mô phỏng hệ điều hành và chạy chương trình thực thi trong mô phỏng này. Sau khi chương trình kết thúc, hộp cát sẽ phân tích các thay đổi có thể chỉ ra vi-rút. Do vấn đề về hiệu năng, loại phát hiện này thường chỉ được thực hiện trong quá trình quét theo yêu cầu.

Vấn đề băn khoăn

Vi-rút macro, được cho là vi-rút máy tính phổ biến và có sức hủy diệt cao nhất, có thể được ngăn chặn rẻ hơn và hiệu quả hơn và không cần tất cả người dùng mua phần mềm chống vi-rút, nếu Microsoft sẽ sửa các lỗi bảo mật trong Microsoft Outlook và Microsoft Office liên quan đến thực thi mã đã tải xuống và khả năng của các macro tài liệu để phát tán và phá hoại.

Giáo dục người dùng cũng quan trọng như phần mềm chống vi-rút; chỉ cần đào tạo người dùng về các thực hành điện toán an toàn, chẳng hạn như không tải xuống và thực hiện các chương trình không xác định từ Internet, sẽ làm chậm sự lây lan của vi-rút mà không cần phần mềm chống vi-rút.

Người dùng máy tính không nên luôn luôn chạy với quyền truy cập của quản trị viên vào máy của họ. Nếu chúng chỉ đơn giản là chạy trong chế độ người dùng thì một số loại vi-rút sẽ không thể lây lan.

Cách tiếp cận từ điển để phát hiện virus thường không đủ do việc tạo ra các virus mới liên tục, tuy nhiên cách tiếp cận hành vi đáng ngờ là không hiệu quả do vấn đề dương tính giả; do đó, sự hiểu biết hiện tại về phần mềm chống vi-rút sẽ không bao giờ chinh phục được vi-rút máy tính.

Có nhiều phương pháp mã hóa và đóng gói phần mềm độc hại sẽ làm cho ngay cả những virus nổi tiếng không thể phát hiện được đối với phần mềm chống vi-rút. Việc phát hiện các virus "ngụy trang" này đòi hỏi một công cụ giải nén mạnh mẽ, có thể giải mã các tập tin trước khi kiểm tra chúng. Thật không may, nhiều chương trình chống vi-rút phổ biến không có điều này và do đó thường không thể phát hiện vi-rút được mã hóa.

Các công ty bán phần mềm chống vi-rút dường như có động lực tài chính cho vi-rút được viết và phát tán, và khiến công chúng hoang mang về mối đe dọa.

(Tôi thích bài viết này, và tôi chỉ sao chép và dán từ AntivirusWorld.)


Cảm ơn :) Đối với cách tiếp cận từ điển, điều đó có nghĩa là nếu tôi sao chép mã virus đã biết và đưa nó vào ứng dụng của mình, nó sẽ bị phát hiện, nhưng nếu tôi viết một cái gì đó tương tự thì phải chờ điều hành vi đáng ngờ? (Theo giả thuyết, tất nhiên)
Phoshi

Đúng nó sẽ làm vậy .
joe

Điều đó có ý nghĩa, nếu bạn không thể ngăn chặn vi-rút được tạo ra, thì việc dừng mã hiện tại là khá tốt (và được cung cấp một lượng thời gian vô hạn, sẽ ngăn chặn mọi vi-rút có thể - không tệ: P)
Phoshi

Đó là một chữ ký. Một phần mã máy độc hại phổ biến đối với nhiều loại vi-rút.
alex

Nếu AV so sánh một tệp với một từ điển, giả sử 10.000 virus đã biết, thì tại sao nó lại NHANH CHÓNG? Tại sao mỗi tệp lại mất một phần nghìn giây để quét ..
LantisGaius

3

Phoshi, câu hỏi của bạn rất thú vị, nhưng tôi khuyên bạn nên bắt đầu nhiệm vụ của mình với một câu hỏi khác. Tôi ủng hộ điều này bởi vì câu trả lời cho câu hỏi bạn đã hỏi có thể đánh lừa bạn.

Tôi đề nghị bạn nên bắt đầu suy nghĩ về những gì bạn coi là virus, định nghĩa của nó là gì.

Những người viết virus ưu tú là những nhà nghiên cứu bảo mật, không phải những đứa trẻ kịch bản. Định nghĩa virus của họ là: "virus là một đoạn mã có thể tự nhân lên". Đó là nó. Như bạn có thể thấy, không có tính năng phá hoại được đề cập ở đây. Tất cả các vi-rút bắt buộc là xấu - đó là FUD bạn nhận được từ các nhà sản xuất chống vi-rút độc quyền để họ có thể bán phần mềm của họ.

IMHO thật khôn ngoan khi coi virus là một phần của toàn bộ hệ sinh thái phần mềm, chứ không phải là "người ngoài hành tinh" xấu xa bên ngoài.


Chà, tôi đã hỏi làm thế nào AV hoạt động, vì vậy tôi nghĩ rằng câu trả lời ... trả lời khá tốt, nhưng bạn đưa ra một quan điểm rất hay, Đó là điều cần suy nghĩ :)
Phoshi

Xem hai chương trình chống vi-rút trên cùng một máy tính đang cố gắng tiêu diệt nhau cũng rất vui nhộn. Hãy tự hỏi tại sao họ làm điều đó :-)
geek

1

Một cách rất quan trọng để nhìn vào virusses là cách khác. Làm thế nào để Virus thỏa hiệp các hệ thống. Điều này thường thông qua các lỗ hổng phần mềm. Phần mềm chống vi-rút nhận thức được các lỗ hổng này và tìm kiếm phần mềm ảnh hưởng đến các lỗ hổng này. Dù bằng cách nào, virusses luôn luôn làm gì đó. Vì vậy, họ cần một quá trình làm việc để làm bất cứ điều gì họ làm tốt nhất. Đôi khi điều này là trong một cái hiện có, đôi khi họ tạo ra một chính họ.

Tuy nhiên, virus MOST hoạt động theo những cách tương tự, giúp người quét virus dễ dàng phân biệt giữa chúng. Có nhiều loại virus khác nhau sử dụng cùng một lỗ hổng!

http://en.wikipedia.org/wiki/List_of_computer_viruses

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.