Nghiên cứu bảo mật đã công bố một lỗ hổng CVE nghiêm trọng trong Cursor, trình soạn thảo mã nguồn tích hợp AI. Lỗ hổng này cho phép kẻ tấn công chèn mã độc hại thông qua việc đăng ký các máy chủ Giao thức Ngữ cảnh Mô hình (MCP) giả mạo. Khác với VS Code, Cursor thiếu các cơ chế kiểm tra tính toàn vẹn trên các thành phần runtime của mình, khiến nó dễ bị giả mạo thông qua quá trình đăng ký máy chủ MCP.
Cơ chế Tấn công và Khai thác Lỗ hổng CVE
Quy trình Đăng ký Máy chủ MCP Độc hại
Cuộc tấn công được thực hiện bằng cách đăng ký một máy chủ MCP cục bộ, có khả năng vượt qua hoàn toàn các kiểm soát bảo mật tích hợp trong Cursor. Khi một nhà phát triển kích hoạt máy chủ MCP độc hại này và khởi động lại Cursor, trình duyệt nội bộ của ứng dụng sẽ bị xâm nhập.
Kẻ tấn công có thể chèn mã JavaScript tùy ý, cho phép chiếm quyền điều khiển trình duyệt và thực hiện các hành vi độc hại, bao gồm remote code execution trong môi trường trình duyệt của người dùng.
Ví dụ, mã độc có thể thay thế các trang đăng nhập hợp pháp bằng các phiên bản giả mạo được thiết kế để thu thập thông tin đăng nhập, sau đó bí mật gửi chúng đến các máy chủ từ xa do kẻ tấn công kiểm soát.
Nguyên nhân Gốc rễ của Lỗ hổng CVE
Lỗ hổng CVE này bắt nguồn từ việc Cursor không thực hiện xác minh tính toàn vẹn của các tính năng dành riêng cho mình trong quá trình runtime. Điều này tạo điều kiện cho các sửa đổi không được phép mà không bị phát hiện.
Các nhà nghiên cứu tại Knostic.ai đã chứng minh điều này bằng cách tạo ra một bằng chứng về khái niệm (PoC). Họ đã sửa đổi mã nội bộ, không được xác minh trong quá trình đăng ký máy chủ MCP. Sự sửa đổi này cho phép chèn mã độc hại vào trình duyệt của Cursor mà không yêu cầu các quyền đặc biệt hoặc việc tính toán lại checksum.
Việc khai thác thực hiện bằng cách gán document.body.innerHTML với nội dung HTML do kẻ tấn công kiểm soát. Điều này hiệu quả là viết lại toàn bộ phần thân trang và xóa trạng thái DOM trước đó. Kỹ thuật này bỏ qua hoàn toàn các kiểm tra bảo mật ở cấp độ giao diện người dùng. Sau khi kích hoạt, mọi tab trình duyệt mà Cursor mở ra sẽ thực thi payload đã chèn, tạo ra một bề mặt tấn công dai dẳng.
Để biết thêm chi tiết kỹ thuật về PoC, tham khảo bài viết của Knostic.ai: MCP Hijacked Cursor Browser.
Chi tiết Quy trình Tấn công
Quá trình tấn công mạng này bao gồm ba bước cơ bản:
- Kích hoạt Máy chủ MCP: Nhà phát triển phải kích hoạt máy chủ MCP đã bị giả mạo.
- Khởi động lại Cursor: Ứng dụng Cursor cần được khởi động lại để áp dụng các thay đổi từ máy chủ MCP đã đăng ký.
- Thực thi JavaScript Độc hại: Mã JavaScript độc hại sau đó sẽ được thực thi trong môi trường trình duyệt nhúng của Cursor.
Đây là một cuộc tấn công eval hai lớp, cung cấp cho kẻ tấn công khả năng kiểm soát rộng rãi. Các máy chủ MCP yêu cầu các quyền hạn rộng để hoạt động, nghĩa là các máy chủ bị xâm nhập có thể tự sửa đổi, leo thang đặc quyền và có được các khả năng mới mà người dùng không hề hay biết.
Bối cảnh Mối đe dọa Rộng hơn và Rủi ro Chuỗi Cung ứng
Sự tồn tại của lỗ hổng CVE này minh họa một bối cảnh mối đe dọa đang mở rộng, nơi các tác nhân lập trình AI hàng ngày đang tạo ra những bề mặt tấn công mới. Kẻ tấn công có thể thực hiện bất kỳ hành động nào mà người dùng bị xâm nhập có thể, với rất ít kiểm soát tại chỗ để giảm thiểu rủi ro.
Các rủi ro chuỗi cung ứng mới nổi liên quan đến việc sử dụng các tác nhân AI là rất đáng kể. Đáng lo ngại hơn, nhiều tổ chức vẫn duy trì mức độ hiển thị tối thiểu về việc triển khai và sử dụng các công cụ này. Máy chủ MCP, các tiện ích mở rộng và thậm chí các lời nhắc đơn giản đều có khả năng thực thi mã trong môi trường người dùng và trên các mạng lưới doanh nghiệp mà không bị phát hiện.
Biện pháp Phòng ngừa và Giảm thiểu Lỗ hổng CVE
Khuyến nghị cho Nhà phát triển
- Kiểm tra kỹ lưỡng: Luôn kiểm tra cẩn thận bất kỳ máy chủ MCP hoặc tiện ích mở rộng nào trước khi đưa vào sử dụng.
- Xác minh mã nguồn: Bắt buộc phải xác minh kho lưu trữ GitHub của dự án và xem xét kỹ lưỡng mã nguồn trước khi tiến hành cài đặt.
- Tránh chế độ tự động chạy: Không bao giờ kích hoạt các chức năng một cách mù quáng, đặc biệt là các tính năng MCP. Tránh sử dụng các chế độ tự động chạy bỏ qua sự giám sát của người dùng để giảm thiểu lỗ hổng CVE tiềm tàng.
- Đánh giá mã AI: Ngoài ra, nhà phát triển nên xem xét thủ công mã được tạo bởi các tác nhân AI trước khi thực hiện bất kỳ hành động nào trong trình duyệt nhúng.
Biện pháp Bảo vệ cho Tổ chức
Hậu quả của việc đặt niềm tin sai chỗ vào các công cụ phát triển có thể vượt ra ngoài các máy cá nhân, gây tổn hại đến toàn bộ mạng lưới doanh nghiệp. Phát hiện này củng cố quan điểm rằng máy của nhà phát triển đã trở thành vành đai phòng thủ an ninh mạng mới. Các tổ chức phải thực hiện các biện pháp bảo mật chuỗi cung ứng toàn diện.
Các biện pháp này bao gồm việc triển khai hệ thống danh tiếng để nhập liệu an toàn và khả năng quản lý trạng thái bảo mật. Đây là những yếu tố thiết yếu để bảo vệ chống lại các mối đe dọa đang phát triển, đặc biệt là các cuộc tấn công nhắm vào lỗ hổng CVE trong môi trường phát triển sử dụng AI.










