Lỗ hổng đầu độc bộ nhớ cache được phát hiện trong 2 ứng dụng phân giải DNS.

Tác giả dangkhoa 06/02/2026 13 phút đọc

Lỗ hổng đầu độc bộ nhớ cache được phát hiện trong 2 ứng dụng phân giải DNS.

Ít nhất một lỗ hổng bảo mật (CVE) có thể làm suy yếu các biện pháp phòng vệ được thiết lập sau khi lỗ hổng này được công bố vào năm 2008.    

browser-security-threat-1152x627
 

Các nhà sản xuất BIND, phần mềm được sử dụng rộng rãi nhất trên Internet để phân giải tên miền, đang cảnh báo về hai lỗ hổng cho phép kẻ tấn công làm nhiễm độc toàn bộ bộ nhớ đệm kết quả và chuyển hướng người dùng đến các trang web độc hại không thể phân biệt được với các trang web thật.

Các lỗ hổng bảo mật, được theo dõi với mã CVE-2025-40778CVE-2025-40780 , lần lượt xuất phát từ lỗi logic và điểm yếu trong việc tạo số giả ngẫu nhiên. Mỗi lỗ hổng đều có mức độ nghiêm trọng là 8.6. Ngoài ra, nhà sản xuất phần mềm phân giải hệ thống tên miền (DNS) Unbound cũng cảnh báo về các lỗ hổng tương tự được báo cáo bởi cùng các nhà nghiên cứu này. Mức độ nghiêm trọng của lỗ hổng Unbound là 5.6 .

Xem xét lại vụ tấn công đầu độc kho vũ khí của Kaminsky

Các lỗ hổng này có thể bị khai thác để khiến các máy chủ phân giải DNS nằm trong hàng nghìn tổ chức thay thế kết quả tra cứu tên miền hợp lệ bằng các kết quả bị lỗi. Các kết quả bị lỗi sẽ thay thế địa chỉ IP do nhà điều hành tên miền kiểm soát (ví dụ: 3.15.119.63 cho arstechnica.com) bằng các địa chỉ độc hại do kẻ tấn công kiểm soát. Bản vá cho cả ba lỗ hổng đã được cung cấp vào thứ Tư.

Năm 2008, nhà nghiên cứu Dan Kaminsky đã tiết lộ một trong những mối đe dọa an ninh mạng nghiêm trọng nhất từ ​​trước đến nay. Được gọi là tấn công làm nhiễm độc bộ nhớ cache DNS, nó cho phép kẻ tấn công chuyển hướng người dùng hàng loạt đến các trang web giả mạo thay vì các trang web thực sự thuộc về Google, Bank of America hoặc bất kỳ ai khác. Với sự phối hợp trên toàn ngành, hàng nghìn nhà cung cấp DNS trên khắp thế giới—phối hợp với các nhà sản xuất trình duyệt và các ứng dụng khách khác—đã triển khai bản vá lỗi giúp ngăn chặn kịch bản thảm họa này.

Lỗ hổng này là do DNS sử dụng các gói tin UDP . Vì chúng chỉ được gửi theo một chiều, nên các trình phân giải DNS không thể sử dụng mật khẩu hoặc các hình thức xác thực khác khi giao tiếp với "máy chủ có thẩm quyền", tức là những máy chủ đã được chỉ định chính thức để cung cấp tra cứu địa chỉ IP cho một tên miền cấp cao nhất nhất định như .com. Hơn nữa, lưu lượng UDP thường rất dễ bị giả mạo, nghĩa là dễ dàng gửi các gói tin UDP có vẻ như đến từ một nguồn khác với nguồn gốc thực sự của chúng.

Để đảm bảo các trình phân giải chỉ chấp nhận kết quả từ các máy chủ có thẩm quyền và để chặn bất kỳ kết quả bị nhiễm độc nào có thể được gửi bởi các máy chủ trái phép, các trình phân giải đã gắn một số 16 bit vào mỗi yêu cầu. Kết quả từ máy chủ sẽ bị từ chối trừ khi chúng bao gồm cùng một ID.

Điều mà Kaminsky nhận ra là chỉ có 65.536 ID giao dịch khả thi. Kẻ tấn công có thể khai thác hạn chế này bằng cách làm quá tải máy chủ phân giải DNS với các kết quả tra cứu cho một tên miền cụ thể. Mỗi kết quả sẽ sử dụng một biến thể nhỏ trong tên miền, chẳng hạn như 1.arstechnica.com, 2.arstechnica.com, 3.arstechnica.com, v.v. Mỗi kết quả cũng sẽ bao gồm một ID giao dịch khác nhau. Cuối cùng, kẻ tấn công sẽ tạo ra số thứ tự chính xác của một yêu cầu đang chờ xử lý, và địa chỉ IP độc hại sẽ được cung cấp cho tất cả người dùng dựa vào máy chủ phân giải đã thực hiện yêu cầu đó. Cuộc tấn công này được gọi là đầu độc bộ nhớ cache DNS vì nó làm ô nhiễm kho lưu trữ các kết quả tra cứu của máy chủ phân giải.

Hệ sinh thái DNS cuối cùng đã khắc phục vấn đề bằng cách tăng theo cấp số nhân lượng entropy cần thiết để một phản hồi được chấp nhận. Trong khi trước đây, các yêu cầu tra cứu và phản hồi chỉ truyền qua cổng 53, hệ thống mới chọn ngẫu nhiên một trong hàng nghìn cổng tiềm năng. Để một trình phân giải DNS chấp nhận phản hồi, nó phải truyền qua cùng số cổng đó. Kết hợp với số giao dịch, entropy được đo bằng hàng tỷ, khiến cho việc kẻ tấn công tìm ra tổ hợp chính xác là bất khả thi về mặt toán học.

Ít nhất một trong các lỗ hổng bảo mật của BIND, CVE-2025-40780, làm suy yếu hiệu quả các biện pháp phòng thủ đó.

“Trong những trường hợp cụ thể, do điểm yếu trong Bộ tạo số ngẫu nhiên giả (PRNG) được sử dụng, kẻ tấn công có thể dự đoán được cổng nguồn và ID truy vấn mà BIND sẽ sử dụng,” các nhà phát triển BIND viết trong thông báo hôm thứ Tư. “BIND có thể bị đánh lừa để lưu trữ phản hồi của kẻ tấn công nếu việc giả mạo thành công.”

Lỗ hổng CVE-2025-40778 cũng làm dấy lên khả năng khôi phục các cuộc tấn công làm nhiễm độc bộ nhớ cache.

“Trong một số trường hợp nhất định, BIND quá dễ dãi khi chấp nhận các bản ghi từ câu trả lời, cho phép kẻ tấn công chèn dữ liệu giả mạo vào bộ nhớ cache,” các nhà phát triển giải thích. “Các bản ghi giả mạo có thể được chèn vào bộ nhớ cache trong quá trình truy vấn, điều này có khả năng ảnh hưởng đến việc giải quyết các truy vấn trong tương lai.”

Ngay cả trong những trường hợp như vậy, hậu quả cũng sẽ hạn chế hơn đáng kể so với kịch bản mà Kaminsky hình dung. Một lý do là bản thân các máy chủ có thẩm quyền không dễ bị tấn công. Hơn nữa, như Red Hat đã lưu ý ở đâyở đây , nhiều biện pháp chống lại việc đầu độc bộ nhớ cache khác vẫn còn nguyên vẹn. Chúng bao gồm DNSSEC, một biện pháp bảo vệ yêu cầu các bản ghi DNS phải được ký điện tử. Các biện pháp bổ sung bao gồm giới hạn tốc độ và tường lửa máy chủ, được coi là các biện pháp tốt nhất.

“Vì việc khai thác không hề đơn giản, đòi hỏi phải giả mạo ở cấp độ mạng và thời gian chính xác, đồng thời chỉ ảnh hưởng đến tính toàn vẹn của bộ nhớ cache mà không làm tổn hại đến máy chủ, nên lỗ hổng này được coi là Quan trọng hơn là Nghiêm trọng,” Red Hat viết trong thông báo về CVE-2025-40780.

Tuy nhiên, những lỗ hổng này vẫn có khả năng gây hại cho một số tổ chức. Cần cài đặt các bản vá cho cả ba lỗ hổng càng sớm càng tốt.

Tác giả dangkhoa Admin
Bài viết trước Cách đổi việc lương 214.000 USD trong lĩnh vực an ninh mạng lấy một chỗ ngồi trong tù

Cách đổi việc lương 214.000 USD trong lĩnh vực an ninh mạng lấy một chỗ ngồi trong tù

Bài viết tiếp theo

Microsoft Copilot nói nó có thể đặt lời nhắc — nhưng điện thoại tôi chẳng hề rung

Microsoft Copilot nói nó có thể đặt lời nhắc — nhưng điện thoại tôi chẳng hề rung
Viết bình luận
Thêm bình luận

Bài viết liên quan

Thông báo

0917111899