WhiteHat News #ID:2017
VIP Members
-
20/03/2017
-
113
-
356 bài viết
Cập nhật ngay bản vá lỗ hổng RCE nghiêm trọng trong Microsoft DNS Server
Trong bản vá định kỳ Patch Tuesday tháng 3/2021, Microsoft đã phát hành bản cập nhật cho 7 lỗ hổng DNS, trong đó có 5 lỗ hổng thực thi mã từ xa (RCE) với điểm CVSS là 9.8, 2 lỗ hổng từ chối dịch vụ (DoS).
Microsoft đã cung cấp hướng dẫn phát hiện và PoC hai lỗ hổng RCE (CVE-2021-26877 và CVE-2021-2689) tới các thành viên của chương trình MAPP. Hãng này sau đó xác nhận tất cả bảy lỗ hổng DNS bắt nguồn từ tính năng DNS Dynamic Update cho các zone.
Điểm CVSS 9.8 cho thấy kẻ tấn công có thể xâm nhập từ xa máy chủ DNS mà không cần xác thực hoặc bất kỳ tương tác nào với người dùng. Khai thác thành công, tin tặc có thể thực hiện tấn công RCE trên máy chủ Primary Authoritative DNS.
Lỗ hổng thực thi mã từ xa (RCE)
CVE-2021-26877, CVE-2021-26897 (nhiều khả năng bị khai thác)
CVE-2021-26893, CVE-2021-26894, CVE-2021-26895 (ít khả năng bị khai thác)
Lỗ hổng DoS
CVE-2021-26896, CVE-2021-27063 (ít khả năng bị khai thác)
Các sản phẩm bị ảnh hưởng:
Điều kiện khai thác
Các nhà nghiên cứu của công ty an ninh mạng McAfee cho biết các lỗ hổng trên vẫn chưa bị khai thác trong thực tế.
Theo “Hướng dẫn triển khai hệ thống tên miền (DNS) an toàn” của Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ (NIST), các mối đe dọa tấn công vào DNS chia thành 2 nhóm là từ nền tảng và từ transaction. Nguy cơ nền tảng bao gồm từ DNS Host hoặc từ phần mềm DNS. Theo bảng dưới đây, Dynamic Update là một trong bốn loại DNS transaction. Bảy lỗ hổng DNS trong bản vá lần này đều bắt nguồn tính năng Dynamic Update DNS của Phần mềm Windows DNS.
Phân tích lỗ hổng CVE-2021-26877
Khai thác lỗ hổng khi cập nhật Zone bằng TXT RR khi “TXT Length” lớn hơn “Data length” trên mỗi gói tin như dưới đây:
Lỗ hổng nằm trong hàm File_PlaceStringInFileBuffer ():
Đây là lỗ hổng đọc dữ liệu ngoài vùng bộ nhớ (Out of bounds (OOB) khi trường “TXT length” của DNS Dynamic Zone Update không bằng với “Data length”. Điều này có thể cho phép kẻ tấn công đọc tới 255 byte bộ nhớ. Theo Microsoft, lỗ hổng này có thể bị khai thác để tấn công RCE.
Bộ nhớ liên quan đến lỗ hổng OOB được tạo trong hàm CopyWireRead ().
Phân tích lỗ hổng CVE-2021-26897
Kẻ tấn công gửi liên tiếp nhiều Bản cập nhật Signature RRs Dynamic để triển khai việc tấn công
Đây là lỗ hổng ghi đè lên bộ nhớ (OOB) khi kết hợp nhiều Bản cập nhật Signature RRs Dynamic liên tiếp thành các chuỗi mã hóa base64 trước khi ghi vào tệp Zone
Khả năng khai thác
Để khai thác từ xa các lỗ hổng, tin tặc phải có quyền đọc và ghi bộ nhớ, đồng thời phải vượt qua được tính năng bảo mật Control Flow Guard (CFG).
Hình 4: Đường dẫn Gói cập nhật DNS RR
Hình 5: Các hàm đọc và ghi
Biện pháp khắc phục
Theo thống kê của WhiteHat, tại Việt Nam hiện có khoảng 2.500 IP đang sử dụng dịch vụ Windows DNS Server của Microsoft.
Cập nhật bản vá ngay là biện pháp hiệu quả nhất. Nếu không thể vá, cách tốt nhất là kiểm tra cấu hình triển khai DNS và giới hạn chỉ áp dụng tính năng Dynamic Zone Updates cho các máy chủ đã xác thực.
Link cập nhật bản vá
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26897
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26895
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26894
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26893
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26877
Ngoài ra, theo “Hướng dẫn triển khai Hệ thống Tên miền (DNS) Bảo mật” của NIST, thực hiện các bước sau đây để đảm bảo an toàn cho việc triển khai DNS:
1. Máy chủ DNS chính hạn chế phân quyền các máy khách có thể cập nhật RR
2. Cập nhật động an toàn bằng GSS-TSIG
3. Hạn chế chuyển tiếp DNS Server Dynamic Update phụ sử dụng GSS-TSIG
4. Hạn chế Dynamic Updatebằng GSS-TSIG
Chi tiết phân tích các lỗ hổng, các bạn có thể theo dõi tại bài phân tích của McAfee
Điểm CVSS 9.8 cho thấy kẻ tấn công có thể xâm nhập từ xa máy chủ DNS mà không cần xác thực hoặc bất kỳ tương tác nào với người dùng. Khai thác thành công, tin tặc có thể thực hiện tấn công RCE trên máy chủ Primary Authoritative DNS.
Lỗ hổng thực thi mã từ xa (RCE)
CVE-2021-26877, CVE-2021-26897 (nhiều khả năng bị khai thác)
CVE-2021-26893, CVE-2021-26894, CVE-2021-26895 (ít khả năng bị khai thác)
Lỗ hổng DoS
CVE-2021-26896, CVE-2021-27063 (ít khả năng bị khai thác)
Các sản phẩm bị ảnh hưởng:
- Windows Server 2016
- Windows Server 2019
- Windows Server 2012 (bao gồm R2)
- Windows Server 2008 (bao gồm R2, R2 SP1 và R2 SP2)
- Windows Server, phiên bản 2004
- Windows Server, phiên bản 1909
- Windows Server, phiên bản 20H2
Điều kiện khai thác
- DNS Dynamic Updates tích hợp AD - Active Directory (cấu hình mặc định các bản cập nhật bảo mật)
o Máy chủ DNS chấp thuận các truy vấn ghi dữ liệu vào ít nhất một Zone
o Máy join vào domain
o Kẻ tấn công phải gửi truy vấn tới máy chủ DNS và cung cấp một Zone mục tiêu theo yêu cầu
o Máy join vào domain
o Kẻ tấn công phải gửi truy vấn tới máy chủ DNS và cung cấp một Zone mục tiêu theo yêu cầu
- Máy chủ DNS độc lập (cấu hình an toàn/không an toàn)
o Máy chủ DNS chấp thuận các truy vấn ghi dữ liệu vào ít nhất một Zone
o Kẻ tấn công phải gửi truy vấn tới máy chủ DNS và cung cấp một Zone mục tiêu theo yêu cầu
o Kẻ tấn công phải gửi truy vấn tới máy chủ DNS và cung cấp một Zone mục tiêu theo yêu cầu
Các nhà nghiên cứu của công ty an ninh mạng McAfee cho biết các lỗ hổng trên vẫn chưa bị khai thác trong thực tế.
Theo “Hướng dẫn triển khai hệ thống tên miền (DNS) an toàn” của Viện Tiêu chuẩn và Công nghệ Quốc gia Mỹ (NIST), các mối đe dọa tấn công vào DNS chia thành 2 nhóm là từ nền tảng và từ transaction. Nguy cơ nền tảng bao gồm từ DNS Host hoặc từ phần mềm DNS. Theo bảng dưới đây, Dynamic Update là một trong bốn loại DNS transaction. Bảy lỗ hổng DNS trong bản vá lần này đều bắt nguồn tính năng Dynamic Update DNS của Phần mềm Windows DNS.
Khai thác lỗ hổng khi cập nhật Zone bằng TXT RR khi “TXT Length” lớn hơn “Data length” trên mỗi gói tin như dưới đây:
Bộ nhớ liên quan đến lỗ hổng OOB được tạo trong hàm CopyWireRead ().
Phân tích lỗ hổng CVE-2021-26897
Kẻ tấn công gửi liên tiếp nhiều Bản cập nhật Signature RRs Dynamic để triển khai việc tấn công
Đây là lỗ hổng ghi đè lên bộ nhớ (OOB) khi kết hợp nhiều Bản cập nhật Signature RRs Dynamic liên tiếp thành các chuỗi mã hóa base64 trước khi ghi vào tệp Zone
Để khai thác từ xa các lỗ hổng, tin tặc phải có quyền đọc và ghi bộ nhớ, đồng thời phải vượt qua được tính năng bảo mật Control Flow Guard (CFG).
Hình 4: Đường dẫn Gói cập nhật DNS RR
Hình 5: Các hàm đọc và ghi
Biện pháp khắc phục
Theo thống kê của WhiteHat, tại Việt Nam hiện có khoảng 2.500 IP đang sử dụng dịch vụ Windows DNS Server của Microsoft.
Cập nhật bản vá ngay là biện pháp hiệu quả nhất. Nếu không thể vá, cách tốt nhất là kiểm tra cấu hình triển khai DNS và giới hạn chỉ áp dụng tính năng Dynamic Zone Updates cho các máy chủ đã xác thực.
Link cập nhật bản vá
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26897
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26895
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26894
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26893
https://msrc.microsoft.com/update-guide/vulnerability/CVE-2021-26877
Ngoài ra, theo “Hướng dẫn triển khai Hệ thống Tên miền (DNS) Bảo mật” của NIST, thực hiện các bước sau đây để đảm bảo an toàn cho việc triển khai DNS:
1. Máy chủ DNS chính hạn chế phân quyền các máy khách có thể cập nhật RR
2. Cập nhật động an toàn bằng GSS-TSIG
3. Hạn chế chuyển tiếp DNS Server Dynamic Update phụ sử dụng GSS-TSIG
4. Hạn chế Dynamic Updatebằng GSS-TSIG
Chi tiết phân tích các lỗ hổng, các bạn có thể theo dõi tại bài phân tích của McAfee