-
09/04/2020
-
123
-
1.501 bài viết
Lỗ hổng trong OpenCode cho phép thực thi mã từ xa chỉ bằng một lần truy cập website
Hai lỗ hổng nghiêm trọng vừa được phát hiện trong OpenCode, một agent AI mã nguồn mở đang được nhiều lập trình viên sử dụng, có thể biến chính công cụ này thành cửa ngõ cho tấn công thực thi mã từ xa, cho phép website độc hại chiếm quyền kiểm soát máy tính người dùng chỉ bằng một lần truy cập.
Theo công bố của các nhà nghiên cứu bảo mật, hai lỗ hổng mang mã CVE-2026-22813 và CVE-2026-22812 xuất phát từ các cấu hình mặc định thiếu an toàn trong cách OpenCode triển khai máy chủ web cục bộ và giao diện người dùng. Khi bị khai thác, chúng cho phép kẻ tấn công ghi và thực thi mã độc trực tiếp trên máy của nạn nhân.
Đáng chú ý nhất là CVE-2026-22813, lỗ hổng được chấm điểm CVSS 9,4 ở mức nghiêm trọng. Lỗi này lợi dụng một điểm yếu Cross Site Scripting để nối liền ranh giới giữa trình duyệt web và hệ thống cục bộ. Cụ thể, OpenCode cho phép ghi đè URL máy chủ trong giao diện web nhưng lại không kiểm soát dữ liệu HTML đầu vào, không có cơ chế làm sạch như DOMPurify và cũng không áp dụng Content Security Policy. Điều này mở đường cho kẻ tấn công chèn mã JavaScript độc hại trực tiếp vào giao diện chat của ứng dụng.
Khi mã độc được kích hoạt, nó có thể âm thầm gửi các yêu cầu đến API cục bộ của OpenCode đang chạy trên localhost cổng 4096. Những endpoint này cho phép khởi tạo tiến trình mới trên hệ thống, đồng nghĩa với việc kẻ tấn công có thể thực thi lệnh tùy ý. Chỉ cần chạy được JavaScript trong môi trường OpenCode, toàn bộ máy tính của nạn nhân đã nằm trong tầm kiểm soát.
Lỗ hổng thứ hai, CVE-2026-22812 với điểm CVSS 8,8, xuất phát từ việc backend của OpenCode không triển khai cơ chế xác thực và kiểm soát truy cập. Ứng dụng tự động khởi chạy một máy chủ HTTP cục bộ trên máy người dùng, cho phép tiếp nhận yêu cầu mà không cần đăng nhập. Nghiêm trọng hơn, máy chủ này chấp nhận kết nối từ mọi trang web. Trong kịch bản xấu nhất, chỉ cần người dùng truy cập một website độc hại, kẻ tấn công đã có thể gửi lệnh đến OpenCode đang chạy và chiếm quyền điều khiển máy tính mà nạn nhân không hề hay biết.
OpenCode tồn tại các endpoint cho phép thực thi lệnh hệ thống và đọc tùy ý nội dung tệp tin trên ổ đĩa. Điều này khiến dữ liệu nhạy cảm có nguy cơ bị truy xuất trái phép và toàn bộ máy tính của lập trình viên đứng trước nguy cơ bị chiếm quyền kiểm soát hoàn toàn.
Hai lỗ hổng ảnh hưởng đến tất cả các phiên bản OpenCode trước 1.0.216. Nhóm phát triển đã phát hành bản vá trong phiên bản 1.0.216 và nhiều khả năng các bản sau đó đã khắc phục triệt để các vấn đề này. Người dùng được khuyến cáo cập nhật ngay lập tức để tránh kịch bản chỉ cần mở một trang web độc hại là đủ để máy tính bị chiếm quyền điều khiển.
Theo Security Online