Lỗ hổng nghiêm trọng của VM2 cho phép kẻ tấn công chạy mã bên ngoài sandbox

9 tháng 2, 2023

Các nhà nghiên cứu đang cảnh báo về một lỗ hổng thực thi mã từ xa nghiêm trọng trong 'vm2', một thư viện sandbox JavaScript được tải xuống hơn 16 triệu lần mỗi tháng thông qua kho lưu trữ gói NPM.

Lỗ hổng vm2 được đặt là CVE-2022-36067 và nhận được xếp hạng mức độ nghiêm trọng là 10.0, điểm tối đa trong hệ thống CVSS, vì nó có thể cho phép những kẻ tấn công thoát khỏi môi trường sandbox và chạy lệnh trên hệ thống máy chủ.


Sandbox có nghĩa là một môi trường biệt lập được ngăn cách với phần còn lại của hệ điều hành. Tuy nhiên, vì các nhà phát triển thường sử dụng sandbox để chạy hoặc kiểm tra mã không an toàn tiềm ẩn, khả năng "thoát" khỏi môi trường hạn chế này và thực thi mã trên máy chủ là một vấn đề bảo mật lớn.


Thoát khỏi sandbox

Các nhà nghiên cứu bảo mật tại Oxeye đã tìm ra một cách thông minh để tùy chỉnh stack cuộc gọi của một lỗi xảy ra trong VM2 để tạo các đối tượng “CallSite” được tạo bên ngoài sandbox và sử dụng chúng để truy cập các đối tượng toàn cục của Node và thực thi các lệnh.


Trong khi các tác giả của thư viện đã cố gắng giảm thiểu khả năng này trong quá khứ, các nhà nghiên cứu của Oxeye đã tìm ra cách để vượt qua cơ chế giảm thiểu này bằng cách sử dụng triển khai tùy chỉnh của phương pháp "readyStackTrace".


Các nhà nghiên cứu giải thích trong báo cáo của họ: "POC của người báo cáo đã bỏ qua logic ở trên vì vm2 đã bỏ lỡ gói các phương pháp cụ thể liên quan đến kiểu tích hợp JavaScript" WeakMap "".


"Điều này cho phép kẻ tấn công cung cấp triển khai "prepareStackTrace," của riêng họ, sau đó kích hoạt lỗi và thoát khỏi sandbox."


Quá trình thoát sandbox

(Oxeye)


Các nhà phân tích nhận thấy rằng cũng có thể ghi đè đối tượng Lỗi chung bằng một đối tượng tùy chỉnh triển khai chức năng “readyStackTrace”, truy cập lại các đối tượng “CallSite” được tạo bên ngoài sandbox và chạy các lệnh trong quy trình hiện tại.



Ghi đè đối tượng Lỗi và truy cập các đối tượng CallSite (Oxeye)


Cập nhật càng sớm càng tốt

Nhóm nghiên cứu của Oxeye đã phát hiện ra vấn đề nghiêm trọng này vào ngày 16 tháng 8 năm 2022 và báo cáo nó với nhóm VM2 vài ngày sau đó, họ xác nhận rằng họ đã mở một cuộc điều tra.


Cuối cùng, các tác giả của thư viện phổ biến đã phát hành phiên bản 3.9.11 vào ngày 28 tháng 8 năm 2022, giải quyết vấn đề thoát khỏi sandbox và thực thi mã.


Các nhà phát triển phần mềm được khuyến khích cập nhật lên phiên bản VM2 mới nhất và thay thế các bản phát hành cũ hơn trong các dự án của họ càng sớm càng tốt.


Đối với người dùng cuối, điều quan trọng cần lưu ý là có thể mất một khoảng thời gian trước khi các công cụ phần mềm ảo hóa dựa trên VM2 áp dụng bản cập nhật bảo mật có sẵn.


Như chúng ta đã thấy với Log4Shell, một vấn đề bảo mật nghiêm trọng trong thư viện mã nguồn mở được triển khai rộng rãi có thể tồn tại trong thời gian dài mà người dùng không bị ảnh hưởng dù biết rằng họ dễ bị tấn công do chuỗi cung ứng bị che khuất.


Nếu bạn sử dụng giải pháp sandbox, hãy kiểm tra xem nó có dựa trên VM2 hay không và liệu nó có đang sử dụng phiên bản mới nhất hay không.


Nguồn: BleepingComputer.com

Bạn cũng có thể quan tâm

4 tháng 6, 2024
Bộ định tuyến chơi game TP-Link Archer C5400X dễ mắc phải các lỗi bảo mật có thể cho phép kẻ tấn công từ xa, không được xác thực thực thi các lệnh trên thiết bị.
3 tháng 6, 2024
Ngày 27 tháng 5 Check Point đã cảnh báo rằng các tác nhân đe dọa đang nhắm mục tiêu vào các thiết bị VPN truy cập từ xa của Check Point trong một chiến dịch đang diễn ra nhằm xâm phạm mạng doanh nghiệp.
31 tháng 5, 2024
Công ty quản lý đơn thuốc Sav-Rx cảnh báo hơn 2,8 triệu cá nhân ở Hoa Kỳ việc họ đã bị vi phạm dữ liệu và dữ liệu cá nhân của họ đã bị đánh cắp trong một cuộc tấn công mạng năm 2023.
Thêm bài viết
Share by: