PDA

View Full Version : Lỗi tràn bộ đệm trong xử lý con trỏ chuột


nhatphuc
06-17-2007, 12:32 AM
1. Thông tin chung.

File .ani được sử dụng để lưu trữ con trỏ chuột động (animated mouse pointer) của hệ điều hành Windows. Nó cho phép thay đổi con trỏ chuột thành ảnh động như đồng hồ cát trong quá trình chờ đợi một chương trình đang thực thi.

Lỗi tràn bộ đệm trong các hàm xử lý file .ani cho phép kẻ tấn công thực thi những đoạn mã độc và có thể chiếm quyền điều khiển hệ thống từ xa. Do con trỏ chuột động là một tính năng phổ biến của hệ điều hành, nên phạm vi khai thác của lỗi này là rất rộng đặc biệt là khả năng tấn công từ xa .

Lỗi này có khả năng khai thác trên các phiên bản khác nhau của hệ điều hành Windows nhất là Windows Vista, hệ điều hành được cho là an toàn nhất hiện nay.

2. Mô tả kỹ thuật.

File .ani là định dạng mở rộng của file đa phương tiện RIFF. Nó chứa một chuỗi các cấu trúc, mỗi cấu trúc mang một thông tin về ảnh động sẽ gán cho con trỏ chuột. Trong đó có cấu trúc 'anih' có kích thước xác định 36 byte, và đây là cấu trúc mang thông tin header của file .ani

struct ANIChunk
{
char tag[4]; // chứa mã ASCII
DWORD size; // kích thước của biến data
char data[size]; // biến ký tự data
}

Lỗi tràn bộ đệm xảy ra do hệ điều hành khi thực thi đã không kiểm tra kích thước của cấu trúc 'anih', do đó kẻ tấn công có thể tạo ra một file .ani với kích thước đủ lớn để gây tràn bộ đệm và thực thi mã độc.

Để khai thác lỗ hổng này, kẻ tấn công có thể gửi cho người dùng một Link nguy hại, hoặc một E-mail dạng HTML. Người dùng chỉ mở Link bằng Internet Explorer hoặc đọc E-mail bằng Outlook thì đã vô tình thực thi mã độc. Chúng tôi đã tiến hành nghiên cứu và kết quả cho thấy, lợi dụng lỗ hổng này, có thể thực thi mã khai thác cho phép chiếm quyền điều khiển hệ thống, cài đặt trojan, ...

Về kỹ thuật khai thác cơ bản, lỗi này đã được Microsoft công bố trong năm 2005, tuy nhiên bản vá của Microsoft cung cấp là không hoàn chỉnh và vẫn cho phép kẻ tấn công khai thác với một thay đổi nhỏ về kỹ thuật.

3. Giải pháp phòng chống.

Hiện nay, đã xuất hiện một số trường hợp phát tán virus qua lỗ hổng này. Microsoft cũng đã xác nhận thông tin về lỗ hổng trên và đã đưa ra bản vá cho lỗ hổng này. Các bạn hãy vào http://www.microsoft.com/technet/security/Bulletin/MS07-017.mspx để cập nhật bản sửa lỗi cho máy tính của mình