Hàng nghìn website gặp nguy cơ RCE vì lỗ hổng Jinjava của HubSpot

WhiteHat Team

Administrators
Thành viên BQT
09/04/2020
114
1.124 bài viết
Hàng nghìn website gặp nguy cơ RCE vì lỗ hổng Jinjava của HubSpot
Một lỗ hổng nghiêm trọng vừa được phát hiện trong Jinjava – bộ máy mẫu phổ biến do HubSpot duy trì, có mã định danh CVE-2025-59340 với điểm CVSS 3.1 là 10.0. Lỗ hổng cho phép kẻ tấn công vượt qua sandbox và thực thi mã từ xa (RCE) trên hàng nghìn website bị ảnh hưởng. Điểm yếu nằm ở cách Jinjava tích hợp với Jackson ObjectMapper, cho phép giải tuần tự (deserialization) dữ liệu do kẻ tấn công kiểm soát thành các lớp Java tùy ý, bất chấp cơ chế bảo vệ hiện có. Các nhà nghiên cứu cảnh báo rằng nếu không được vá ngay, hàng nghìn trang web dựa vào Jinjava để sinh nội dung động có thể bị xâm phạm toàn diện.

jinjava.png

Jinjava triển khai sandbox bằng cách đưa vào danh sách đen các phương thức nguy hiểm như getClass() và chặn việc khởi tạo trực tiếp các đối tượng Class. Tuy nhiên, kẻ tấn công có thể lợi dụng biến tích hợp để truy cập vào instance bên dưới, sau đó đi qua trường config để tiếp cận một Jackson ObjectMapper. Bằng cách gọi phương thức readValue (String content, JavaType valueType) trên mapper này, kẻ xấu có thể bỏ qua toàn bộ các lớp đã bị chặn. Cụ thể, với mapper.getTypeFactory().constructFromCanonical("java.net.URL"), kẻ tấn công có thể tạo ra đối tượng java.net.URL, từ đó mở đường cho cả tấn công SSRF và đọc file. Vì lớp JavaType không nằm trong danh sách đen, kẻ tấn công có thể thoát khỏi sandbox mà không cần gọi trực tiếp các phương thức bị cấm hay dùng literal của Class

Một proof-of-concept trên Jinjava 2.8.0 đã chứng minh cách khai thác: bật default typing trên mapper, giải tuần tự một đối tượng URL, mở luồng dữ liệu từ URL đó và chuyển byte đọc được thành chuỗi để xuất ra. Với cách này, kẻ tấn công có thể đọc các file cục bộ như /etc/passwd bằng cách kết hợp các primitive của Jackson. Kỹ thuật này cho thấy sandbox của Jinjava dễ dàng bị vô hiệu hóa và cơ chế blacklist hiện tại chưa đủ bao quát.

Tác động của CVE-2025-59340 không chỉ dừng lại ở việc đọc file. Khi có thể khởi tạo các lớp từ thư viện mạng của Java, kẻ tấn công có thể thực hiện SSRF không giới hạn, dò quét dịch vụ nội bộ hoặc khai thác các endpoint metadata trên hạ tầng đám mây. Chỉ riêng việc đọc file cũng đã đủ để lộ cấu hình quan trọng, khóa riêng và thông tin xác thực. Trong môi trường doanh nghiệp – nơi tồn tại nhiều gadget class, primitive này còn có thể leo thang thành RCE, trao cho kẻ tấn công toàn quyền kiểm soát hệ thống. Với CVE-2025-59340, bất kỳ hệ thống nào chạy Jinjava 2.8.x hoặc cũ hơn đều có nguy cơ bị khai thác hoàn toàn.

Hàng nghìn website, bao gồm trang marketing, cổng khách hàng và dashboard nội bộ tích hợp Jinjava để sinh nội dung động đều đang trong diện rủi ro. Bất kỳ ứng dụng nào cho phép người dùng đưa vào template hoặc tuỳ chỉnh template đều có thể vô tình mở ra bề mặt tấn công này. Các tổ chức sử dụng Jinjava trong CMS, ứng dụng web hoặc công cụ tạo site tĩnh cần coi như đã bị xâm nhập cho tới khi vá lỗi.

HubSpot đã công bố khuyến cáo bảo mật và khắc phục sự cố trong Jinjava 2.9.0 bằng cách mở rộng blacklist để bao phủ lớp JavaType và các đường dẫn deserialization liên quan. Người dùng được khuyến nghị nâng cấp ngay lên phiên bản 2.9.0 hoặc mới hơn. Ngoài ra, các lập trình viên nên rà soát template tùy chỉnh, vô hiệu hóa default typing trên Jackson mapper và triển khai các biện pháp an toàn như whitelist template hoặc lọc dữ liệu đầu vào ở cấp ứng dụng.

Đội ngũ an ninh nên quét toàn bộ môi trường triển khai để phát hiện các bản Jinjava 2.8.x trở xuống, xem lại nhật ký để phát hiện các lời gọi template bất thường và tiến hành kiểm thử xâm nhập nhằm đánh giá độ an toàn của sandbox. Về lâu dài, việc cô lập engine template trong môi trường thực thi giới hạn và áp dụng nguyên tắc ít đặc quyền cho thư viện serialization sẽ giúp ngăn chặn những lỗ hổng bypass tương tự.

Việc xử lý kịp thời và toàn diện lỗ hổng này sẽ giúp các tổ chức khôi phục tính toàn vẹn của hệ thống template và tránh nguy cơ RCE gây hậu quả nghiêm trọng.

Theo Cyber Press
 
Mời các bạn tham gia Group WhiteHat để thảo luận và cập nhật tin tức an ninh mạng hàng ngày.
Lưu ý từ WhiteHat: Kiến thức an ninh mạng để phòng chống, không làm điều xấu. Luật pháp liên quan
Thẻ
hubspot jinjava jinjava remote code execution (rce)
Bên trên