Một lỗ hổng bảo mật nghiêm trọng trong Laravel, một framework phát triển ứng dụng web phổ biến, cho phép kẻ tấn công truy cập trái phép vào hàng triệu ứng dụng sử dụng Laravel, giả mạo dữ liệu và leo thang đặc quyền.
Lỗ hổng CVE-2024-52301 (CVSS: 8.7) liên quan đến việc xác thực đầu vào không đúng, cụ thể là liên quan đến cách Laravel xử lý cấu hình môi trường. Vấn đề chính nằm ở lệnh register_argc_argv của PHP, cho phép xử lý các đối số dòng lệnh trong các script. Nếu chỉ thị này được bật, kẻ tấn công có thể điều khiển Laravel thông qua các URL do chúng tạo ra, dẫn đến việc thay đổi các environment variables mà Laravel sử dụng để xử lý yêu cầu.
Sự thiếu sót trong xác thực này tạo cơ hội cho kẻ tấn công bỏ qua các kiểm tra đầu vào hoặc chèn dữ liệu độc hại. Khi register_argc_argv được bật, các ứng dụng Laravel gặp rủi ro cao hơn, vì kẻ tấn công có thể lợi dụng hành vi mặc định của PHP để chiếm quyền kiểm soát application environments.
Lỗ hổng ảnh hưởng đến nhiều phiên bản của Laravel, bao gồm:
- Phiên bản < 6.20.45
- Phiên bản >= 7.0.0 và < 7.30.7
- Phiên bản >= 8.0.0 và < 8.83.28
- Phiên bản >= 9.0.0 và < 9.52.17
- Phiên bản >= 10.0.0 và < 10.48.23
- Phiên bản >= 11.0.0 và < 11.31.0
Các tổ chức sử dụng những phiên bản Laravel này đang đối mặt với nguy cơ cao, vì kẻ tấn công có thể khai thác lỗ hổng này để leo thang đặc quyền, truy cập dữ liệu nhạy cảm và thậm chí chèn mã độc.
Để khắc phục lỗ hổng CVE-2024-52301, Laravel đã phát hành bản vá cho các phiên bản bị ảnh hưởng, cụ thể bao gồm các phiên bản sau:
- 6.20.45
- 7.30.7
- 8.83.28
- 9.52.17
- 10.48.23
- 11.31.0
Các nhà phát triển được khuyến nghị nâng cấp ngay lên các phiên bản đã vá này để bảo vệ ứng dụng của họ khỏi các mối đe dọa.
Nguồn: Security Online