Update 16h20 14/4/2022: Việt Nam đã có nạn nhân đầu tiên
Đầu ngày 14/4, nhiều khách hàng sử dụng sản phẩm phần mềm của công ty MISA đã bị tấn công mã hóa dữ liệu (ransomware). Chỉ những máy tính chạy Windows mới bị tấn công còn máy chạy macOS và Linux... không gặp vấn đề gì.
Trên nhiều diễn đàn, một số chuyên gia cho rằng sự cố với phần mềm MISA có thể liên quan tới lỗ hổng CVE-2022-26809 mà Microsoft vừa công bố.
Thông báo về lỗ hổng bảo mật của MISA
Sau khi nhận được báo cáo và tiến hành phân tích, phía MISA cho biết các máy tính chạy hệ điều hành Windows bị tấn công qua lỗ hổng CVE-2022-26809.
"Lỗ hổng này ảnh hưởng tới tất cả các phần mềm, ứng dụng được cài đặt trên máy tính chứ không chỉ riêng phần mềm của MISA", phía MISA chia sẻ trong khuyến cáo gửi cho khách hàng.
MISA khuyến khích khách hàng thực hiện các biện pháp phòng ngừa như sau:
- Không public trực tiếp máy chủ cài phần mềm MISA ra ngoài Internet để truy cập từ xa, nếu có nhu cầu kết nối Online thì sử dụng giải pháp kế toán Online của MISA.
- Cài đặt hệ điều hành Windows bản quyền và cập nhật bản vá mới nhất càng sớm càng tốt.
- Cài đặt và cập nhật các phần mềm chống virus đầy đủ.
- Sao lưu dữ liệu định kỳ hàng ngày và đưa lên các dịch vụ Cloud.
- Chỉ cập nhật phần mềm MISA tại các link chính thức của MISA.
- MISA sẽ phối hợp với các chuyên gia để cố gắng trợ giúp khách hàng bảo vệ dữ liệu trước đợt tấn công này.
Chi tiết về lỗ hổng CVE-2022-26809 mời các bạn đọc trong phần bài viết bên dưới:
Microsoft vừa tung ra bản cập nhật Patch Tuesday tháng 4/2022 để vá hơn 100 lỗ hổng bảo mật khác nhau. Ba lỗ hổng nghiêm trọng nhất vừa được vá nằm trong Windows RPC (Remote Procedure Call) runtime.
- CVE-2022-24492 và CVE-2022-24528 (được phát hiện bởi Yuki Chen với Cyber KunLun)
- CVE-2022-26809 (được phát hiện bởi BugHunter010 với Kunlun)
Trong bài viết này, Quản Trị Mạng sẽ cung cấp thông tin về ba lỗ hổng, hậu quả nếu chúng bị khai thác, phạm vi ảnh hưởng và cách giảm thiểu thiệt hại.
Tổng quan về 3 lỗ hổng
Ba lỗ hổng này cho phép hacker tấn công từ xa mà không cần xác thực. Chúng có thể thực thi code tùy ý trên máy của nạn nhân bằng đặc quyền của dịch vụ RPC, thứ phụ thuộc vào quá trình hosting RPC runtime. Những lỗ hổng này có thể bị khai thác cả từ bên ngoài lẫn giữa các máy với nhau trong mạng, di chuyển theo chiều ngang.
CVE-2022-26809 | CVE-2022-24492 | CVE-2022-24528 | |
Mức độ nguy hiểm (theo thang CVSS) | 9.8 | 8.8 | 8.8 |
Cần sự tương tác của người dùng không? | Không | Có | Có |
Máy chủ/Máy khách | Máy chủ | Máy khách | Máy khách |
Khả năng bị khai thác | Cao | Thấp | Thấp |
Như bạn thấy trong bảng trên, CVE-2022-26809 là một lỗ hổng zero-click, không cần sự tương tác của người dùng vẫn khai thác được. Vì lý do này, thang độ nguy hiểm của nó là 9.8. Đây là một lỗ hổng vô cùng nghiêm trọng và có khả năng bị hacker khai thác rất cao.
Ai có thể trở thành nạn nhân?
Bất kỳ ai sở hữu máy tính Windows có cổng 445 bị lộ và thư viện RPC runtime chưa được vá lỗi đều dễ bị tấn công. Theo Shodan, hơn 700.000 máy tính Windows đang sử dụng cổng 445 trên internet. Theo Microsoft, các máy chủ lắng nghe trên cổng TCP này cũng có khả năng bị tấn công.
Định vị và hiểu về các lỗ hổng
CVE cho biết các lỗ hổng này nằm trong Windows RPC runtime, được triển khai trong thư viện có tên rcprt4.dll. Thư viện runtime này được tải vào cả quy trình máy khách và máy chủ sử dụng giao thức RPC để giao tiếp.
So sánh phiên bản 10.0.2200.434 (chưa được vá từ tháng 3) và 10.0.2200.613 (đã được vá từ tháng 4) chúng ta có danh sách các thay đổi sau trong nhiều hàm khác nhau:
Hãy chú ý tới các hàm OSF_CCALL::ProcessResponse và OSF_SCALL::ProcessReceivedPDU. Hai hàm này giống nhau về bản chất khi cùng xử lý các gói RPC nhưng một gói chạy ở phía máy khách và gói kia chạy ở phía máy chủ (CCALL và SCALL lần lượt là viết tắt của lệnh gọi hàm ở máy khách và máy chủ). Khi xem xét sự khác biệt của OSF_SCALL::ProcessReceivedPDU bạn sẽ thấy hai khối code đã được thêm vào phiên bản mới.
Nhìn vào code đã được vá, chúng ta thấy rằng một hàm mới đã được gọi sau QUEUE::PutOnQueue. Xem chi tiết hàm mới và kiểm tra code của nó chúng ta thấy rằng nó sẽ kiểm tra lỗi tràn số nguyên. Cụ thể là hàm mới đã được thêm vào để xác minh rằng một biến số nguyên vẫn nằm trong phạm vi giá trị mong đợi.
Tìm hiểu sâu hơn về code lúc chưa được vá trong OSF_SCALL:GetCoalescedBuffer, các bạn có thể thấy lỗi tràn số nguyên có thể dẫn tới tràn bộ nhớ đệm heap, khi đó dữ liệu được sao chép vào bộ nhớ đệm quá nhỏ để điền vào. Vì thế, dữ liệu được ghi ra ngoài giới hạn của bộ đệm, trên heap. Khi được khai thác đúng cách, lỗi này có thể dẫn dến việc thực thi code từ xa.
Một lệnh tương tự cũng được thêm vào các hàm khác để kiểm tra tràn số nguyên:
- OSF_CCALL::ProcessResponse
- OSF_SCALL::GetCoalescedBuffer
- OSF_CCALL::GetCoalescedBuffer
Lỗ hổng tràn số nguyên và chức năng ngăn chặn nó tồn tại trong cả luồng thực thi phía máy khách và phía máy chủ.
Cách giảm thiểu
Dựa trên thông báo của Microsoft và các đơn vị bảo mật khác, Quản Trị Mạng khuyến cáo bạn nên thực hiện các biện pháp sau để đảm bảo an toàn:
- Cài đặt các bản cập nhật mới nhất để vá các lỗ hổng bảo mật kể trên.
- Mặc dù RPC cần thiết cho các dịch vụ được sử dụng bởi hệ thống nhưng giải pháp tốt nhất là chặn cổng TCP 445 tại tường lửa theo chu vi doanh nghiệp. Điều này sẽ ngăn các thiết bị bên ngoài tường lửa truy cập vào và khai thác lỗ hổng từ đó bảo vệ mạng doanh nghiệp khỏi các cuộc tấn công bắt nguồn từ bên ngoài.
- Hạn chế dịch chuyển ngang hàng bằng cách chỉ cho phép cổng TCP 445 đến trên các máy cần thiết như domain controller, máy chủ in ấn, máy chủ tệp... Điều này sẽ giúp hạn chế các cuộc tấn công từ bên trong doanh nghiệp.
- Bảo mật lưu lượng SMB.
Hiện tại, hacker đang ráo riết tìm cách khai thác những lỗ hổng trên nên các bạn cần cập nhật bản vá Patch Tuesday tháng 4/2022 càng sớm càng tốt.