Chuyên đề
|
![]() |
Những người sử dụng máy tính ở Ho đều đã từng trải. ít ra họ cũng đã biết rõ virus là gì? Họ là những người đã từng phát hiện ít nhất một virus ở một số đặc điểm nào đó. Một kỹ thuật viên của Tech Pacific cho biết: "Muốn bắt một virus thì không có vất vả gì cả vì theo ước tính của Hội Bảo An Máy Tính Hoa Kỳ (US National Computer Secutity Association) là sẽ có một lượng lớn trên 14.000 virus vào năm 1994. Và tiếp theo năm sau đó, con số ước tính này sẽ đạt đến 38.000. Mặc dù đây có thể là một tin tốt cho công nghệ phòng chống virus nhưng nó không phải là chuyện đùa đối với nhiều người sử dụng máy tính mà hệ thống của họ đang làm mồi cho virus. Thật là hiểm độc, những đoạn mã lệnh gây rối và phá hoại gộp lại thành một đoạn chương trình nhỏ như là virus nhưng chúng chưa hẳn là virus. Một virus thật sự là tự nó tấn công vào một đoạn mã lệnh nào đó của chương trình có khả năng thực hiện được (đây chính là đặc điểm của virus File trên các tập tin .EXE, .COM, .SYS hoặc thậm chí cả .OVL) và can thiệp vào hoạt động của chương trình mỗi khi thực hiện chương trình đó. Một khi virus đã nạp vào bộ nhớ, nó cố gắng lây lan sang nhiều chương trình khác. Thật là nguy hại, nếu máy bị nhiễm virus có nối mạng, nơi virus có thể tung hoành như cá gặp nước vậy. Phản ứng dây chuyền Mặc dù mạng máy tính là đường nhanh nhất để phát triển thành một dịch virus, đó cũng chưa phải là đường duy nhất để virus tung hoành. Bạn cũng có nguy cơ bị virus khi sao chép phần mềm từ bạn bè, từ nơi công cộng. Virus phá hoại rất đa dạng, cách hoạt động của chúng cũng đa dạng không kém. Nó có thể phá hoại sau khi file bị nhiễm được truy xuất một số lần, hay là phá hoại trong một thời điểm nhất định nào đó. Asuza, một virus thường trú, sau khi nhiễm vào 32 file sẽ phá hoại các thiết bị ngoại vi bằng cách khống chế các cổng nối tiếp và song song. Trái lại Michelangelo đón mừng sinh nhật của mình bằng cách ghi đè lên 9M đầu tiên của đĩa cứng vào ngày 6 tháng 3. Mặc dầu đã có sự phá hoại tiềm tàng của virus, ông giám đốc của Computerware for Micros cảm thấy hầu hết virus đều vô hại. Ông tin rằng các virus chỉ đơn thuần là các trò giải trí tạm thời. Vị giám đốc của Computerware for Micros này chỉ ra rằng, chẳng hạn như virus Oropax chỉ phát nhạc trong lúc nghỉ. Tất nhiên các virus "hiền" cũng có khi làm mất những dữ liệu mà bạn chưa ghi lại trên đĩa vì bị virus đùa giỡn. Dù hiền hay dữ, virus được phân loại theo cách mà nó nhiễm vào máy. Vì thế có virus Boot và virus File. Boot sector là gì? Boot sector là một vùng trên đĩa mềm hay đĩa cứng dùng để khởi động máy PC. Virus sẽ chèn đoạn mã của nó vào đấy, vì thế mỗi lúc máy bật lên thì virus đã tải lên bộ nhớ rồi (xem hình 1). Nó cũng có thể lây vào partition, nhưng hiếm hơn. Những virus này thông thường nhiễm vào máy thông qua đĩa mềm có chứa virus. Michelangelo và Stoned là những virus thuộc loại này. Virus boot rất nguy hiểm nhưng việc diệt nó rất dễ. Virus file tự nối nó vào các file thi hành . Nó cũng có khả năng sửa đầu vào của chương trình chính để nó được quyền thực hiện trước (xem hình 2). Virus này phải cẩn thận để không ghi đè lên chương trình đã bị nhiễm virus rồi. Vậy chẳng qua virus là một chương trình nhỏ bám vào các chương trình khác. Vì thế, để hoạt động (hay phá hoại) nó phải được thi hành trước đã. Nó chỉ hoạt động khi nhiễm vào các file .COM, .EXE hay Overlay và boot sector của đĩa. Các file dữ liệu không thi hành được nên không bị nhiễm virus. Vì thế các file dữ liệu của các chương trình xử lý văn bản, bảng tính v.v. chắc chắn không bị nhiễm virus. Một số virus chỉ là virus "nhất thời". Nó chỉ hoạt động khi phần chương trình nhiễm virus được thực hiện. Trong khoảng thời gian này, nó cố gắng nhiễm càng nhiều file càng tốt trước khi kết thúc chương trình. Những loại virus hiệu quả hơn là những loại virus có khả năng thường trú (TSR). Nó vẫn còn hoạt động trong bộ nhớ ngay cả khi chương trình chính ngừng hoạt động. Điều này có nghĩa là nó có khả năng lây lan ra toàn bộ các chương trình trên máy khi có cơ hội. Để có thể bám lại bộ nhớ, virus TSR cướp quyền điều khiển của máy tính bằng cách sửa bảng vector ngắt. Khi các phục vụ của DOS và BIOS được gọi, virus đã chặn được các ngắt này nên nó sẽ thực hiện đoạn chương trình của nó trước khi trả quyền điều khiển cho các ngắt (xem hình 3). Vì nó vẫn còn nằm trong bộ nhớ, cách duy nhất để làm nó ngừng hoạt động là tắt máy. Dù vậy nếu nó là virus boot thì nó đã có mặt trên boot sector và virus sẽ lại nắm quyền điều khiển của máy tính. Stealth virus Trước đây, các loại virus dù là boot hay file đều rất đơn giản. Tất cả các virus xung quanh ta hình như có họ hàng với nhau. Nhưng mới đây một loại virus mới rất nguy hiểm vừa xuất hiện, đó là Stealth virus. Những virus trước kia được thiết kế sao cho có thể tránh né sự phát hiện. Nhưng nó vẫn để lại một ít dấu hiệu. Những kẻ viết virus đã cố gắng viết thêm một số loại virus mới tinh khôn hơn. Điển hình là virus 4096. Nó hòa nhập thực sự vào môi trường xung quanh. Nó thông qua ngắt DOS để tự cài đặt cũng như gỡ những đoạn mã của mình ra khỏi file bị nhiễm khi các chương trình này được quét virus. Gần đây cũng có những virus "tự đột biến" (Mutation engine). Nó có cơ chế tự mã hóa khi lây vào file. Sự phức tạp của giải thuật mã hóa này sẽ phát sinh hàng tỷ dạng khác nhau của virus. Khi lây nó chỉ lây một trong các dạng đó làm phát sinh một dạng virus mới (Xem hình 4). Pogue là một thí dụ cho loại virus này. Các chương trình quét rất khó khăn trong việc tìm các virus đa hình này. Có một vài cách để phòng ngừa sự tấn công của virus hay ít ra cũng giảm thiểu sự phá hoại của chúng. Những sản phẩm chống virus có nhiều phương pháp để phát hiện virus nhưng chúng ta có thể chia làm 3 loại.
Đây là phương pháp sớm nhất mà các chương trình chống virus thường dùng. Hầu hết các virus đều có những dấu hiệu để chúng không tự nhiễm trở lại các file đã nhiễm, vì thế scanner tìm thấy những "nhãn hiệu" này khi chúng quét qua file. Virus sẽ được phát hiện nhờ sự so sánh với các dấu hiệu của những virus đã biết. Tuy nhiên, chương trình dùng phương pháp này cần phải cập nhật thường xuyên. Nếu không nó sẽ không phát hiện được các loại virus mới. Thông thường các virus đã tung hoành khoảng nửa năm mới bắt được nó. Một phần mềm chống virus được cập nhật thường xuyên là Scan của McAfee. Cứ 2 đến 4 tuần, chương trình được cập nhật một lần và được thông báo và phân phát rộng rãi trong quần chúng. Tuy nhiên , phương pháp này không trị được virus đa hình vì những virus này không có dấu hiệu nhận dạng cố định.
Nguyên thủy Checksum dùng để kiểm tra tính toàn vẹn của dữ liệu, nguyên tắc của kỹ thuật này là phát hiện sự thay đổi trong file hoặc boot sector. Chương trình sẽ phát sinh ra một trị số gọi là checksum và sẽ được kiểm tra định kỳ với file hiện hành. Nếu virus thâm nhập file này, chương trình sẽ báo động. Tuy sự kiểm tra thường xuyên sẽ tốn thời gian nhưng phương pháp này chỉ làm việc tốt khi có sự kiểm tra đều đặn. Virus có thể lừa một chương trình chống virus nào đó bằng cách cho tạo một checksum giả. Để tránh việc này, vài chương trình chống virus dùng nhiều checksum khác nhau và các kỹ thuật mã hóa tạo checksum rất phức tạp hòng không thể giả mạo được. Vả lại có rất nhiều kỹ thuật checksum khác nhau được các chương trình khác nhau sử dụng nên việc virus cố tình chống lại một chương trình nào đó cũng bằng thừa. Điểm yếu của phương pháp này là nó không có khả năng phân biệt giữa sự thay đổi thật sự và thay đổi do virus tấn công. Từ đó người dùng phải luôn lo lắng với các thông báo sai. Phương pháp này sẽ giúp "nuôi" virus nếu checksum ban đầu không sạch sẽ. Stealth virus có thể lẩn trốn checksum. Nó chặn lúc kiểm tra checksum và tránh được sự phát hiện bằng cách loại bỏ tạm thời chính nó ra khỏi file đang checksum. Vì thế chỉ có kiểm tra bằng phần cứng mới phát hiện được chúng. Một số ROM BIOS mới có thể phát hiện được virus trên boot sector trước khi nó được nạp vào máy.
Một số trình tiện ích chặn mọi thao tác về đĩa, thông báo cho người dùng biết mọi điều khả nghi, chẳng hạn như việc ghi lên file EXE, COM hoặc ghi trực tiếp lên các sector của đĩa. Tuy nhiên, cách này không phát hiện được virus boot dùng BIOS để truy xuất đĩa. Những virus này được nạp trước cả khi các TSR chạy. Chúng đã sửa các đầu vào của BIOS vào chương trình chúng làm cho chương trình Access Monitor gọi chương trình virus chứ không phải gọi BIOS (xem hình 5) Disk Access Monitor thông báo sai khi các ứng dụng có ghi lên file EXE hay COM, chẳng hạn như trong quá trình cài đặt phần mềm. Hy vọng sau này sẽ có những cải tiến làm cho các chương trình này thông minh hơn, nó sẽ phân biệt đâu là thông báo sai và đâu là thông báo đúng. PCSafe Data Guardian áp dụng nguyên tắc này theo hướng khác. Nó nằm trong phần cứng nên được tải vào bộ nhớ trước khi boot máy. Kể từ đó, nó sẽ báo động mọi thao tác cố tình ghi lên boot sector hoặc file có khả năng thực thi. Phải nhìn nhận rằng không có phương pháp nào đủ để ngăn chặn được virus. Các sản phẩm phòng chống virus gia tăng và mỗi sản phẩm đều kết hợp nhiều hơn hai phương pháp trên để phòng chống. Các sản phẩm chống virus như PC-cillin. Armour và Thunderbyte tập trung sức mạnh vào phương pháp Access Monitor. McAfee lại dùng phương pháp scan và được cập nhật liên tục. Tuy nhiên sự gia tăng của virus sẽ làm cho tốc độ quét giảm xuống đáng kể. Việc diệt virus cũng là một vấn đề không kém quan trọng. Nó thường xảy ra song song với việc phát hiện virus. Sau đây là một số phương pháp diệt virus. 1. Loại bỏ đoạn mã virus Đây là cách truyền thống làm tê liệt virus trực tiếp. Tuy nhiên nếu có nhiều virus lây vào một file, chúng sẽ "đan" chồng chéo lên nhau và phương pháp này có thể làm hỏng file nguyên thủy. Với virus boot thì diệt chúng bằng phương pháp này rất hữu hiệu vì đoạn boot sector rất ngắn. 2. Ghi đè và "xây dựng" lại file Với virus boot, phương pháp này sẽ thay thế boot sector cũ bằng một boot sector mới, sạch. Khi checksum nghi ngờ boot sector có vấn đề, nó sẽ ghi đè lên boot sector một boot sector mới khác. Kết quả là virus bị xóa sạch trước khi nó nhiễm qua đĩa khác. Có thể xây dựng lại file từ các chức năng phục hồi dữ liệu của một chương trình chống virus nào đó. Những sản phẩm "xịn" thường dùng kỹ thuật nén dữ liệu để chúng có thể xây dựng lại đĩa từ một đoạn dữ liệu rất nhỏ. Central Point Anti Virus và Untouchable thuộc những sản phẩm làm được công việc này. Cách xây dựng lại này rất dễ dùng nhưng có khả năng bị hỏng. Phương pháp này rất cần thiết cho những người dùng kém yếu về hệ thống. 3. Backup toàn bộ đĩa cứng Backup đĩa cứng là phương pháp tốt nhất để phục hồi hư hỏng và diệt virus trong máy. Nếu bạn đang phục hồi toàn bộ dữ liệu, hãy format đĩa cứng trước. Một số virus vẫn trụ lại được nhờ có khả năng chống lại format của DOS, vì thế bạn nên format đĩa cứng cấp thấp trước khi backup dữ liệu. Có một chương trình chống virus nào thực sự dễ dùng không? Câu trả lời là có và đó là Write Guard của úc. Nó bảo vệ đĩa cứng, giúp người dùng bảo vệ các file có thể bị virus tấn công (EXE, COM, OVL). Việc phòng chống virus hết sức khó khăn, những kẻ viết virus luôn tìm mọi khe hở của các chương trình chống virus dù đó là chương trình mạnh nhất. Trò chơi rượt bắt này rõ ràng không bao giờ kết thúc. Những dạng virus mới sẽ gài bẫy chương trình chống virus bằng cách chúng sẽ giả dạng những virus đơn giản khác. Cuối cùng khi "virus giả" đã bị diệt thì thủ phạm thật sự mới nhảy ra phá phách... Virus nào dù xảo quyệt đến đâu rồi cũng sẽ bị tiêu diệt. Nếu không tin, hạn hãy quan sát các virus mới xem sao. (theo VASC) |
Bạn tìm đến nhóm
thiện nguyện VTT qua www.tuoitre.org, tuoitre.org, www.tuoitre.de hoặc tuoitre.de. Mọi ý kiến đóng góp xin bạn hãy liên lạc với chúng tôi qua lienlac@tuoitre.org. |