Mã khai thác cho lỗ hổng nghiêm trọng trên Windows vừa được công bố

09:15 | 15/06/2021

Mã khai thác cho lỗ hổng CVE-2021-31166 vừa được công bố, với mức độ nghiêm trọng theo thang điểm CVSS là 9,8, đây là lỗ hổng nghiêm trọng nhất trong bản vá lỗ hổng bảo mật của Microsoft trong tháng 5.

Một nhà nghiên cứu đã phát hành một mã khai thác cho CVE-2021-31166, một lỗ hổng nghiêm trọng dạng use-after-free trong chồng giao thức HTTP (http.sys), có thể dẫn đến thực thi mã từ xa (Remote Code Execution - RCE) và sử dụng để tấn công trên diện rộng.

Microsoft đã phát hiện ra lỗ hổng và phát hành một bản vá trong bản cập nhật patch tuesday tháng 5/2021. Đây là lỗ hổng nghiêm trọng xảy ra trên http.sys, không yêu cầu xác thực cũng như tương tác của người dùng để khai thác. Việc khai thác sẽ cho phép RCE với các đặc quyền cao nhất hoặc một cuộc tấn công từ chối dịch vụ (DoS).

Thư viện http.sys cho phép Windows và các ứng dụng giao tiếp với các thiết bị khác. Nó có thể được chạy độc lập hoặc kết hợp với dịch vụ thông tin Internet (IIS). Theo một tweet từ Justin Campbell của Microsoft, lỗ hổng bảo mật được tìm thấy bởi @_mxms và @ fzzyhd1.
 


Bài tweet của người phát hiện ra lỗ hổng

Tư vấn từ phía nhà phát hành Microsoft

Do lỗ hổng bảo mật có thể bị lợi dụng để tấn công diện rộng, Microsoft khuyến nghị nên ưu tiên vá các máy chủ bị ảnh hưởng. Chuyên gia của công ty bảo mật McAfee, Povolny giải thích rằng vấn đề nằm ở cách Windows theo dõi các bản ghi con trỏ không đúng cách trong khi xử lý các đối tượng trong gói mạng chứa các yêu cầu HTTP. Lỗ hổng này chỉ ảnh hưởng đến các phiên bản mới nhất của Windows 10 và Windows Server, có nghĩa là phạm vi ảnh hưởng đã hạn chế hơn rất nhiều và chúng ta sẽ không phải chịu thiệt hại lớn như WannaCry lần thứ hai.

Mã khai thác cho lỗ hổng được công khai trên Github

Nhà nghiên cứu Axel Souchet, người từng làm việc cho Microsoft, đã công bố mã khai thác lên GitHub và lưu ý rằng lỗi xảy ra trong http! UlpParseContentCoding, nơi có hàm LIST_ENTRY và gắn một mục vào nó. 
Đây không phải là mã khai thác đầu tiên cho CVE-2021-31166 mà Souchet đã phát hành, nhưng đây là mã khai thác có thể sử dụng cho tấn công diện rộng đầu tiên. Cùng với đó, Axel Souchet đã phát hành một PoC chỉ khóa hệ thống Windows bị ảnh hưởng chỉ cần nó đang chạy máy chủ IIS. Khai thác ban đầu đó cho thấy kẻ tấn công có thể tận dụng lỗ hổng để gây ra tấn công từ chối dịch vụ trên một hệ thống được nhắm mục tiêu bằng cách gửi các gói được chế tạo đặc biệt.
 


Vòng đời của mã khai thác

Việc xuất bản các mã chứng minh thường là bước đầu tiên trong vòng đời của một mã khai thác. Theo giải thích từ chuyên gia Mayra Rosario Fuentes của Trend Micro tại Hội nghị RSA 2021 vào ngày 17/05/2021, bước tiếp theo trong vòng đời đó là tin tặc bán mã khai thác hoàn chỉnh trên chợ đen cho những người cần chúng. Từ đó, được tích hợp vào các mã độc hại để phát tán nhanh hơn. Vòng đời của mã khai thác dừng lại khi tất cả các hệ thống đã cập nhật bản vá.

Một ví dụ về mã khai thác của CVE-2020-9054: được bán trên chợ đen với giá 20,000 USD vào tháng 2/2020. Lỗ hổng sau đó được cảnh báo bởi một nhà báo chuyên viết về an ninh mạng là Brian Krebs, Microsoft đã vá lỗ hổng này vào tháng 3/2020. Một tháng sau đó thì mạng botnet có tên là Mukashi (thuộc dòng Mirai botnet) đã sử dụng lỗ hổng này để nhắm tấn công vào thiết bị lưu trữ từ xa Zyxel, mà cho phép tội phạm điều khiển được thiết bị.

Sau đó, tháng 8/2020, một bài đăng trên diễn đàn khác đã yêu cầu mua mã khai thác, đưa ra giá công khai là 2.000 USD, bằng một phần mười so với lần khai thác đầu tiên. Tuy nhiên, một số lỗ hổng bảo mật có thời hạn sử dụng lâu dài, đặc biệt nếu chúng được sử dụng để bẻ khóa các sản phẩm của Microsoft. Xét cho cùng, các khai thác cho các sản phẩm của Microsoft vẫn là những khai thác được yêu cầu nhiều nhất và được bán nhiều nhất trên thị trường ngầm. Người dùng hãy cập nhật hệ thống sớm nhất khi có thể, trước khi lỗ hổng này được tận dụng bởi các mạng mã độc như Mirai...