Trao đổi với tôi

http://www.buidao.com

11/25/09

[Anti Virus] VirusVN phát hiện lỗi vô hiệu hóa scan engine của Bkav

Bản quyền :
Yêu cầu ghi rõ nguồn gốc bài viết từ VirusVN.com khi bạn sao chép bài viết.

Mô tả lỗi

Hiện tượng :
- Khi Bkav tiến hành scan, nếu gặp file có cấu trúc nhất định sẽ bị crash và tự thoát khỏi chương trình.
- Mọi thao tác scan liên quan tới file này đều gây hiện tượng crash Bkav (Scan trực tiếp 1 file hay scan thư mục chứa file đó)

Cấu trúc file gây ra lỗi :
- Lỗi xảy ra khi tại vị trí Entry Point của file có giá trị dạng sau : ?? 9C 60 E8 0D 70 00 00

Trong đó, những byte 0D 70 00 00 là có thể thay đổi một cách nhất định.



Nguyên nhân :
1. Scanner của Bkav kiểm tra xem entry point có những byte có trùng lặp trong bảng mã nhận dạng hay không, ở đây các byte 9C 60 là trùng lặp với mã nhận dạng virus, mà cụ thể ở đây là W32.KrizedA.PE.
2. Do các byte đầu tiên là giống nhau, scanner tiếp tục so sánh, tới khi gặp lệnh call đầu tiên (E8) thì cố gắng nhảy con trỏ xét chuỗi tới vị trí sẽ được virus gọi. Ở đây là : 0D 70 00 00

3. Bkav sẽ dựa vào giá trị trên để tính ra một giá trị mới và đọc dữ liệu từ ví trị mới đó. Tuy nhiên, do không kiểm soát giá trị nên vùng nhớ được trỏ đến bởi kết quả tính toán bên trên là không hợp lệ.



4. Ở đây, thay vì bắt được lỗi thì Bkav bị crash và tự thoát ra.

Khai thác :
- Bằng cách tận dụng lỗi này, chúng ta không khó để vô hiệu hóa hoàn toàn Bkav bằng 2 cách sau :
o Tạo mỗi file có cấu trúc như vậy ở đầu mỗi thư mục, đưa mã độc thực ở phía sau (Theo API liệt kê file). Như vậy mỗi khi scan thư mục đó thì sẽ bị vô hiệu hóa và không thể scan tới mã độc thực.
o Tạo một mã độc chạy độc lập mà mỗi khi Bkav scan nó thì tự bị crash, trong khi mã độc vẫn hoạt động bình thường


Xác nhận lỗi từ Bkav : Hiện lỗi đã được fix
http://releasenotes.bkav.com.vn/?p=40
Quote:
2. Lỗi gây crash khi quét file có header dị dạng

Clip mô tả lỗi :
Mô tả : Demo được thực hiện trên Windows XP với phiên bản Bkav Pro 2009
1. Scan thư mục chứa 1 file thực thi thường, và một file chứa gói dữ liệu gây lỗi Bkav -> Bkav bị crash.
2. Scan file thường -> Bkav hoàn toàn bình thường
3. Scan file chứa dữ liệu gây lỗi -> Bkav crash
4. Chạy thử file chứa dữ liệu gây lỗi -> Chạy hoàn toàn bình thường
-> Chứng minh được, hoàn toàn có thể tạo ra 1 mã độc chạy bình thường và vô hiệu hóa hoàn toàn khả năng scan của Bkav.


Nếu không xem online được, bạn có thể down ở đây : http://virusvn.com/download/video-tu...nerability.swf

Đính kèm :
- Toàn văn tài liệu công bố lỗi
- File mẫu gây ra lỗi trong demo.