Một bản cập nhật trông như hợp lệ của extension Claude Code đã trở thành cửa hậu truy cập từ xa. Ngày 29/10/2026, một bản Claude Code bị sửa đổi đã được phát tán qua Cursor Marketplace, cài mã độc nhằm mở backdoor SSH bền vững trên máy người dùng. Cursor xác nhận bản độc hại đã bị gỡ, marketplace đã được kiểm tra và đưa trở lại hoạt động, máy chủ tấn công đã bị ngắt kết nối. Dù vậy, ai đã nhận bản 2.1.313 trong khung giờ phát tán vẫn cần kiểm tra và dọn dẹp đúng quy trình, kể cả khi SSH trên máy chưa từng bật được.
Điểm đáng lo là gói độc hại vẫn mang đúng ID chính thức anthropic.claude-code và phiên bản 2.1.313, extension thật vẫn chạy bình thường nên rất khó phát hiện. Người bật tự động cập nhật có thể đã nhận mã độc mà không cần thêm thao tác nào.
Chuyện gì đã xảy ra?
Theo Cursor, bản bị sửa đổi xuất hiện trên Cursor Marketplace từ 2:27 đến 13:35 giờ PT ngày 29/10/2026, khoảng 11 giờ. Cursor ước tính tối đa 5.000 người dùng bị ảnh hưởng và sẽ liên hệ trực tiếp với họ. “Tối đa 5.000” là giới hạn trên về số người có thể đã cài bản độc hại, không phải số máy đã xác nhận bị đăng nhập thành công.
Cursor khẳng định bản này không phải do Anthropic phát triển. Kẻ tấn công đã phát tán nó dưới ID extension chính thức của Anthropic, thay vì tạo extension giả mạo riêng. Cách kẻ tấn công đưa bản sửa đổi vào marketplace vẫn chưa được làm rõ. Sau khi phát hiện, Cursor đã gỡ bản độc hại, tạm đóng marketplace để kiểm tra, xác nhận không có extension nào khác bị sửa đổi, xoay khóa và dựng lại marketplace.
Tính đến 30/10/2026, bản độc hại đã bị gỡ. Theo The Hacker News, Anthropic đã phát hành bản sạch 2.1.314 trên Open VSX và Microsoft VS Code Marketplace. Chỉ cập nhật lên 2.1.314 sau khi đã kiểm tra và dọn sạch máy.

Bản độc hại hoạt động ra sao?
Phân tích của OpenSourceMalware, được The Hacker News trích dẫn, cho biết bundle JavaScript chính bị chèn thêm loader độc hại dài 66 dòng ngay trước code hợp lệ. Loader kích hoạt sau khi VS Code khởi động và khi webview của extension mở ra.
Nó thêm khóa SSH do kẻ tấn công kiểm soát vào file ~/.ssh/authorized_keys, với nhãn svc-telemetry để trông như khóa dịch vụ vô hại. Sau đó, nó cố bật dịch vụ SSH cục bộ, mở reverse tunnel về máy chủ tấn công, cài cơ chế bền vững để tunnel được dựng lại sau khi khởi động lại, đồng thời gửi dữ liệu nhận dạng máy về máy chủ tấn công.
Trên macOS, cơ chế bền vững là LaunchAgent com.apple.sysmond. Trên Windows, đó là Scheduled Task SysMon với nỗ lực chạy dưới quyền SYSTEM, kèm script dự phòng trong Startup. Script nền thử dựng lại tunnel sau mỗi khoảng 60 giây. Chỉ gỡ extension là chưa đủ, vì script persistence độc lập vẫn có thể tiếp tục chạy.
Dữ liệu nào đã bị gửi đi?
Dữ liệu gồm IP công khai, hostname, tên người dùng, hệ điều hành, kiến trúc CPU, thư mục home, thư mục làm việc, email Git toàn cục và tên của tối đa 40 biến môi trường chứa KEY, TOKEN, SECRET, PASS, AWS hoặc GCP. Theo nhà nghiên cứu Paul McCarty, giá trị biến môi trường không nằm trong beacon đầu tiên, nhưng tên biến cũng đủ lộ loại credential, nhà cung cấp cloud và hệ thống CI đang dùng. Beacon gửi bằng HTTP không mã hóa tới 134.209.82[.]225:8099/beacon.
Vì sao vẫn nguy hiểm dù SSH chưa bật được?
Bật dịch vụ SSH cần quyền quản trị, mà extension độc hại không có trên đa số máy macOS và Windows, nên bước này thất bại và kẻ tấn công không thể đăng nhập qua tunnel trên các máy đó. Tuy nhiên, extension vẫn kịp thêm khóa SSH, cài persistence và gửi dữ liệu máy đi. Cursor khuyến cáo làm theo các bước khắc phục bất kể SSH có bật được hay không.
Ai bị ảnh hưởng, ai chưa có bằng chứng bị ảnh hưởng?
Nhóm nguy cơ cao nhất là người đã cài hoặc cập nhật anthropic.claude-code 2.1.313 từ Cursor Marketplace trong khung giờ trên, đặc biệt khi bật tự động cập nhật. Hãy coi máy là nghi nhiễm cho đến khi kiểm tra xong.
Hiện chưa có bằng chứng bản độc hại lan tới Open VSX hay Microsoft VS Code Marketplace, và người cài qua hai kênh này chưa được xác định là bị ảnh hưởng. Gói npm @anthropic-ai/claude-code và các extension khác trên Cursor Marketplace cũng chưa có bằng chứng bị sửa đổi. Ban đầu có báo cáo nêu Open VSX là nguồn phát tán, nhưng vụ việc sau đó đã được xác định lại là xuất phát từ Cursor Marketplace. Đây là sự cố chuỗi cung ứng trong khâu phân phối, không phải lỗi tính năng của Claude Code, và các thông báo đã kiểm chứng không nêu mã CVE.
Chỉ dùng VS Code hoặc Claude Code CLI thì sao?
Nếu chỉ dùng VS Code với extension từ Microsoft VS Code Marketplace, hoặc chỉ dùng Claude Code qua dòng lệnh, hiện chưa có bằng chứng bị ảnh hưởng. Dù vậy, nếu từng dùng Cursor trong khoảng thời gian trên, hãy kiểm tra phiên bản và file authorized_keys cho chắc.
Cách kiểm tra và khắc phục
Bước 1: Kiểm tra phiên bản extension
Mở bảng Extensions, tìm Claude Code và xem số phiên bản. Nếu là 2.1.313 và được cài từ Cursor Marketplace trong khung giờ phát tán, hãy coi như đã nhiễm. Nếu đã là 2.1.314, đó là bản sạch, nhưng vẫn nên kiểm tra khóa SSH nếu máy từng ở 2.1.313.
Bước 2: Tìm khóa lạ có nhãn svc-telemetry
Trên macOS, chạy lệnh kiểm tra chính thức của Cursor:
grep -qs svc-telemetry ~/.ssh/authorized_keys && echo "svc-telemetry key found" || echo "No key found; machine not impacted"
Trên Windows, chạy trong PowerShell:
$files = "$HOME\.ssh\authorized_keys", "C:\ProgramData\ssh\administrators_authorized_keys" | Where-Object { Test-Path $_ }
if ($files -and (Select-String svc-telemetry $files)) { "svc-telemetry key found" } else { "No key found; machine not impacted" }
Nếu tìm thấy khóa svc-telemetry, máy đã bị ảnh hưởng: cô lập máy, gỡ persistence và xoay toàn bộ credential, token và session có thể đã lộ.
Bước 3: Gỡ khóa, persistence và tiến trình tunnel
Cursor đã công bố script khắc phục cho macOS và Windows, có tác dụng gỡ extension độc hại, persistence, tiến trình tunnel và khóa SSH, đồng thời thoát với mã lỗi khác 0 nếu còn sót. Trên macOS, tải remediate-macos.sh và chạy với tư cách người dùng bị ảnh hưởng, không chạy dưới quyền root:
bash remediate-macos.sh
Trên Windows, tải remediate-windows.ps1 và chạy từ PowerShell mở bằng Run as Administrator:
powershell -ExecutionPolicy Bypass -File .\remediate-windows.ps1
Với hệ thống khác, hãy kiểm tra thủ công file authorized_keys, cron và tiến trình SSH hoặc autossh, xóa mọi khóa và tác vụ đáng ngờ. Nếu có dấu hiệu payload đã thực thi, hãy cân nhắc dựng lại máy.
Bước 4: Xoay credential và cập nhật lên 2.1.314
Xoay credential và session truy cập được từ máy bị ảnh hưởng, thực hiện từ một hệ thống đáng tin cậy khác. Chỉ sau khi dọn sạch, hãy cập nhật lên 2.1.314, kiểm tra lại phiên bản và chạy lại lệnh tìm khóa svc-telemetry. Nếu khóa quay lại, hãy cô lập máy và rà soát lại persistence.
Dấu hiệu nhận biết cần rà soát thêm
Địa chỉ tấn công là 134.209.82[.]225, tunnel dùng tunnel@134.209.82[.]225 qua TCP 22, beacon gửi tới hxxp://134.209.82[.]225:8099/beacon. Dấu vân tay khóa SSH trái phép là SHA256:0Z6R+DF64Do2nwQic8a7kkfDLNNk4IiK+2U2Rci4htk, dấu vân tay khóa reverse tunnel là SHA256:KOAU57+ZG6u3MG4WwzPzPX2O5YEe9qdOC1Bl+6MVyDQ. Cần chú ý thêm ~/.config/.smt, ~/Library/LaunchAgents/com.apple.sysmond.plist, Scheduled Task SysMon, cùng các lệnh ssh -N -R '*:0:localhost:22' và autossh -M 0.
Bài học rút ra
Vụ việc cho thấy rủi ro chuỗi cung ứng có thể đến ngay từ bản cập nhật mang ID chính thức: một gói bị tráo cũng đủ mở backdoor SSH cho hàng nghìn máy trong hơn 11 giờ. Nó xảy ra chỉ hơn một tuần sau vụ năm phiên bản CLI chính thức của OVHcloud bị thay binary bằng mã độc đánh cắp secret trong chiến dịch GlassWorm, theo The Hacker News. Bài học không phải là ngừng cập nhật, mà là kiểm tra lại phiên bản extension và file authorized_keys sau mỗi lần cập nhật quan trọng, tách credential theo môi trường và luôn sẵn sàng xoay credential khi một kênh phân phối bị nghi ngờ.
Nguồn tham khảo
- Cursor: Security notice — malicious version of Anthropic.claude-code (2.1.313) identified in the Cursor Extension Marketplace
- The Hacker News: Official Claude Code Extension on Cursor Marketplace Trojanized with Persistent SSH Backdoor
- Đỗ Trung Quân: Claude Code Bị Cài Backdoor SSH: 5.000 Người Dùng Ảnh Hưởng
- 🏢 Chuyên thiết kế web cho doanh nghiệp và cá nhân
- 🤖 Giải pháp tự động hóa cho Doanh nghiệp và cá nhân
- 📞 0925045760
- 🌐 thietkewebdian.com
