Lỗ hổng nghiêm trọng CVE-2023-30547 cho phép kẻ tấn công thực thi mã tùy ý

16:31 | 26/04/2023
M.H

Mới đây, một lỗ hổng bảo mật nghiêm trọng đã được phát hiện trong sandbox JavaScript vm2 phổ biến, được sử dụng để chạy mã không tin cậy trong môi trường cô lập trên Node.js. Với gần 4 triệu lượt tải xuống hàng tuần và được tích hợp vào 721 package, lỗ hổng này có thể ảnh hưởng đến một số lượng lớn các nhà phát triển và ứng dụng.

Cụ thể, lỗ hổng nghiêm trọng có định danh CVE-2023-30547 (điểm CVSS 9,8) có thể cho phép tin tặc thực thi shellcode tùy ý. Sau khi được báo cáo các nhà quản trị của vm2 đã nhanh chóng phát hành một bản vá với phiên bản 3.9.17. Lỗ hổng ảnh hưởng đến tất cả các phiên bản vm2 từ 3.9.16 trở về trước và không có cách giảm thiểu.

CVE-2023-30547 nằm trong quá trình xử lý ngoại lệ (exception sanitization) của vm2. Tin tặc đã tạo ra một tình huống không bình thường để dẫn luồng thực thi vào phần ngoại lệ. Khi hàm handleException tiến hành xử lý sẽ dẫn đến lỗi cho phép tin tặc vượt qua sandbox và thực thi mã tùy ý trong môi trường máy chủ. Hiện PoC của lỗ hổng đã được công bố.

Trước đó, hai lỗ hổng nghiêm trọng khác là CVE-2023-29017 (điểm CVSS 10) có thể cho phép tin tặc thực thi mã từ xa và CVE-2023-29199 (điểm CVSS 9,8) cho phép tin tặc qua mặt được cơ chế bảo vệ của sandbox để thực thi mã tùy ý trên hệ thống cũng đã được phát hiện trong sandbox của vm2.

Cả ba lỗ hổng đều được đánh giá mực độ nghiêm trọng và không có biện pháp giảm thiểu. Các chuyên gia khuyến cáo các nhà phát triển và quản trị ứng dụng cần nhanh chóng cập nhật lên phiên bản mới nhất để tránh các rủi ro đáng tiếc.