Phân tích vx như thế nào?. Đây là một chủ đề lớn, bao quát. Ở đây ta chỉ bàn vx mới chưa có anti vx nào nhận diện. Theo tôi nghĩ quy trình các bước thực hiện như sau:
1.Nhận diện hệ thống:
-OS,trình duyệt web, Firewall, các trình protect máy (như các anti vx) là gì? Từ đó ta biết được các modules, processes, services, drivers,Add-on trình duyệt, ver of OS... của hệ thống. Mục đích chính là khi ta hiểu rõ hệ thống thì ta sẽ dễ dàng phân tích định tính vx ở bước sau. Đồng thời cũng xem hiện hệ thống có dính lỗi bảo mật nào không
2.Định tính vx:
-Dùng các tools khảo sát hệ thống để định tính và nhận diện vx
+Khảo sát processes xem có process lạ nào đáng ngờ không
+Khảo sát các modules dlls... có inject vào các process hệ thống không
+Khảo sát registry để xem process nào cùng khởi động cùng OS.
+Check MD5, CRC,SHA các modules (files) đang chạy trên hệ thống xem có bị vx inject code không
+Khảo sát các files, folder ẩn để tìm các file nghi ngờ (bước này có thể bỏ qua vì xác suất nhận diện rất ít)
+Khảo sát các driver, tìm rootkit làm ẩn tiến trình, ẩn key, ....
+Khảo sát lưu lượng mạng (dùng DUMetter) xem sức khoẻ mạng có bị vx tác động ko.
+Dùng tool theo dõi hệ thống xem có file mới nào sinh ra ko hay key registry nào mới sinh ra ko. (có 1 tool free rất hay). Tool này thường sử dụng khi ta đã có mẫu vx phân tích.
..v..v..
Từ đó nhận diện được thuộc tính của virus và module (file) vx. Khi biết được thuộc tính của vx và module (file) vx, chúng ta dễ dàng tập trung phân tích code (reversing) của vx.
3.Phân tích code (reversing) vx (định lượng vx):
Bước này là phân tích sâu con vx để biết được toàn bộ hành vi hoạt động của nó.
Sau khi nhận biết được module vx (file chứa vx) ở bước trên, ta sẽ reversing nó tương tự các bước trong kỹ thuật reversing:
-Xem virus viết code bằng ngôn ngữ nào hay dùng packer, protecter nào bảo vệ
-Nếu bị pack, protect thì unpack,unprotect file vx
-Dùng tools phù hợp với ngôn ngữ viết code vx để decompile, diassemble, debugging vx. Bước nhận diện vx ở bước trên sẽ hổ trợ cho bước này rất nhiều. Vì biết được thuộc tính vx chúng ta sẽ dễ dàng đặt breakpoint trên hàm API nghi ngờ, ....
Chú ý: trong quá trình reversing, hạn chế debug vx vì rất nguy hiểm khi lỡ tay, ta nên tận dụng các tools decompile, diasemble. Và khuyến nghị nên dùng môi trường ảo để phân tích
4.Tìm signature của vx và phương pháp khống chế vx:
Sau khi phân tích code, ta tìm signature của vx (ví dụ tại offset nào đó chứa string gì, hoặc MD5 của file vx , .....)để nhận dạng nó . Hoặc pp loại bỏ nó khỏi hệ thống
Trên chỉ là lược đồ, các bạn góp ý thêm vào cho đầy.
Nguồn:internet