Tìm và diệt Malware bằng Sysinternals Tools – Phần 1

Quản trị mạng Trong phần một của loạt bài gồm hai phần này, chúng tôi sẽ giới thiệu cho các bạn cách sử dụng Sysinternals Tools để phát hiện và tiêu diệt malware trong hệ thống Windows.

Có nhiều ứng dụng có thể phát hiện và tiêu diệt malware, chẳng hạn như công cụ Malicious Software Removal Tool (MSRT) của chính Microsoft, một công cụ miễn phí mà có thể download tại đây.

Tự nhận dạng và tiêu diệt Malware

Đây là một số bước quan trọng trong việc nhận diên và tiêu diệt Malware:

  1. Ngắt kết nối máy tính với mạng.
  2. Nhận diện các tiến trình và driver mã độc.
  3. Tạm dừng và đóng các tiến trình đã được nhận dạng.
  4. Nhận dạng và xóa bất cứ malware tự khởi chạy.
  5. Xóa các file malware
  6. Khởi động lại và lặp lại quá trình trên.

Bước đầu tiên trong quá trình này là bước phòng ngừa. Ngắt kết nối máy tính ra khỏi mạng sẽ tránh máy tính của bạn tiêm nhiễm malware cho các máy tính khác trong mạng hay ngược lại. Tuy nhiên nhược điểm của nó là làm cho bạn không quan sát hết được các hành động của malware và không hiểu hết được cách là việc của chúng.

Vậy chúng ta cần nhận dạng các tiến trình nghi ngờ như thế nào? Cách thức nhận dạng là quan sát các tiến trình không có biểu tượng, không có phần mô tả cũng như không có tên công ty.. Thêm vào đó chúng ta cũng cần phải tập trung vào các tiến trình cư trú trong thư mục Windows, đặc biệt là có chứa các URL lạ trong chuỗi của chúng, các tiến trình mở TCP/IP endpoint hoặc các dịch vụ hosting và DLL nghi ngờ (ẩn dưới dạng DLL).

Vậy cần phải vào đâu trước tiên để kiểm tra các tiến trình này? Nhiều chuyên gia CNTT thường bắt đầu bằng việc quan sát tab Processes của Task Manager. Cột Description, cột cung cấp rất nhiều thông tin về ứng dụng đang sử dụng, là cột mà chúng ta cần quan tâm đặc biệt.

Bạn có thể thu được nhiều thông tin trong Task Manager bằng cách vào menu View và kích Select Columns, sau đó tích vào các hộp kiểm mong muốn.

Ví dụ, có thể hiển thị đường dẫn của file được kết nối với tiến trình hoặc có thể tích hộp kiểm Command Line để hiển thị lệnh, với các tham số hoặc lệnh nào đã được sử dụng để khởi chạy tiến trình.

Một cách khác để nhận thêm thông tin về tiến trình trong Task Manager là kích phải vào nó và chọn Properties. Ở đây bạn sẽ thấy các thông tin liên quan đến kiểu file, vị trí và kích thước, chữ ký số, thông tin bản quyền, phiên bản (hầu hết các malware không có), sự cho phép,… Mặc dù vậy tất cả mới chỉ là những bước ban đầu, Task Manager thực sự vẫn cung cấp khá ít thông tin chi tiết về một tiến trình so với những gì bạn nhận được với công cụ như Sysinternals Process Explorer.


Sử dụng Process Explorer để nhận dạng Malware

Process Explorer được cung cấp miễn phí với dung lượng 1.47 MB. Nó có thể chạy trên Windows XP và các phiên bản mới hơn. Phiên bản hiện hành của công cụ này là 14.1 và bạn có thể download về tại đây, hoặc cũng có thể chạy từ liên kết này.

Như những gì có thể thấy trong hình 4, công cụ này sẽ cung cấp nhiều thông tin chi tiết hơn về các quá trình so với những gì nhận được từ Task Manager.

Bạn sẽ thấy trong Process Explorer, cây tiến trình ở cột bên trái hiển thị mối quan hệ cha-con. Nếu một tiến trình nào đó bị nghi ngờ, các tiến trình có liên quan cũng đáng nghi. Một tính năng thú vị khác là khả năng kích phải vào một tiến trình nào đó và chọn “Search online” để tìm kiếm thêm các thông tin về tiến trình.

Mặc dù vậy có một điều cần lưu ý ở đây là một số malware có thể sử dụng tên tiến trình được tạo giả ngẫu nhiên với mục đích đánh lạc hướng bạn trong việc nhận dạng.

Như đã được đề cập đến ở trên, malware thường được đóng gói và màu tía trong Process Explorer là một dấu hiệu rằng các file được đóng gói; Process Explorer sẽ tìm kiếm chữ ký của các gói và sử dụng một số chiêu thức để đánh dấu các tiến trình này.

Một số tiến trình quen thuộc khiến chúng ta nhầm tưởng và coi chúng không phải malware, chẳng hạn như svchost.exe, rundll32, taskhost.exe,… Tuy nhiên một số kẻ tạo malware biết điều này và thường ẩn malware dưới các tiến trình đó và chạy như tiến trình hệ thống.

Panel phía dưới của Process Explorer được mở từ menu View. Khi mở panel này bạn có thể chỉ định xem có hiển thị các file DLL hay không. Trong khung nhìn DLL, chúng ta có thể xem những gì bên trong các tiến trình, có thể xem dữ liệu hoặc ảnh. Khung nhìn này sẽ hiển thị các driver được load và có thể kiểm tra chuỗi cũng như chữ ký số.

Nếu phát hiện ra tiến trình nào đó tuyên bố là của Microsoft nhưng không được ký số thì đây là một tiến trình nghi ngờ. Chúng ta có thể kiểm tra mang tính chọn lọc các chữ ký số bằng nút Verify trên tab Image trong Properties (truy cập bằng cách kích đúp vào tên tiến trình). Bạn có thể thấy hộp thoại Properties với nút Verify như trong hình 6.

Khi thẩm định một tiến trình, công cụ sẽ kết nối với Internet để kiểm tra Certificate Revocation List (CRL). Bạn có thể thêm cột “Verified Signers” vào phần hiển thị của Process Explorer bằng cách chọn View | Select Columns và tích “Verified Signer”.

Trong sau có thể thấy cột mới được bổ sung và chữ ký số đã được thẩm định.

Nếu muốn thẩm định tất cả các chữ ký số, kích menu Options và chọn “Verify image signatures”.

Một công cụ Sysinternals khác mà bạn có thể sử dụng cho việc thẩm định các chữ ký số là Sigcheck, công cụ chạy trên Windows XP và các phiên bản gần đây. Phiên bản hiện hành của nó là 1.71 và có thể download tại đây.

Sigcheck là một công cụ dòng lệnh có thể được sử dụng để quét hệ thống. Nó gồm có nhiều tham số. Bằng cách sử dụng tiếp lệnh –u, bạn sẽ nhận được một danh sách các file không được ký. Thêm vào đó bạn cũng có thể tìm ra các giá trị hash (được sử dụng để kiểm tra các file mã độc), và kiểm tra xem tên file trong danh sách có hợp lệ với tên file bên trong hay không.

Mặc dù vậy cần lưu ý rằng những kẻ tạo malware cũng có thể tạo các chứng chỉ số cho phần mềm của chúng, vì vậy sự tồn tại của một chứng chỉ hợp lệ không bảo đảm quá trình đó không phải mã độc.

Kết luận

Trong phần một của loạt bài này, chúng tôi đã giới thiệu cho các bạn cách sử dụng Process Explorer để tìm các quá trình nghi ngờ là malware. Trong phần hai của loạt bài, chúng tôi sẽ giới thiệu tiếp cho các bạn cách sử dụng Autoruns để tìm ra malware khởi động lúc startup, cũng như cách sử dụng Process Monitor để lần vết hành động của malware và cách remove malware khỏi hệ thống.

Thứ Năm, 30/06/2011 14:23
31 👨 4.748
0 Bình luận
Sắp xếp theo
    ❖ Tổng hợp