Phát hiện lỗi vô hiệu hóa scan engine của Bkav
Trang 1 trong tổng số 1 trang
Phát hiện lỗi vô hiệu hóa scan engine của Bkav
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
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.
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
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.
Similar topics
» Phương pháp phát hiện và phòng tránh virus !!!
» Tìm hiểu hệ thống phát hiện xâm nhập mạng Snort
» Sử dụng Snort phát hiện một số kiểu tấn công phổ biến hiện nay vào các ứng dụng Web
» chkrootkit - phát hiện rootkit
» Hệ thống phát hiện xâm nhập IDS
» Tìm hiểu hệ thống phát hiện xâm nhập mạng Snort
» Sử dụng Snort phát hiện một số kiểu tấn công phổ biến hiện nay vào các ứng dụng Web
» chkrootkit - phát hiện rootkit
» Hệ thống phát hiện xâm nhập IDS
Trang 1 trong tổng số 1 trang
Permissions in this forum:
Bạn không có quyền trả lời bài viết
27/8/2013, 11:45 am by echcondihoc
» Quản Lí Tiến Trình Dùng Thư Viện PSAPI
11/10/2011, 9:42 pm by CNTT_DH
» xin tai lieu tieng viet
31/8/2011, 6:59 am by bantoisg
» Theo dõi tiến trình
27/8/2011, 5:51 pm by haigaopro01
» Giải pháp Bảo mật của Cisco
17/6/2011, 8:50 am by admin
» Nghiên cứu và đưa ra giải pháp phòng chống tấn công DoS, DDoS (Phần 1)
16/6/2011, 2:32 pm by admin
» Learn to hack !
16/6/2011, 8:49 am by admin
» Giải pháp hệ thống dành cho doanh nghiệp với thiết bị mạng Fortinet (Phần 1)
15/6/2011, 11:12 am by admin
» Ô Long Viên (Tập II)
27/9/2010, 4:56 pm by root
» những ebook về hack tiếng việt cho người mới tìm hiểu.
27/9/2010, 4:54 pm by root