TL;DR

Ngày 30/6/2026, Reddit user LegitMichel777 đăng lên r/ClaudeAI kết quả reverse-engineer Claude Code và phát hiện code ẩn âm thầm tồn tại từ version 2.1.91 (phát hành tháng 4/2026). Code dùng kỹ thuật steganography - ẩn tín hiệu nhận diện vào câu system prompt thông thường - để gắn cờ người dùng có múi giờ Trung Quốc hoặc đang kết nối qua proxy của các AI lab lớn tại Trung Quốc. Anthropic xác nhận đây là "thí nghiệm" để chống unauthorized reseller và model distillation. Code đã được gỡ trong v2.1.197, nhưng câu hỏi về sự minh bạch vẫn chưa được trả lời đầy đủ.

Bối cảnh: Anthropic và cuộc chiến chống model theft từ Trung Quốc

Anthropic không cung cấp dịch vụ chính thức tại Trung Quốc vì lý do an ninh quốc gia, nhưng nhiều developer Trung Quốc vẫn truy cập Claude thông qua API reseller và proxy service không được Anthropic ủy quyền. Đây vừa là vấn đề doanh thu - mất khoản thu từ unauthorized usage - vừa là mối lo bảo mật công nghệ: model distillation, tức dùng output của Claude để training model riêng.

Trước sự kiện này, vào tháng 2/2026, Anthropic đã công khai tuyên bố triển khai các biện pháp chống model distillation mạnh hơn, sau khi có báo cáo một số công ty AI Trung Quốc sử dụng output của Claude để train model riêng - vi phạm Terms of Service. Đây là bối cảnh dẫn đến quyết định bí mật triển khai cơ chế phát hiện vào tháng 3/2026, mà không có bất kỳ thông báo nào với người dùng.

Cách phát hiện: Khi reverse-engineering gặp obfuscation không thông thường

LegitMichel777 cho biết trong quá trình phân tích Claude Code, anh bắt gặp một đoạn code không được ghi lại trong changelog và được che giấu bằng kỹ thuật mã hóa bất thường đối với một production CLI tool. Cụ thể, code dùng XOR với key 91 kết hợp base64 để giấu danh sách domain - một kỹ thuật phổ biến hơn trong phân tích malware hơn là software phân phối qua npm cho hàng triệu developer.

Bài đăng nhanh chóng viral. Tweet từ @IntCyberDigest tóm tắt phát hiện này đạt 5 triệu lượt xem, 17.135 lượt thích và 3.475 lượt retweet trong vòng chưa đầy 24 giờ - cho thấy mức độ quan tâm của cộng đồng developer toàn cầu với vụ việc này.

Cơ chế steganography: Ẩn tín hiệu vào câu chào mỗi ngày

Sơ đồ steganography: Claude Code thay đổi định dạng ngày và Unicode apostrophe để nhận diện người dùng Trung Quốc
Hai thay đổi steganographic ẩn vào câu "Today's date is" trong system prompt - người dùng không thể nhận biết, nhưng Anthropic đọc được từ server log

Phần kỹ thuật của phát hiện này mới thực sự đáng chú ý. Thay vì gửi một trường telemetry riêng biệt - vốn dễ bị phát hiện - Claude Code inject tín hiệu vào câu system prompt thông thường xuất hiện mỗi session: "Today's date is 2026-06-30". Cơ chế gồm hai lớp:

Thay đổi 1 - Định dạng ngày: Nếu timezone của người dùng là Asia/Shanghai hoặc Asia/Urumqi (múi giờ Trung Quốc), dấu gạch ngang trong ngày bị thay thành dấu gạch chéo. Câu trở thành Today's date is 2026/06/30 - trông tự nhiên với người đọc, nhưng khác biệt có thể nhận diện tự động từ server.

Thay đổi 2 - Unicode apostrophe: Dấu nháy trong "Today's" bị hoán đổi giữa ba ký tự trông giống hệt nhau nhưng có mã Unicode khác biệt, tùy thuộc vào kết hợp tín hiệu:

  • U+2019 (right single quotation mark) - người dùng bình thường, không khớp bất kỳ flag nào
  • U+02BC (modifier letter apostrophe) - proxy hostname khớp domain Trung Quốc trong danh sách ẩn
  • U+02B9 (modifier letter prime) - khớp cả domain lẫn AI lab keyword

Danh sách domain bị nhắm bao gồm các tên tuổi lớn nhất trong hệ sinh thái AI Trung Quốc: Baidu, Alibaba, Ant Group, ByteDance, Moonshot AI, MiniMax, Stepfun - cùng nhiều proxy và mirror service không chính thức. Ngoài cơ chế steganography, trong code còn có feature riêng tên ANTI_DISTILLATION_CC, inject dữ liệu tool giả vào API request nhằm làm nhiễu training data của các lab đối thủ nếu họ dùng Claude để train model.

Anthropic xác nhận - nhưng không giải thích đầy đủ

Thariq Shihipar, kỹ sư trong team Claude Code tại Anthropic, phản hồi trực tiếp trên Reddit:

"This is an experiment we launched in March that was meant to prevent account abuse from unauthorized resellers and protect against distillation. We've landed stronger mitigations since then and we've actually been meaning to take this down for a while."

Anh xác nhận team đã merge pull request gỡ code và sẽ có trong phiên bản tiếp theo. Claude Code v2.1.197 được publish lên npm registry sáng 1/7/2026. Tuy nhiên, changelog của phiên bản này không xác nhận rõ ràng việc xóa cơ chế, và Anthropic không trả lời câu hỏi về nội dung cụ thể của "stronger mitigations" thay thế là gì.

Tại sao đây là vấn đề nghiêm trọng hơn vẻ ngoài

Câu hỏi không phải là liệu Anthropic có lý do chính đáng để theo dõi unauthorized usage hay không - rõ ràng họ có. Vấn đề nằm ở cách cụ thể họ lựa chọn:

Không có khai báo nào. Cơ chế hoạt động từ tháng 3/2026 đến khi bị phát hiện, không được đề cập trong Terms of Service, Privacy Policy hay bất kỳ changelog nào. Người dùng không có cơ hội opt-out hoặc biết mình đang bị gắn cờ theo cách này.

Kỹ thuật obfuscation gợi lên câu hỏi về chủ ý. Dùng XOR với key 91 để mã hóa danh sách domain là kỹ thuật phổ biến trong phân tích malware, không phải lựa chọn thông thường của production software được phân phối công khai. Việc chủ động che giấu cơ chế khỏi static analysis là quyết định có ý thức - không phải vô tình.

Phạm vi nhắm rộng hơn dự kiến. Cơ chế không phân biệt giữa unauthorized reseller và developer hợp pháp. Bất kỳ ai dùng proxy Trung Quốc - bao gồm developer nước ngoài làm việc với công ty Trung Quốc hoặc đơn giản là dùng VPN - đều bị gắn cờ như nhau.

"Stronger mitigations" là gì vẫn chưa rõ. Anthropic từ chối giải thích cụ thể những biện pháp thay thế, khiến không thể đánh giá liệu vấn đề thực sự được giải quyết hay chỉ trở nên kín đáo hơn.

Security researcher Thereallo tóm tắt ngắn gọn: "This is not a malicious feature, but it is a weird choice for a developer tool that asks for trust."

Kết - Niềm tin không thể được xây dựng bằng cách gỡ code khi bị bắt gặp

Anthropic được thành lập với tuyên bố cốt lõi về AI safety và ethical AI development. Vụ việc này không đặt câu hỏi về đạo đức của mục tiêu - chống unauthorized reseller là hợp lý - mà đặt câu hỏi về phương thức: một công ty tuyên bố đặt niềm tin của người dùng lên hàng đầu đã chọn cách triển khai surveillance ẩn, dùng kỹ thuật obfuscation, không khai báo trong Terms of Service, và chỉ xác nhận sau khi bị cộng đồng phát hiện.

Phản ứng của Anthropic trong 24 giờ sau vụ việc đáng ghi nhận - họ xác nhận thay vì phủ nhận, và gỡ code nhanh chóng. Nhưng sự minh bạch thực sự không phải là phản ứng tốt khi bị phát hiện - mà là không bao giờ làm điều này mà không thông báo từ đầu.

Claude Code đang là công cụ AI coding agent được sử dụng rộng rãi nhất hiện tại. Với quyền truy cập repo và khả năng thực thi lệnh, mức độ tin tưởng người dùng đặt vào tool này là rất cao. Vụ việc này là lời nhắc nhở rằng trust model của bất kỳ developer tool nào - dù đến từ công ty có danh tiếng tốt đến đâu - cũng cần được xem xét cẩn thận.

via International Cyber Digest · via The Decoder · via The Register