Bỏ qua điều hướng tới nội dung chính
Tin tức AI

Bản Claude Code trên chợ extension của Cursor bị chèn cửa hậu SSH: chỉ 2 phiên bản trong 11 giờ ngày 29/10

📑 Mục lục chi tiết bài viết (20 mục)
Bản Claude Code trên chợ extension của Cursor bị chèn cửa hậu SSH: chỉ 2 phiên bản trong 11 giờ ngày 29/10

Nghe tin một extension mang tên chính thức, nằm trong marketplace chính thức, mà vẫn bị thay ruột thì mình thấy hơi lạnh gáy, vì thói quen cứ thấy tên quen, chợ quen là yên tâm cài đến lúc phải soi lại rồi, và vụ này bắt đầu từ hai phiên bản 2.1.312 và 2.1.313 của Anthropic.claude-code trên Cursor Marketplace trong ngày 29/10/2026, với dấu vết đầu tiên cần kiểm tra là khóa mang comment svc-telemetry trong file ~/.ssh/authorized_keys.

Tóm tắt nhanh để đọc lướt: phiên bản bị sửa là 2.1.312 và 2.1.313, chỉ phân phối qua Cursor VS Code Extension Marketplace, khung giờ phơi nhiễm khoảng 11 giờ trong ngày 29/10/2026 từ khoảng 2:27am đến 1:35pm PT, tương đương 9:27am đến 8:35pm UTC, và việc đầu tiên anh em nên làm là kiểm tra xem trong file ~/.ssh/authorized_keys có khóa nào mang comment svc-telemetry hay không.

1. Chuyện gì đã xảy ra, kiểm tra trong 1 phút trước khi đọc tiếp

Trước khi đi vào chi tiết kỹ thuật, anh em chỉ cần trả lời một câu trong một phút, máy của mình có nằm trong diện ảnh hưởng hay không, dựa vào phiên bản, kênh phân phối và khung giờ, vì ba yếu tố này phải khớp cùng lúc thì mới thuộc diện đã xác nhận của vụ này.

Minh hoa truu tuong ve viec kiem tra mot extension truoc khi tin tuong

1.1 Phiên bản, kênh phân phối và khung giờ phơi nhiễm

Extension bị ảnh hưởng là Anthropic.claude-code, hai phiên bản 2.1.312 và 2.1.313, dành cho macOS và Windows, và kênh phân phối duy nhất của bản bị sửa là Cursor VS Code Extension Marketplace, trong khi Microsoft VS Code Marketplace, Open VSX và npm đều không phân phối bản bị sửa này, nên anh em chỉ cài từ mấy kênh kia thì không thuộc diện đã xác nhận của vụ này, dù tên extension giống hệt nhau thì vẫn phải phân biệt kênh cho kỹ trước khi kết luận máy mình có dính hay không.

1.2 Ai có thể đã nhận bản bị sửa mà không tự tải về

Khung thời gian phơi nhiễm kéo dài khoảng 11 giờ trong ngày 29/10/2026, từ khoảng 2:27am đến 1:35pm PT, tương đương 9:27am đến 8:35pm UTC, và vì Cursor bật tự động cập nhật theo mặc định nên người dùng có thể đã nhận bản bị sửa mà không cần tải thủ công, với ước tính tối đa 5.000 người dùng có thể đã nhận bản bị sửa theo ước tính của Cursor qua báo chí, và đây là ước tính trần về số người có thể đã nhận bản bị sửa, còn số người thực sự bị đăng nhập từ xa thành công thì đến nay vẫn chưa rõ.

2. Bản bị sửa đã làm gì trên máy người dùng

Phần này mình giải thích cơ chế ở mức người dùng bình thường hiểu được, không cần là chuyên gia bảo mật, và không đi vào chi tiết đủ để ai đó tái tạo lại tấn công.

Minh hoa truu tuong ve mot chia khoa la duoc them vao vong khoa cua may tinh

2.1 Loader chạy khi extension được tải và khóa SSH bị đặt thêm

Một loader dạng IIFE, tức đoạn mã chạy ngay khi vừa được tải, đã bị chèn thêm vào đầu file extension.js của extension, và loader này chạy ngay khi extension được tải, không cần người dùng bấm hay xác nhận thêm gì cả, rồi từ đó loader thêm một khóa SSH Ed25519 của kẻ tấn công, có comment svc-telemetry, vào file ~/.ssh/authorized_keys trên máy người dùng, đồng thời cố gắng bật dịch vụ SSH local và mở reverse SSH tunnel tới 134.209.82[.]225 với khóa dùng cho tunnel mang comment svc-telemetry-tun.

2.2 Cơ chế bám trụ và beacon gửi về máy chủ tấn công

Cơ chế bám trụ được ghi nhận gồm macOS LaunchAgent tên com.apple.sysmond, Windows scheduled task tên SysMon kèm fallback qua thư mục Startup, và Linux cron @reboot, với payload thử lại khoảng mỗi 60 giây, nghĩa là dấu vết này không nằm gọn trong extension để gỡ extension là xong, mà nó tự cắm rễ riêng và tự thử lại đều đặn.

Song song với đó, payload còn gửi beacon POST tới 134.209.82[.]225:8099/beacon kèm hostname, username, hệ điều hành và kiến trúc máy, thư mục home, thư mục làm việc, Git email, địa chỉ IP công khai, và chỉ tên của tối đa 40 biến môi trường khớp mẫu KEY, TOKEN, SECRET, PASS, AWS hoặc GCP, nhưng beacon này chỉ gửi tên biến, không kèm giá trị, và điểm này vẫn đáng lo vì nó cho kẻ tấn công biết trên máy có những loại credential nào, dù giá trị credential không bị gửi đi trong beacon này.

3. Vì sao cửa hậu SSH từ xa thất bại trên hầu hết máy, và vì sao máy vẫn chưa thể gọi là sạch

Đây là phần dễ gây hiểu nhầm nhất trong cả vụ việc. Một bước tấn công thất bại rất dễ bị đọc thành máy an toàn, trong khi các dấu vết khác vẫn có thể đã nằm lại trên máy từ trước.

Minh hoa truu tuong ve o khoa va la chan bao ve, nhac rang mot buoc that bai chua co nghia la may sach

3.1 Hai lỗi khiến bước bật SSH từ xa bị chặn lại

Giới hạn cốt lõi nằm ở chỗ việc bật dịch vụ SSH cần quyền admin mà extension bình thường không có, nên nếu Cursor không chạy dưới quyền admin thì bước bật SSH từ xa khó thành công, và trên macOS còn có thêm một lỗi ở bước kiểm tra quyền, khi lệnh kiểm tra systemsetup trả về lỗi quyền admin nhưng kèm exit code 0, nên phép thử /Off/ bị fail và bước bật SSH bị chặn lại dù tín hiệu thoát trông như thành công, còn trên Windows thì helper dùng cho bước này hardcode /bin/sh, vốn là đường dẫn kiểu Unix, nên không chạy đúng trên Windows.

3.2 Giới hạn này có nghĩa gì và không có nghĩa gì

Hệ quả đã kiểm chứng là bước đăng nhập từ xa thất bại trên hầu hết máy, trừ trường hợp Cursor chạy dưới quyền admin, nhưng số người thực sự bị đăng nhập từ xa thành công thì vẫn là unknown, chưa có con số nào xác nhận, và giới hạn này chỉ chặn bước đăng nhập từ xa, còn khóa SSH, cơ chế persistence và beacon vẫn có thể đã hạ cánh trên máy ngay cả khi bước bật SSH từ xa thất bại, nên chỉ cập nhật extension lên bản khác là không đủ để làm sạch máy nếu dấu vết đã có.

4. Hai phía nói gì và điểm nào vẫn chưa rõ

Vụ việc này có một tranh cãi quy quyền cần trình bày đủ cả hai phía đã kiểm chứng, rồi giữ nguyên khoảng trống thông tin thay vì lấp bằng giả thuyết, vì chỗ nào chưa rõ mà mình cứ đoán thì người đọc sẽ tưởng đó là dữ kiện.

Minh hoa truu tuong ve hai phia doi thoai va nhung diem van chua ro

4.1 Phía Anthropic và phía Cursor, mỗi phía nói đến đâu

Phía Anthropic, qua nhân viên Felix Rieseberg trả lời The Register, nói vụ này không thuộc về hệ thống của Anthropic hay laptop của nhân viên Anthropic, mà một actor độc hại đã dùng quyền truy cập vào marketplace của Cursor để phát hành một bản sao đã bị sửa đổi, và theo phía Anthropic thì bản sao đó không do Anthropic xây dựng hay phát hành, và mình trình bày đây đúng như phát ngôn của một phía, chứ chưa phải kết luận chung cuộc đã được mọi bên xác nhận. Bản bị sửa mang tên extension chính thức và nằm trong marketplace chính thức, nên chỗ vênh giữa tên hiển thị với nguồn gốc thực sự là điểm gây bối rối nhất.

4.2 Điểm chưa rõ và góc nhìn cộng đồng cần gắn nhãn đúng

Điểm vẫn chưa rõ, và mình xin giữ nguyên là chưa rõ chứ không suy đoán thêm, là Cursor chưa giải thích kẻ tấn công đã chiếm được quyền truy cập marketplace bằng cách nào, nên cách thức xâm nhập marketplace đến nay vẫn là unknown.

Song song với đó, thảo luận trên Hacker News ngày 30/10 đã lên top story, tập trung vào niềm tin vào chuỗi cung ứng của công cụ lập trình AI, với luận điểm được nhấn mạnh là gỡ cài đặt hay cập nhật extension thôi là chưa đủ, vì dấu vết như khóa SSH và persistence tồn tại độc lập với extension, và mình xin gắn nhãn rõ ràng, phần thảo luận cộng đồng này là Ý KIẾN, chứ chưa phải dữ kiện đã kiểm chứng, còn checklist của Cursor mới là hướng dẫn hành động đã kiểm chứng.

5. Phản ứng của Cursor và checklist dọn dẹp cho người đọc

Sau phần tranh cãi, anh em cần một thứ tự hành động rõ ràng, lấy đúng checklist của Cursor, chứ không chỉ một lời khuyên chung chung là cập nhật extension.

Minh hoa truu tuong ve danh sach kiem tra don dep va bao mat may tinh

5.1 Cursor đã làm gì sau khi phát hiện bản bị sửa

Cursor đã gỡ các phiên bản bị ảnh hưởng, chặn phân phối tiếp, tạm đóng toàn bộ marketplace, kiểm tra quyền truy cập và xác nhận không có extension nào khác bị sửa đổi, xoay các khóa liên quan, xây dựng lại marketplace, và phối hợp với nhà cung cấp hosting để đưa máy chủ của kẻ tấn công offline, và theo dữ kiện đã kiểm chứng thì máy chủ tấn công hiện không còn hoạt động, còn Cursor có kế hoạch liên hệ trực tiếp với người dùng bị ảnh hưởng theo báo chí, nhưng thời điểm và phương thức liên hệ cụ thể thì vẫn là unknown.

5.2 Checklist kiểm tra và dọn dẹp theo đúng thứ tự của Cursor

Làm theo ngay, đúng thứ tự của Cursor:

  1. Kiểm tra phiên bản đang dùng, phiên bản đó không được là 2.1.312 hoặc 2.1.313 từ Cursor Marketplace trong khung giờ đã nêu.
  2. Mở file ~/.ssh/authorized_keys và tìm xem có khóa nào mang comment svc-telemetry hay không.
  3. Nếu có khóa đó thì gỡ khóa đó.
  4. Gỡ persistence gồm LaunchAgent com.apple.sysmond trên macOS, scheduled task SysMon kèm fallback qua thư mục Startup trên Windows, và cron @reboot trên Linux.
  5. Gỡ các tiến trình tunnel đang chạy.
  6. Dùng cleanup scripts của Cursor thay vì chỉ gỡ extension bằng tay.
  7. Xoay các credential mà máy đó có thể truy cập được, và bước xoay này phải thực hiện từ một thiết bị đáng tin, chứ không nên làm trên chính máy đang nghi bị đặt khóa.
  8. Theo thông báo của Cursor, nếu tìm thấy khóa thì coi máy như đã bị phơi nhiễm.

6. Bài học rút ra cho lần cài extension sau

Vụ việc này đáng nhớ vì nó phá vỡ mấy giả định quen thuộc của người dùng, và mỗi giả định vỡ ra đều cho một thói quen kiểm tra cụ thể cho lần cài extension sau.

Minh hoa truu tuong ve thoi quen soi ky mot extension truoc khi cai dat

6.1 Ba giả định bị phá vỡ và thói quen thay thế

Giả định đầu tiên bị phá vỡ là tên extension chính thức và marketplace chính thức bảo đảm bản đó là bản gốc chưa bị sửa, nên khi có thông báo bảo mật thì anh em cần kiểm tra phiên bản, kênh phân phối và khung giờ thay vì chỉ tin vào tên hiển thị, và giả định thứ hai là thất bại của một bước tấn công đồng nghĩa máy sạch, vì khóa SSH, persistence và beacon vẫn có thể đã hạ cánh dù bước đăng nhập từ xa thất bại, nên quy trình dọn dẹp phải đầy đủ, xử lý cả khóa, persistence và tiến trình tunnel đang chạy.

6.2 Tự động cập nhật và tâm thế chờ thông tin chính thức

Giả định thứ ba liên quan đến cơ chế tự động cập nhật, vì Cursor bật tự động cập nhật theo mặc định nên người dùng có thể nhận bản có vấn đề mà không tải thủ công, và khi có cảnh báo thì anh em cần kiểm tra lại cả những bản đã tự động cập nhật, không chỉ những bản mình nhớ là đã tự cài.

Đồng thời, dù nhà cung cấp đã gỡ bản lỗi, chặn phân phối, tạm đóng marketplace để kiểm tra và xây dựng lại thì người dùng vẫn phải tự kiểm tra máy của mình theo checklist, vì phía cung cấp không thể tự dọn dấu vết đã nằm sẵn trên máy local thay cho người dùng, và giữ tâm thế chờ thông tin chính thức cho những điểm còn unknown, thay vì lan truyền suy đoán về cách kẻ tấn công vào được marketplace.

Kết bài

Minh hoa truu tuong ve may tinh da duoc kiem tra xong trong anh sang binh yen

Vậy nên, nếu máy của anh em nằm trong diện phiên bản, kênh và khung giờ đã nêu thì kiểm tra khóa svc-telemetry trước tiên, nếu tìm thấy khóa thì làm đủ checklist của Cursor và coi máy như đã bị phơi nhiễm, còn bước đăng nhập từ xa thất bại trên hầu hết máy thì vẫn không cho phép kết luận máy sạch, và số người thực sự bị đăng nhập từ xa thành công thì đến nay vẫn là unknown, nên anh em cứ kiểm tra thật, dọn đủ bước, chia sẻ trải nghiệm kiểm tra thật của mình, rồi chờ thông tin chính thức của Cursor cho điểm marketplace access method còn unknown.

Nguồn tham khảo

Bài viết này có hữu ích cho công việc của bạn?
Báo thông số cũ / Góp ý
Ảnh đại diện tác giả Tuấn Prompt tại ThuThuatAI.net

Tuấn Prompt

Biên tập viên AI Thực chiến

Thợ săn AI thực chiến của ThuThuatAI.net. Chuyên bóc tách tool, prompt và model AI mới — cái nào có lệnh cài, có giá, có số liệu kiểm chứng được thì mới lên bài. Viết như nói chuyện với anh em: có chuyên môn, có hài hước, và nói thẳng chỗ nào chưa kiểm chứng.

ĐỌC TIẾP CÙNG CHUYÊN MỤC

Bài viết Chuyên sâu Cùng Chuyên mục Tin tức AI

TÀI LIỆU NỀN TẢNG ĐỀ XUẤT

Cẩm nang Nền tảng Đề xuất Đọc tiếp

Bình luận & Trao đổi

Để lại câu hỏi hoặc chia sẻ kinh nghiệm thực tế của bạn

Email của bạn được bảo mật tuyệt đối theo Nghị định 13/2023/NĐ-CP và không hiển thị công khai. Vui lòng ẩn danh API Key trước khi dán log lỗi.

BẢN TIN HÀNG TUẦN

Nhận điểm tin & thủ thuật AI chọn lọc mỗi tuần

Tổng hợp ngắn gọn các công cụ AI mới đáng thử, mẫu prompt dùng được ngay và kinh nghiệm tự động hóa thực tế. Chỉ 1 email mỗi tuần, không spam.

Không gửi thư rác quảng cáo. Xem chi tiết tại Chính sách bảo mật.