Blog

Năm 2026, có an toàn khi cấp cho Claude Code quyền truy cập dữ liệu của bạn không

Markdown

Phân tích chuyên sâu: Năm 2026, có an toàn khi cấp cho Claude Code quyền truy cập dữ liệu của bạn không?

Đọc toàn bộ bài viết

Cuối tháng 6 năm 2026, một dòng tít lan khắp internet: “Phát hiện mã ẩn trong Claude Code do thám người dùng”. Chỉ trong hai ngày, khoảng mười người trong chương trình đào tạo của tác giả đã nhắn hỏi: “Thế là hết, mình nên bỏ dùng không? Nó có đang đọc dự án của mình không?”

Câu trả lời ngắn gọn: không, đừng bỏ dùng, và không, nó không đọc dự án của bạn. Câu trả lời dài hơn chính là toàn bộ bài phân tích này. Bài viết dựa trên các nguồn sơ cấp, phân biệt sự thật với dòng tít và tổng hợp những điều chủ doanh nghiệp thực sự cần biết: Claude Code gửi thông tin gì về bạn, các lỗ hổng thực sự nằm ở đâu và cách cấu hình quyền truy cập để bạn có thể yên tâm ngủ ngon.

Bạn có thể xem thêm hướng dẫn trong tài liệu Ailoot.

Phát hiện mã ẩn nào trong Claude Code và nó đã làm gì?

Điểm chính

Ngày 30 tháng 6 năm 2026, một nhà nghiên cứu kiểm tra chương trình Claude Code và phát hiện một đoạn mã gắn thẻ yêu cầu khi bạn truy cập Claude thông qua máy chủ trung gian của bên thứ ba (proxy), thay vì kết nối trực tiếp. Đoạn mã xuất hiện trong phiên bản 2.1.91 vào tháng 4 và âm thầm hoạt động gần ba tháng. Anthropic thừa nhận điều này và gỡ mã trong phiên bản 2.1.197.

Hãy cùng xem xét từng bước, không cần giật gân. Chương trình chỉ kiểm tra một điều: yêu cầu của bạn được gửi đến đâu. Nếu bạn dùng Claude Code như bình thường, kết nối trực tiếp qua Anthropic, đoạn mã này hoàn toàn không chạy. Nó chỉ được kích hoạt khi ai đó thay đổi địa chỉ máy chủ (biến ANTHROPIC_BASE_URL) để trỏ đến một proxy bên ngoài.

Sau đó, đoạn mã kiểm tra múi giờ và địa chỉ proxy, so sánh chúng với các danh sách được nhúng trong mã rồi giấu kết quả ngay trong chuỗi dịch vụ Today's date is.... Cách che giấu rất tinh vi: nó đổi dấu phân cách trong ngày tháng và thay dấu nháy đơn bằng một ký tự trông giống hệt từ một bộ ký tự khác. Các danh sách được cố ý mã hóa để không xuất hiện trong những lượt tìm kiếm mã thông thường. Nhà nghiên cứu giải mã cơ chế này nhận xét rằng cách giấu dữ liệu như vậy thường thấy ở phần mềm độc hại hơn, và gọi đây là một lựa chọn kỳ lạ đối với công cụ phát triển.

Các danh sách đó tìm kiếm gì? Chỉ có hạ tầng Trung Quốc: khoảng một trăm tên miền và hơn chục tên phòng thí nghiệm AI Trung Quốc (deepseek, moonshot, zhipu và các đơn vị khác). Vào thời điểm đó, Anthropic đang xung đột với các công ty Trung Quốc về việc sao chép mô hình của mình, và thẻ đánh dấu là một phần của cuộc chiến đó.

Mã được gỡ trong phiên bản 2.1.197, phát hành ngày 1 tháng 7. Chỉ có một chi tiết khó chịu: ghi chú phát hành chính thức hoàn toàn không đề cập đến việc gỡ bỏ này. Một công cụ yêu cầu bạn tin tưởng lại chứa mã ẩn trong ba tháng rồi âm thầm gỡ bỏ. Nhà nghiên cứu phát hiện ra toàn bộ sự việc đã nói chính xác: đây không phải phần mềm độc hại, nhưng là lựa chọn kỳ lạ đối với một công cụ mà bạn giao phó dự án của mình.

Claude Code có đọc tệp hay đánh cắp dữ liệu của bạn không?

Điểm chính

Không. Mã chỉ gắn thẻ tuyến đường của yêu cầu (yêu cầu đi qua máy chủ nào) và múi giờ. Nó không đọc mã nguồn, mở tệp hay gửi bất kỳ thứ gì từ dự án của bạn. Những dòng tít về “do thám dữ liệu” đã đánh đồng tuyến đường với nội dung — đó là hai việc khác nhau.

Đây là điểm mấu chốt và là lý do bạn nên đọc phần này. Một số ấn phẩm đăng những dòng tít giật gân như “Claude bí mật truy cập dữ liệu người dùng”, thậm chí một bản ghi nhớ nội bộ của Alibaba còn gọi đây là “cửa hậu”. Nhưng khi các nhà nghiên cứu xem xét cơ chế này từng dòng một, sự việc hóa ra khiêm tốn hơn nhiều. Sau đây là những gì thực sự đã xảy ra và những gì các dòng tít tưởng tượng ra.

Ngộ nhận từ dòng títĐiều thực sự đã xảy ra
Nó đọc mã nguồn và tệp của bạnNó chỉ xem địa chỉ proxy và múi giờ
Nó gửi nội dung dự án của bạn cho AnthropicNó giấu một thẻ “tuyến đường đáng tin cậy/không đáng tin cậy” trong chuỗi dịch vụ
Nó do thám mọi người dùngNó chỉ chạy khi địa chỉ máy chủ được đổi sang proxy của bên thứ ba

Người đầu tiên phân tích đoạn mã đã tóm tắt bằng một câu:

Nó phân loại tuyến đường của yêu cầu, chứ không phải mã nguồn hay tệp của bạn.

— thereallo, nhà nghiên cứu bảo mật

Nếu bạn sử dụng Claude thông qua phương thức chính thức của Anthropic, đoạn mã này không chạy với bạn. Về mặt kỹ thuật, nó không thể chạy: không đổi địa chỉ máy chủ thì không có thẻ. Vì vậy, “Claude đã đọc dự án của tôi” là chuyện hoang đường. Rủi ro rò rỉ dữ liệu thực sự nằm ở nơi khác, và chúng ta sẽ tìm hiểu ngay sau đây.

Claude Code thực sự gửi thông tin gì về bạn?

Điểm chính

Theo mặc định, Claude Code chỉ đọc tệp và chạy lệnh khi có sự cho phép của bạn, và chỉ có thể ghi vào thư mục dự án. Lời nhắc của bạn, các tệp bạn cho nó xem và phản hồi của mô hình được gửi đến Anthropic qua kênh bảo mật. Khóa được lưu trong vùng lưu trữ an toàn của hệ thống, không phải dưới dạng văn bản thuần.

Giờ hãy tìm hiểu cách hoạt động thực tế — đây là điều nên hiểu một lần cho rõ. Mọi thông tin bên dưới đều lấy từ tài liệu chính thức của Claude Code, không phải tin đồn.

Theo mặc định, tác nhân có quyền “chỉ đọc” rất nghiêm ngặt. Mỗi khi cần chỉnh sửa tệp, chạy kiểm thử hoặc thực thi lệnh, nó đều xin phép:

Theo mặc định, Claude Code sử dụng quyền chỉ đọc nghiêm ngặt. Khi cần thực hiện các thao tác bổ sung (chỉnh sửa tệp, chạy kiểm thử, thực thi lệnh), Claude Code sẽ yêu cầu quyền rõ ràng.

— Tài liệu chính thức của Claude Code, https://code.claude.com/docs/en/security

Nó chỉ có thể ghi vào thư mục bạn khởi chạy và các thư mục con của thư mục đó. Nó không thể ghi vào các thư mục cha nếu không có quyền riêng. Sau đây là những gì được gửi đi và những gì vẫn ở lại với bạn:

Gửi đến AnthropicỞ lại với bạn
Lời nhắc của bạn và phản hồi của mô hình (qua kênh được mã hóa)Các tệp bạn chưa cho tác nhân xem
Nội dung của những tệp bạn tự mở cho tác nhân xemDữ liệu đo lường dịch vụ được gửi đi mà không có mã nguồn hay đường dẫn tệp
Địa chỉ trang web (chỉ tên miền) khi kiểm tra liên kếtLịch sử phiên được lưu cục bộ trên máy tính của bạn trong 30 ngày

Một mối lo riêng là “họ huấn luyện mô hình bằng mã nguồn của tôi”. Với các gói dành cho doanh nghiệp (Team, Enterprise, truy cập bằng khóa API), họ không làm vậy:

Anthropic không huấn luyện các mô hình tạo sinh bằng mã nguồn hoặc lời nhắc gửi đến Claude Code theo điều khoản thương mại, trừ khi khách hàng đã chọn cung cấp dữ liệu để cải thiện mô hình.

— Tài liệu chính thức của Claude Code, https://code.claude.com/docs/en/data-usage

Với các gói cá nhân (Free, Pro, Max), dữ liệu của bạn chỉ được dùng để huấn luyện mô hình nếu bạn chọn cho phép — có một công tắc riêng trong phần cài đặt và mặc định công tắc này đang tắt. Claude Code lưu khóa và token trong vùng lưu trữ an toàn của hệ thống (trong Keychain trên MacBook), chứ không lưu trong tệp văn bản cạnh dự án.

Quyền truy cập chỉ là lớp bảo vệ đầu tiên. Bạn muốn xây dựng một hệ thống luôn kiểm soát hoàn toàn tác nhân? Bảo vệ quyền truy cập dữ liệu là một phần của kỹ thuật ngữ cảnh: bạn quyết định tác nhân được thấy gì và không được thấy gì.

Ba lỗ hổng thực sự có thể làm rò rỉ dữ liệu của bạn

Điểm chính

Vụ bê bối gắn thẻ còn không nằm trong ba rủi ro thực sự hàng đầu. Những vấn đề nguy hiểm hơn là: khóa vô tình bị đưa vào git rồi bị bot lấy cắp; các chỉ dẫn độc hại bị giấu trong nội dung của người khác; và việc tác nhân có quyền truy cập vào máy chủ bên thứ ba chưa được kiểm tra. Dữ liệu thực sự rò rỉ ở những nơi đó.

Các rủi ro này đã được đề cập trong tài liệu bảo mật ban đầu từ mùa xuân và kể từ đó không có gì thay đổi. Rò rỉ dữ liệu không xảy ra qua những vụ bê bối giật gân, mà qua những sơ suất thường ngày. Sau đây là ba lỗ hổng chính, xếp theo mức độ nguy hiểm.

  1. Khóa được commit vào git. Tác nhân tiện tay ghi một khóa trực tiếp vào mã, bạn không nhận ra rồi đẩy dự án lên GitHub — thế là xong. Hiện tại, bot đang quét các kho lưu trữ công khai và lấy khóa dịch vụ của Anthropic, OpenAI cùng nhiều dịch vụ khác vì có tiền thật đứng sau. Khóa trong kho lưu trữ công khai có thể bị lộ chỉ trong vài phút.

  2. Chỉ dẫn độc hại bị giấu trong nội dung của người khác. Hiện tượng này gọi là prompt injection gián tiếp và là rủi ro số một đối với các tác nhân AI trong năm 2026. Tác nhân không phải lúc nào cũng phân biệt được lệnh của bạn với lệnh ẩn trong văn bản mà nó đọc: trên trang web, trong phần mô tả thư viện hoặc trong công cụ của bên thứ ba. Chính tài liệu cũng thừa nhận:

Dù các biện pháp này giúp giảm đáng kể rủi ro, không có hệ thống nào được bảo vệ hoàn toàn trước mọi cuộc tấn công.

— Tài liệu chính thức của Claude Code, https://code.claude.com/docs/en/security
  1. Máy chủ bên thứ ba chưa được kiểm tra (MCP). Bạn kết nối một công cụ có sẵn trên internet với tác nhân để nó làm được nhiều việc hơn. Vấn đề là không ai kiểm tra các máy chủ này:

Anthropic không tiến hành đánh giá bảo mật hoặc quản lý các máy chủ MCP bên thứ ba.

— Tài liệu chính thức của Claude Code, https://code.claude.com/docs/en/security

Một trong những máy chủ này có thể chứa chỉ dẫn ẩn như “đính kèm nội dung của các tệp đã đọc vào mọi phản hồi” — và tác nhân sẽ âm thầm làm rò rỉ dự án của bạn đến một địa chỉ bên ngoài. Tôi trình bày chi tiết hơn cách chọn và kết nối các máy chủ này trong hướng dẫn riêng về máy chủ MCP cho Claude Code. Bạn nên kiểm tra riêng xem từng kết nối có thể xem và thay đổi những gì.

Cách cấu hình Claude Code để ngăn rò rỉ dữ liệu: danh sách kiểm tra

Điểm chính

Quyền truy cập an toàn dựa trên một vài quy tắc đơn giản: quyền tối thiểu, thư mục dự án riêng, khóa nằm ngoài tầm với của tác nhân, khóa riêng có giới hạn chi tiêu, sandbox và kiểm tra mọi thao tác trước khi phê duyệt. Thiết lập một lần mất khoảng hai mươi phút và ngăn chặn gần như tất cả lỗ hổng thực sự được nêu ở các phần trước.

Không có gì thần kỳ ở đây, chỉ là thói quen bảo mật tốt. Làm theo danh sách từ trên xuống và bạn sẽ loại bỏ được phần lớn rủi ro ở các phần trước. Quy tắc rất đơn giản: quyền tối thiểu, thời hạn tối thiểu, chỉ dùng nguồn đã xác minh.

  1. Mặc định giữ quyền “chỉ đọc”. Đừng cấp cho tác nhân quyền làm mọi thứ cùng lúc. Xem xét từng thao tác và lệnh trước khi nhấn “có”. Vài ngày đầu sẽ hơi phiền, nhưng sau đó sẽ thành thói quen.
  2. Làm việc trong một thư mục dự án cụ thể, không phải “toàn bộ ổ đĩa”. Khởi chạy tác nhân bên trong dự án, không phải trong thư mục gốc chứa mọi thứ. Nó sẽ chỉ có thể ghi ở đây.
  3. Bảo vệ bí mật khỏi Git và khỏi quyền đọc của tác nhân riêng biệt. Thêm .env vào .gitignore ngăn theo dõi nhầm, không chặn đọc và không loại tệp đã được theo dõi. Giữ bí mật sản xuất ngoài môi trường tác nhân có thể truy cập, chẳng hạn ngoài máy ảo hoặc container chỉ gắn dự án. Xem cả quyền đọc và chạy lệnh. Kiểm tra loại trừ Git và cách ly truy cập riêng bằng bí mật giả vô hại, không dùng khóa thật.
  4. Tạo một khóa riêng có giới hạn chi tiêu. Đừng đưa cho tác nhân khóa chủ có quyền truy cập mọi thứ của bạn. Khóa riêng có hạn mức chi tiêu là biện pháp dự phòng: nếu khóa bị lộ hoặc tác nhân mắc kẹt trong vòng lặp, tổn thất sẽ bị giới hạn ở mức đó.
  5. Bật sandbox (/sandbox). Nó cô lập tệp và mạng khi tác nhân làm việc tự động. Với dự án nhạy cảm, hãy dùng thêm máy ảo.
  6. Đừng đưa nội dung bên ngoài trực tiếp cho tác nhân. Hãy coi một trang web bất kỳ hoặc công cụ lạ là đầu vào không đáng tin cậy. Tài liệu khuyến cáo rõ ràng không chuyển thẳng nội dung chưa được kiểm tra cho Claude.
  7. Kiểm tra máy chủ bên thứ ba (MCP) như khi kiểm tra nhà thầu. Chọn máy chủ do bạn viết hoặc do nhà cung cấp mà bạn tin tưởng tạo ra. Một công cụ ít người biết, chỉ có vài lượt đánh giá tích cực, có thể chứa mã ẩn để làm rò rỉ dữ liệu.
  8. Sao lưu dự án. Lưu bản sao ở nơi tách biệt với vị trí chính. Cứ vài tuần, hãy kiểm tra xem có thể khôi phục bản sao thật sự hay không, thay vì để nó nằm đó mà không dùng đến.

Để khỏi phải tự làm các bước này mỗi lần, dưới đây là một lời nhắc có sẵn — dán vào Claude Code cùng với dự án của bạn để công cụ kiểm tra cấu hình bảo mật.

Lời nhắcLời nhắc: kiểm tra bảo mật dự án

Kiểm tra dự án của tôi xem có rò rỉ dữ liệu hoặc điểm yếu về quyền truy cập không. Xem xét các mục dưới đây và đưa ra đánh giá cho từng mục: “ổn / rủi ro / cần khắc phục ngay”:

Có khóa, token hoặc mật khẩu nào bị lộ trong mã nguồn hoặc lịch sử git không? Nếu có, chúng nằm trong những tệp nào và tôi nên làm gì.

.env đã được loại khỏi Git và từng được theo dõi chưa? Tác nhân hoặc lệnh được phép có đọc được tệp bí mật không? Kiểm tra bằng tệp giả vô hại, không mở khóa thật. Đề xuất sửa riêng cho lộ qua Git và quyền truy cập của tác nhân.

Tôi đã tự động cấp cho tác nhân những lệnh và quyền nào? Có quyền nào nguy hiểm không.

Có máy chủ MCP bên thứ ba nào đang kết nối không? Chúng đã được kiểm tra kỹ đến mức nào.

Có bản sao lưu không, và nó có được cấu hình tách biệt với vị trí chính không.

Với mỗi rủi ro, hãy giải thích ngắn gọn bằng ngôn ngữ dễ hiểu và nêu một bước cụ thể để xử lý. Đừng sửa bất kỳ tệp nào nếu chưa được tôi xác nhận.

Nếu muốn tìm hiểu sâu hơn về công việc tự động mà không có nguy cơ làm hỏng dự án, bạn có thể đọc bài phân tích riêng về cách cấu hình Claude Code để nó không phá hỏng dự án của bạn qua đêm, cùng với hướng dẫn về 754 kỹ năng bảo mật, bao gồm thư viện kỹ năng bảo vệ có sẵn.

Nếu bạn vẫn lo ngại: các mô hình mở

Điểm chính

Nếu dữ liệu của bạn rất quan trọng, bạn có thể loại bỏ hoàn toàn Anthropic khỏi quy trình bằng cách chạy một mô hình mở. GLM-5.2, có giấy phép MIT, có thể kết nối với Claude Code chỉ bằng cách thay đổi hai cài đặt, còn Kimi K2.7 đã được tích hợp sẵn trong GitHub Copilot. Khi đó, lời nhắc của bạn hoàn toàn không được gửi đến Anthropic.

Phần này nói rằng “bạn có lựa chọn”, chứ không kêu gọi từ bỏ mọi thứ. Với hầu hết nhiệm vụ, Claude Code chính thức vẫn là công cụ tốt nhất. Nhưng nếu bạn làm việc với dữ liệu nhạy cảm và muốn kiểm soát hoàn toàn, dưới đây là một số lựa chọn khác.

GLM-5.2 của Z.ai, công ty Trung Quốc, ra mắt vào tháng 6 năm 2026 với trọng số mở theo giấy phép MIT: bạn có thể tự chạy mô hình. Kết nối mô hình với Claude Code rất đơn giản: đổi địa chỉ máy chủ (biến ANTHROPIC_BASE_URL) thành địa chỉ của Z.ai và nhập token của bạn, không cần huấn luyện lại. Các gói bắt đầu từ $18 mỗi tháng.

Ngoài ra còn có ứng dụng ZCode miễn phí, cung cấp một môi trường riêng cho mô hình này (bản thân ứng dụng không mở, chỉ có mô hình là mở). Một lựa chọn khác là Kimi K2.7 của Moonshot, được tích hợp trực tiếp vào GitHub Copilot vào ngày 1 tháng 7.

Ý tưởng rất đơn giản: khi chạy mô hình mở, bạn loại Anthropic khỏi quy trình. Tuy nhiên, tự vận hành một máy chủ cho mô hình lớn đến mức này đòi hỏi phần cứng mạnh, nên trên thực tế, dùng dịch vụ truy cập chính thức của nhà cung cấp sẽ dễ hơn. Để xem so sánh đầy đủ, hãy tham khảo các bài phân tích về GLM-5.2 so với Claude Code và các mô hình miễn phí để lập trình.

Bạn có nên tiếp tục sử dụng Claude Code không?

Điểm chính

Có. Thẻ này liên quan đến tuyến đường của yêu cầu, không chạm đến dữ liệu của bạn và đã được gỡ bỏ. Rủi ro thật sự đến từ cấu hình của bạn: quyền của tác nhân, khóa trong git và máy chủ chưa được kiểm tra. Hãy cấu hình một lần theo danh sách kiểm tra ở trên rồi yên tâm làm việc; đây vẫn là một trong những công cụ mạnh nhất cho vibe coding.

Hãy tổng kết lại. Vụ bê bối mã ẩn là câu chuyện về cuộc đấu tranh kinh doanh giữa Anthropic với các công ty Trung Quốc, chứ không phải mối đe dọa đối với doanh nghiệp của bạn. Nếu bạn dùng phương thức truy cập chính thức, mã đó không chạy với bạn, không đọc tệp và đã được gỡ bỏ. Điều đáng phê bình duy nhất là công cụ đã chứa mã ẩn trong ba tháng rồi âm thầm xóa nó. Đây là vấn đề về niềm tin và bạn nên ghi nhớ, nhưng dữ liệu dự án của bạn không gặp rủi ro.

Điều thực sự đáng để bạn chú ý là cấu hình của chính mình. Khóa bị đẩy lên git, máy chủ bên thứ ba chưa được kiểm tra hoặc tác nhân được quyền truy cập toàn bộ ổ đĩa — đó là những con đường khiến dữ liệu bị rò rỉ. Tin tốt là bạn có thể xử lý tất cả chỉ trong một buổi tối theo danh sách kiểm tra ở trên. Thiết lập một lần rồi sử dụng công cụ mà không phải lo lắng về các dòng tít.

Truy cập an toàn là một phần của việc kiểm soát ngữ cảnh và quyền truy cập.

Khi sẵn sàng, hãy tìm hiểu Ailoot.

Xem thêm chi tiết

Câu hỏi thường gặp

Thêm .env vào .gitignore có ngăn Claude Code đọc tệp không?

Không. Quy tắc Git chỉ ngăn thêm tệp chưa được theo dõi, không kiểm soát quyền đọc hay loại bỏ tệp đã được theo dõi. Hạn chế truy cập riêng và kiểm tra cả hai bằng tệp giả vô hại.

Kiểm tra cách ly bí mật mà không để lộ khóa như thế nào?

Đặt bí mật giả tại vị trí cần bảo vệ, rồi kiểm tra công cụ đọc tệp và các lệnh được phép có truy cập được không. Kiểm tra Git riêng; không dùng khóa sản xuất thật.

Tất cả bài viết