-
09/04/2020
-
122
-
1.274 bài viết
Lỗ hổng nghiêm trọng trong Apache Causeway cho phép thực thi mã từ xa
Một lỗ hổng nghiêm trọng vừa được phát hiện trong Apache Causeway, nền tảng được nhiều doanh nghiệp sử dụng để phát triển các ứng dụng Java theo mô hình domain-driven. Lỗ hổng mang mã định danh CVE-2025-64408 cho phép người dùng đã xác thực thực thi mã tùy ý trong môi trường ứng dụng, đặt các hệ thống đang vận hành Causeway vào tình thế có thể bị kiểm soát hoàn toàn nếu bị khai thác thành công.
Theo thông báo từ nhóm phát triển Apache Causeway, CVE-2025-64408 ảnh hưởng đến toàn bộ các ứng dụng xây dựng trên Causeway từ phiên bản 2.0.0 đến 3.4.0, cũng như bản phát hành 4.0.0-M1. Những phiên bản này đều sử dụng ViewModel, thành phần cho phép Causeway tự động tạo giao diện web và REST API dựa trên logic nghiệp vụ. Tuy nhiên, chính ViewModel trở thành điểm yếu khi dữ liệu tuần tự hóa của nó được đưa trực tiếp vào URL và có thể bị người dùng chỉnh sửa.
Lỗ hổng xuất phát từ cơ chế giải tuần tự hóa trong Java, vốn là một điểm yếu được biết đến rộng rãi vì khả năng biến dữ liệu đầu vào tưởng như vô hại thành đối tượng có thể kích hoạt hành vi nguy hiểm. Trong Causeway, dữ liệu tuần tự hóa trong URL được ứng dụng giải tuần tự hóa khi người dùng truy cập, dẫn đến việc tái tạo toàn bộ cấu trúc đối tượng. Nếu đối tượng này chứa hàm khởi tạo hoặc phương thức tự động thực thi, kẻ tấn công có thể chèn payload độc hại để buộc hệ thống chạy mã với quyền của tiến trình Java đang vận hành.
Dù việc khai thác yêu cầu người tấn công phải có tài khoản hợp lệ, rủi ro vẫn rất nghiêm trọng. Một tài khoản bị lộ, thông tin đăng nhập bị đánh cắp hoặc người dùng nội bộ có ý đồ xấu đều có thể chỉnh sửa tham số URL để khai thác lỗ hổng. Trong nhiều trường hợp, quyền vận hành của ứng dụng Java đủ lớn để mở rộng tấn công sang cơ sở dữ liệu hoặc các dịch vụ nội bộ kết nối phía sau.
Để xử lý triệt để vấn đề, nhóm phát triển Apache Causeway đã phát hành phiên bản 3.5.0. Bản cập nhật này thay đổi cách ViewModel được xử lý, loại bỏ các điểm giải tuần tự hóa dễ bị lợi dụng và bổ sung cơ chế kiểm soát chặt chẽ hơn đối với dữ liệu tuần tự hóa. Các tổ chức sử dụng Causeway được khuyến nghị nâng cấp ngay lập tức, đồng thời rà soát nhật ký truy cập để phát hiện các yêu cầu bất thường liên quan đến ViewModel. Việc hạn chế quyền người dùng và kiểm tra các thành phần phụ thuộc vào tuần tự hóa/giải tuần tự hóa cũng là bước cần thiết để giảm thiểu nguy cơ tái diễn.
Theo thông báo từ nhóm phát triển Apache Causeway, CVE-2025-64408 ảnh hưởng đến toàn bộ các ứng dụng xây dựng trên Causeway từ phiên bản 2.0.0 đến 3.4.0, cũng như bản phát hành 4.0.0-M1. Những phiên bản này đều sử dụng ViewModel, thành phần cho phép Causeway tự động tạo giao diện web và REST API dựa trên logic nghiệp vụ. Tuy nhiên, chính ViewModel trở thành điểm yếu khi dữ liệu tuần tự hóa của nó được đưa trực tiếp vào URL và có thể bị người dùng chỉnh sửa.
Lỗ hổng xuất phát từ cơ chế giải tuần tự hóa trong Java, vốn là một điểm yếu được biết đến rộng rãi vì khả năng biến dữ liệu đầu vào tưởng như vô hại thành đối tượng có thể kích hoạt hành vi nguy hiểm. Trong Causeway, dữ liệu tuần tự hóa trong URL được ứng dụng giải tuần tự hóa khi người dùng truy cập, dẫn đến việc tái tạo toàn bộ cấu trúc đối tượng. Nếu đối tượng này chứa hàm khởi tạo hoặc phương thức tự động thực thi, kẻ tấn công có thể chèn payload độc hại để buộc hệ thống chạy mã với quyền của tiến trình Java đang vận hành.
Dù việc khai thác yêu cầu người tấn công phải có tài khoản hợp lệ, rủi ro vẫn rất nghiêm trọng. Một tài khoản bị lộ, thông tin đăng nhập bị đánh cắp hoặc người dùng nội bộ có ý đồ xấu đều có thể chỉnh sửa tham số URL để khai thác lỗ hổng. Trong nhiều trường hợp, quyền vận hành của ứng dụng Java đủ lớn để mở rộng tấn công sang cơ sở dữ liệu hoặc các dịch vụ nội bộ kết nối phía sau.
Để xử lý triệt để vấn đề, nhóm phát triển Apache Causeway đã phát hành phiên bản 3.5.0. Bản cập nhật này thay đổi cách ViewModel được xử lý, loại bỏ các điểm giải tuần tự hóa dễ bị lợi dụng và bổ sung cơ chế kiểm soát chặt chẽ hơn đối với dữ liệu tuần tự hóa. Các tổ chức sử dụng Causeway được khuyến nghị nâng cấp ngay lập tức, đồng thời rà soát nhật ký truy cập để phát hiện các yêu cầu bất thường liên quan đến ViewModel. Việc hạn chế quyền người dùng và kiểm tra các thành phần phụ thuộc vào tuần tự hóa/giải tuần tự hóa cũng là bước cần thiết để giảm thiểu nguy cơ tái diễn.
Theo Security Online
Chỉnh sửa lần cuối: