Page 111 - Hướng Dẫn Cách Phòng Thủ Và Khắc Phục Sự Cố Máy Tính
P. 111
vẽ lại phạm vi của Client của nó, Windows sẽ gửi một thông
điệp đến ứng trình này. Thật ra, khi một sự kiện xảy ra mà
một ứng trình nào đó cần biết, nó bèn gửi một thông điệp đi.
Những thông điệp này được đặt vào một hàng đợi và được ứng
trình xử lý theo tuần tự.
Đó là một cơ chế rất đáng tin cậy để điều hành các ứng
trình. Tuy nhiên, cơ chế dùng để điều hành các thông điệp
trên Win32 bị lỗi. Bất cứ một ứng trình nào cũng có thể
gửi thông điệp đến bất kỳ cửa sổ nào trên cùng một màn
hình nền desktop, bất chấp ứng trình nhận được thông
điệp có muốn nhận các thông điệp này hay không. Hoàn
toàn không có một cơ chê nào dùng để xác minh nguồn gốc
các thông điệp. Tức là ta không có cách để phân biệt được
sự khác nhau giữa một thông điệp được gửi từ một ứng
trình nguy hiểm và một thông điệp được gửi từ kernel của
Windows. Đó là do thiếu sót cơ chế xác minh mà chúng ta
sẽ khai thác với chủ đích: sử dụng các thông điệp này để
thao túng các khung và các quy trình làm chủ các cửa sổ
trong hệ điều hành Windows.
Phương thức khai thác
Chúng tôi sẽ trình bày một ví dụ. Trong ví dụ này,
chúng tôi sẽ khai thác Network Associate VirusScan
version 4.5.1 chạy trên Windows 2000. Chúng tôi truy cập
như một người dùng guest và ViruScan Console chạy trên
desktop là "LocalSystem". Mục đích là dùng để lừa
VirusScan chạy mã riêng để gia tăng chủ quyền cho chúng
tôi, tức là người dùng guest. Để thực hiện mục đích này,
chúng ta sẽ thực hiện bốn bước đơn giản sau:
Tìm một khung thích hỢp trong VirusScan và lấy một
khung đó để sử dụng.
Bỏ đi giói hạn phân độ trong edit box để người tấn
công có thể nhập vào một số lượng dữ kiện tuỳ ý họ.
112