Microsoft vá lỗi không ‘chuẩn’ khiến RDP Client bên thứ 3 đứng trước nguy cơ bị tấn công

  • 17/05/2020
  • 10:26

Tấn công đảo ngược RDP (Reverse RDP Attack) có nguyên nhân từ lỗ hổng Path traversal (lỗ hổng cho phép hacker truy cập được các thư mục và tệp tài nguyên nằm ngoài thư mục hiện hành) có thể bị khai thác khi truy cập máy chủ từ xa thông qua giao thức RDP của Microsoft.
Mặc dù Microsoft đã vá lỗ hổng này (CVE-2019-0887) trong bản cập nhật tháng 7 năm 2019, nhưng hóa ra các nhà nghiên cứu vẫn có thể vượt qua (bypass) bản vá chỉ bằng cách thay thế dấu gạch chéo ngược trong đường dẫn bằng dấu gạch chéo xuôi.
Microsoft thừa nhận sửa lỗi không đúng cách và vá lại lỗ hổng (được gán mã CVE-2020-0655) trong bản cập nhật tháng 2 năm 2020.
Trong báo cáo mới nhất được chia sẻ với The Hacker News, nhà nghiên cứu từ Check Point tiết lộ rằng Microsoft đã giải quyết vấn đề bằng cách thêm một giải pháp tạm thời trong Windows, trong khi gốc rễ của vấn đề chưa được giải quyết và hàm API “PathCchCanonicalize” không thay đổi.

[​IMG] ​

Rõ ràng, cách giải quyết tạm thời này khá ổn đối với máy khách RDP tích hợp trong các hệ điều hành Windows, nhưng bản vá không đủ để bảo vệ các máy khách RDP của bên thứ ba
“Chúng tôi thấy rằng hacker không chỉ có thể vượt qua bản vá của Microsoft, mà còn có thể vượt qua mọi bước kiểm tra chuẩn hóa của Microsoft”, nhà nghiên cứu của Check Point Eyal cho biết trong một báo cáo được chia sẻ với The Hacker News.
Các cuộc tấn công path traversal xảy ra khi một chương trình chấp nhận file làm đầu vào mà không xác minh, điều này cho phép kẻ tấn công lưu tệp ở bất kỳ vị trí nào được chọn trên hệ thống đích và do đó làm lộ nội dung của tệp bên ngoài thư mục gốc của ứng dụng.
“Một máy tính bị nhiễm phần mềm độc hại từ xa có thể chiếm bất kỳ máy client nào cố gắng kết nối với nó. Ví dụ: nếu một nhân viên IT cố gắng kết nối từ xa với máy tính của công ty đã bị nhiễm phần mềm độc hại, phần mềm độc hại sẽ có thể tấn công tới máy tính của nhân viên đó”, các nhà nghiên cứu mô tả.
Lỗ hổng này đã được phát hiện vào năm ngoái và một nghiên cứu vào tháng 8 đã chỉ ra rằng nó cũng ảnh hưởng đến nền tảng ảo hóa phần cứng Hyper-V của Microsoft.
Lỗ hổng path traversal được vá không đúng cách
Theo các nhà nghiên cứu, bản vá Tháng 7 có thể bị qua mặt do một vấn đề nằm ở chức năng chuẩn hóa đường dẫn “PathCchCanonicalize”. Chức năng này vốn được sử dụng để làm sạch đường dẫn file, do đó cho phép hacker đồng bộ hóa clipboard giữa máy khách và máy chủ để thả các tệp tùy ý vào các đường dẫn tùy ý trên máy khách.
Nói cách khác, nếu tính năng chuyển hướng clipboard được sử dụng khi máy khách đang được kết nối với máy chủ RDP đã bị xâm nhập, máy chủ có thể sử dụng clipboard RDP được chia sẻ để gửi tệp đến máy tính của khách hàng và thực thi mã từ xa.
Mặc dù các nhà nghiên cứu của Check Point ban đầu xác nhận rằng “bản sửa lỗi phù hợp với mong đợi ban đầu của chúng tôi”, nhưng có vẻ như nó có nhiều vấn đề hơn: bản vá có thể bị qua mặt đơn giản bằng cách thay thế các dấu gạch chéo ngược (ví dụ: file \ to \ location) trong các đường dẫn bằng dấu gạch chéo (ví dụ: file / to / location)
“Có vẻ như PathCchCanonicalize, chức năng được đề cập trong hướng dẫn thực hành của Windows về cách chuẩn hóa đường dẫn, đã bỏ qua các ký tự gạch chéo về phía trước”, Itkin nói. “Chúng tôi đã xác minh bằng cách thực hiện kỹ thuật đảo ngược bản triển khai của Microsoft, và nhận thấy tính năng này phân chia đường dẫn thành cách phần khác nhau bằng cách tìm kiếm ‘\’ và bỏ qua ‘/’ “.
Các nhà nghiên cứu cho biết họ đã tìm thấy lỗ hổng khi thử kiểm tra máy khách Remote Desktop của Microsoft cho Mac. Đây cũng chính là máy khách RDP không được kiểm tra trong phân tích ban đầu của họ vào năm ngoái. Thật thú vị, bản thân máy khách macOS RDP không bị ảnh hưởng bởi CVE-2019-0887.
Với lỗ hổng chính vẫn chưa được khắc phục, Check Point cảnh báo rằng việc có thể dễ dàng vượt qua chức năng làm sạch đường dẫn của Windows đặt ra có nguy cơ nghiêm trọng đối với nhiều sản phẩm phần mềm khác.
“Chúng tôi muốn các nhà phát triển nhận thức được mối đe dọa này để cảnh giác với các chương trình của mình và tự áp dụng một bản vá”, Check Point khuyến cáo.

Theo: The Hacker News
  • Nguồn tin: