Thứ Hai, 7/10/2024
Cuộc sống số
Chủ Nhật, 3/8/2008 15:12'(GMT+7)

Làm thế nào để kiểm tra lỗ hổng máy chủ DNS?

Trước thực tế, này Trung tâm An ninh mạng Bkis – Trường ĐHBK Hà Nội đã phát hành phần mềm Bkav DNS Check cho phép kiểm tra, phát hiện hệ thống máy chủ DNS có lỗ hổng Subdomain Exploit DNS Cache Poisoning hay không. Cùng với việc phát hành phần mềm này, Bkis cũng hướng dẫn cách vá lỗ hổng để tránh nguy cơ bùng phát các cuộc tấn công vào hệ thống DNS tại Việt Nam.

Mô tả kỹ thuật của lỗi Subdomain Exploit DNS Cache Poisoning

Giao thức DNS là giao thức phân giải địa chỉ, dùng để ánh xạ giữa tên miền (domain name) sang địa chỉ Internet (IP). Theo giao thức này, máy chủ DNS khi nhận được yêu cầu phân giải địa chỉ (request) từ máy trạm, nó sẽ tra cứu trong bộ đệm (cache) và trả về địa chỉ IP tương ứng với tên miền mà máy trạm yêu cầu. Tuy nhiên, nếu không tìm thấy trong bộ đệm, máy chủ DNS sẽ chuyển tiếp yêu cầu phân giải tới một máy chủ DNS khác. Đây chính là khâu đã bị phát hiện là có lỗ hổng nghiêm trọng và mã khai thác lỗ hổng này đã được lan truyền trên mạng Internet trong vài ngày qua.

Cách thức tấn công DNS cache poisoning của hacker như sau: hacker (máy H) gửi hàng loạt yêu cầu phân giải địa chỉ tới máy chủ DNS nạn nhân (máy A). Các tên miền cần phân giải đã được hacker tính toán sao cho máy chủ A không thể tìm thấy trong bộ đệm của nó và buộc phải chuyển tiếp tới máy chủ DNS tiếp theo (máy B). Mỗi trao đổi phân giải giữa A và B được xác thực thông qua một số hiệu TID (Transaction ID) ngẫu nhiên. Tuy nhiên, điểm yếu ở đây chính là việc số TID này chỉ là một số 16 bit (nhỏ hơn 65535) và mọi trao đổi giữa A và B đều diễn ra trên một cổng (port) cố định của A.



Để tấn công DNS cache poisoning, trước khi máy A kịp nhận các gói tin trả lời từ máy B, hacker gửi liên tiếp các gói tin giả mạo trả lời của máy B tới cổng cố định nói trên của A. Chỉ cần một trong các gói tin giả mạo này có TID trùng với TID mà máy A đang chờ, thì gói tin giả mạo sẽ được máy A chấp nhận là gói tin hợp lệ và cập nhật vào bộ đệm của A. Lúc này, gói tin trả lời thật từ máy B sẽ không được máy A xử lý nữa. Bằng cách này, hacker có thể đầu độc bộ đệm của máy A, để ánh xạ tên miền bị tấn công sang một địa chỉ IP mà hacker chỉ định.

Lỗ hổng DNS cache poisoning đã xuất hiện lần đầu tiên vào những năm 90. Từ đó đến nay hacker đã sử dụng nhiều phương pháp khác nhau để khai thác lỗ hổng này. Đây là lỗi trong thiết kế của giao thức DNS. Với mỗi phương pháp khai thác, các nhà sản xuất phần mềm DNS Server cũng đã cung cấp các bản vá để ngăn chặn và vấn đề đã được khắc phục. Tuy nhiên, gần đây hacker đã tìm ra được phương thức tấn công mới, tiếp tục khai thác lỗ hổng DNS cache poisoning.

Điểm quan trọng nhất trong phương pháp khai thác lỗ hổng DNS cache poisoning lần này là việc hacker sử dụng các tên miền con (subdomain) để tạo ra các yêu cầu phân giải địa chỉ hợp lệ. Các tên miền con được tạo ngẫu nhiên với số lượng lớn, điều này đảm bảo các tên miền này chưa từng tồn tại trong cache của máy chủ A và buộc A phải tạo ra cùng số lượng tương ứng các yêu cầu chuyển tiếp tới máy chủ B. Kết quả là xác suất một gói tin giả mạo trả lời của B do hacker tạo ra có TID trùng với TID mà máy A đang chờ được nâng cao lên nhiều lần. Cơ hội đầu độc thành công bộ đệm của máy chủ A cũng vì thế được nâng cao.
                                                               (Theo cuocsongso)

Các tin khác

Thư viện ảnh

Liên kết website

Mới nhất