Lỗ hổng CVE nghiêm trọng: Nguy cơ Remote Code Execution

Lỗ hổng CVE nghiêm trọng: Nguy cơ Remote Code Execution

Một **lỗ hổng CVE** nghiêm trọng (CVE-2025-64439) cho phép thực thi mã từ xa (RCE) đã được phát hiện trong thư viện tuần tự hóa checkpoint của LangGraph, ảnh hưởng đến các phiên bản trước 3.0. Lỗ hổng này nằm trong thành phần JsonPlusSerializer, giao thức tuần tự hóa mặc định được sử dụng cho tất cả các hoạt động checkpoint.

Nội dung
Phân Tích Kỹ Thuật **Lỗ Hổng CVE**-2025-64439

Cơ Chế Dự Phòng Không An Toàn
Tác Động Và Rủi Ro **Remote Code Execution**
Giải Pháp Khắc Phục và **Bản Vá Bảo Mật**

Hệ Thống Allowlist và Loại Bỏ Chế Độ JSON
Khuyến Nghị Nâng Cấp Ngay Lập Tức

Phân Tích Kỹ Thuật **Lỗ Hổng CVE**-2025-64439

Lỗ hổng CVE này (mã định danh: CVE-2025-64439) cho phép kẻ tấn công thực thi mã Python tùy ý trong quá trình giải tuần tự hóa các payload độc hại. Nguồn gốc của lỗ hổng nằm ở cơ chế dự phòng không an toàn trong JsonPlusSerializer.

Cơ Chế Dự Phòng Không An Toàn

Thông thường, thư viện JsonPlusSerializer sử dụng msgpack cho quá trình tuần tự hóa. Tuy nhiên, khi các giá trị thay thế Unicode bất hợp pháp ngăn cản quá trình tuần tự hóa thành công, hệ thống sẽ tự động chuyển sang chế độ “json”.

Trong quá trình giải tuần tự hóa ở chế độ “json”, hệ thống hỗ trợ định dạng kiểu hàm tạo (constructor-style) cho phép tái tạo các đối tượng tùy chỉnh khi tải. Kẻ tấn công có thể lợi dụng chức năng này bằng cách tạo ra các payload độc hại. Các payload này được thiết kế để thực thi các lệnh hệ thống hoặc các hàm tùy ý (ví dụ) trong quá trình giải tuần tự hóa.

Tác Động Và Rủi Ro **Remote Code Execution**

Vấn đề này ảnh hưởng đến người dùng các phiên bản langgraph-checkpoint trước 3.0, đặc biệt những ai cho phép dữ liệu không đáng tin cậy hoặc do người dùng cung cấp được lưu trữ vào các checkpoint.

Nếu ứng dụng chỉ xử lý dữ liệu đáng tin cậy hoặc hạn chế ghi checkpoint, rủi ro thực tế sẽ giảm đáng kể. Tuy nhiên, bất kỳ hệ thống nào chấp nhận đầu vào bên ngoài đều cần được chú ý và vá lỗi ngay lập tức. Nguy cơ **remote code execution** là đặc biệt cao khi có sự tương tác với dữ liệu từ môi trường không kiểm soát.

Giải Pháp Khắc Phục và **Bản Vá Bảo Mật**

LangGraph đã phát hành phiên bản 3.0.0 của thư viện checkpoint (thông báo bảo mật) với bản vá hoàn chỉnh. Việc khắc phục triển khai một hệ thống danh sách cho phép (allowlist system) cho việc giải tuần tự hóa hàm tạo.

Hệ Thống Allowlist và Loại Bỏ Chế Độ JSON

Hệ thống allowlist này hạn chế các đường dẫn mã cho phép chỉ đối với các kết hợp module và lớp được phê duyệt rõ ràng. Ngoài ra, việc lưu trữ payload ở định dạng “json” đã bị phản đối (deprecated), loại bỏ hoàn toàn cơ chế dự phòng không an toàn.

Bản cập nhật này hoàn toàn tương thích với LangGraph 0.3 và không yêu cầu sửa đổi mã nguồn để triển khai. Đây là một **bản vá bảo mật** quan trọng.

Khuyến Nghị Nâng Cấp Ngay Lập Tức

Các tổ chức nên nâng cấp ngay lập tức lên phiên bản langgraph-checkpoint 3.0.0. Người dùng triển khai LangGraph API nên cập nhật lên phiên bản 0.5 hoặc mới hơn, phiên bản này tự động bao gồm thư viện checkpoint đã được vá.

Quá trình cập nhật rất đơn giản, không yêu cầu thay đổi import hoặc sửa đổi mã ứng dụng. Do mức độ nghiêm trọng cao và tính dễ khai thác của **lỗ hổng CVE** này, việc triển khai **bản vá bảo mật** này cần được ưu tiên hàng đầu trong lịch trình cập nhật bảo mật của bạn. Việc bỏ qua có thể dẫn đến **remote code execution** không mong muốn.