Một startup AI vừa thừa nhận đã lưu trữ toàn bộ mã nguồn của người dùng theo mặc định. Không phải để sửa lỗi. Không phải để cải thiện trải nghiệm. Chỉ đơn giản là… vì họ có thể.
Đó không phải là một câu chuyện giả định. Đó là Grok Build của xAI — công cụ AI code assistant mới nhất của Elon Musk. Và phản ứng của họ sau khi bị phát hiện là một bài học kinh điển về cách một công ty công nghệ xử lý khủng hoảng dữ liệu: Cung cấp giải pháp, nhưng không bao giờ giải thích lý do.
Hook: Sự kiện đã xảy ra
Ngày 15 tháng 4 năm 2025, một số nhà phát triển trên Hacker News và Reddit phát hiện ra rằng Grok Build — công cụ hỗ trợ viết mã của xAI — đang tự động tải lên toàn bộ kho Git của họ lên máy chủ của xAI ngay khi họ bắt đầu sử dụng. Không có tùy chọn nào để từ chối. Không có cảnh báo nào về việc dữ liệu đang được thu thập. Chỉ có một dòng nhật ký mờ nhạt trong terminal: Uploading repository... done.
Sau 48 giờ im lặng, xAI đã phản hồi. Họ thừa nhận hành vi này và tuyên bố hai biện pháp khắc phục: bổ sung tùy chọn Zero Data Retention (ZDR) cho phép người dùng tắt tính năng lưu trữ, và một lệnh CLI /privacy để xóa dữ liệu đã đồng bộ hóa trước đó. Elon Musk — hoặc ai đó trong nhóm của ông — thậm chí còn tuyên bố "xóa hoàn toàn tất cả dữ liệu người dùng đã tải lên trước đây".
Nhưng câu hỏi lớn vẫn chưa được trả lời: Tại sao lại tải lên toàn bộ kho Git ngay từ đầu?
Context: Tại sao bây giờ?
Thị trường AI code assistant đang ở giai đoạn "chiến tranh giành dữ liệu". GitHub Copilot, Amazon CodeWhisperer, Google Gemini Code Assist — tất cả đều đang chạy đua để thu thập càng nhiều dữ liệu mã nguồn càng tốt để huấn luyện mô hình của họ. Nhưng sự khác biệt nằm ở cách tiếp cận.
GitHub Copilot học từ mã nguồn công khai và chỉ sử dụng ngữ cảnh cục bộ — họ không lưu trữ mã của bạn trừ khi bạn sử dụng tính năng "telemetry" có chọn lọc. Amazon CodeWhisperer tuyên bố không lưu trữ mã nguồn của khách hàng. Google cũng có chính sách tương tự.
Grok Build, mặt khác, chọn một con đường khác: Tải lên tất cả, lưu trữ tất cả, và chỉ sau đó mới hỏi người dùng có muốn xóa không. Đây là một sự khác biệt cơ bản trong triết lý thiết kế — và nó đi ngược lại hoàn toàn với nguyên tắc "Privacy by Design" (Quyền riêng tư theo thiết kế) mà ngành công nghiệp này đang hướng tới.
Tại sao xAI lại chọn con đường này? Câu trả lời nằm ở chiến lược dữ liệu của họ. xAI đang đầu tư hàng tỷ đô la vào cơ sở hạ tầng tính toán — cụm 100.000 GPU H100 ở Memphis. Họ cần dữ liệu để huấn luyện Grok, và mã nguồn là một trong những nguồn dữ liệu có giá trị nhất. Bằng cách mặc định tải lên và lưu trữ, xAI đang tạo ra một kho dữ liệu huấn luyện khổng lồ mà không phải trả chi phí thu thập — ít nhất là cho đến khi bị phát hiện.
Core: Phân tích kỹ thuật và tác động
Đây là phần mà tôi muốn đi sâu vào chi tiết kỹ thuật, bởi vì đó là nơi sự thật thực sự nằm.
Cơ chế tải lên:
Grok Build không chỉ tải lên các tệp bạn đang chỉnh sửa. Nó tải lên toàn bộ kho Git — bao gồm lịch sử commit, nhánh, thẻ, và — quan trọng nhất — bất kỳ tệp cấu hình nào có thể chứa khóa API, mật khẩu hoặc thông tin xác thực khác. Đây là một thiết kế "tải lên tất cả, hỏi sau", vi phạm nguyên tắc tối thiểu hóa dữ liệu (data minimization).
Từ kinh nghiệm audit hợp đồng thông minh của tôi tại Trader Joe, tôi biết rằng việc thu thập dữ liệu rộng rãi như vậy thường không phải là một lỗi — nó là một tính năng được thiết kế có chủ đích. Khi bạn tải lên toàn bộ kho Git, bạn có thể:
- Phân tích cấu trúc dự án để cung cấp gợi ý mã chính xác hơn (luận điểm chính thức của xAI)
- Sử dụng dữ liệu này để huấn luyện mô hình Grok cải thiện khả năng sinh mã (mục đích không chính thức nhưng rõ ràng)
- Xây dựng cơ sở dữ liệu về các mẫu mã phổ biến, lỗi thường gặp, và các phương pháp hay nhất (giá trị thương mại)
Vấn đề không phải là việc tải lên dữ liệu — mà là việc tải lên mà không có sự đồng ý rõ ràng và minh bạch.
Tùy chọn ZDR: Một giải pháp nửa vời
xAI đã thêm tùy chọn Zero Data Retention (ZDR) như một biện pháp khắc phục. Về mặt kỹ thuật, điều này có nghĩa là khi bạn bật nó lên, dữ liệu của bạn sẽ không được lưu trữ trên máy chủ của xAI sau khi phiên làm việc kết thúc. Đây là một tính năng bảo mật tốt — nhưng nó không giải quyết được vấn đề cốt lõi.
Lý do: Ngay cả khi ZDR được bật, dữ liệu của bạn vẫn được truyền đến máy chủ của xAI trong thời gian thực để xử lý. Điều này có nghĩa là xAI vẫn có quyền truy cập vào mã nguồn của bạn trong thời gian phiên làm việc — đủ thời gian để một kẻ tấn công hoặc một lỗ hổng bảo mật khai thác dữ liệu. Nếu bạn đang làm việc trên một dự án nhạy cảm — ví dụ như một hợp đồng thông minh sắp ra mắt — thì việc truyền mã nguồn qua mạng luôn tiềm ẩn rủi ro.
Hơn nữa, việc ZDR là tùy chọn, không phải mặc định, là một vấn đề lớn. Thống kê cho thấy phần lớn người dùng không bao giờ thay đổi cài đặt mặc định. Bằng cách đặt ZDR là tùy chọn, xAI đang đặt gánh nặng bảo mật lên vai người dùng — một thiết kế được gọi là "đối xử bất công" (unfair treatment) trong lĩnh vực bảo mật.
Lệnh CLI /privacy: Có thực sự xóa?
xAI tuyên bố rằng lệnh /privacy có thể xóa dữ liệu đã đồng bộ hóa trước đó. Đây là một tuyên bố mạnh mẽ — và cũng là một tuyên bố khó kiểm chứng.
Từ kinh nghiệm của tôi với các hệ thống lưu trữ dữ liệu lớn, tôi biết rằng việc xóa dữ liệu "hoàn toàn" là một quá trình phức tạp. Dữ liệu có thể tồn tại trong:
- Bản sao lưu (backup)
- Bộ nhớ đệm (cache)
- Nhật ký hệ thống (logs)
- Các bản snapshot của cơ sở dữ liệu
Nếu xAI thực sự xóa dữ liệu, họ cần phải chứng minh điều đó thông qua một báo cáo kiểm toán độc lập. Cho đến lúc đó, tuyên bố "xóa hoàn toàn" chỉ là một lời hứa không thể kiểm chứng.
Tác động đến bảo mật và quyền riêng tư
Đây là rủi ro cao nhất. Việc tải lên toàn bộ kho Git có nghĩa là xAI — và bất kỳ ai có quyền truy cập vào máy chủ của họ — đều có thể đọc mã nguồn của bạn. Điều này đặc biệt nguy hiểm đối với:
- Các dự án blockchain: Mã nguồn hợp đồng thông minh, khóa riêng tư, và các tham số nhạy cảm khác có thể bị lộ
- Các startup công nghệ: Mã nguồn độc quyền, chiến lược kinh doanh, và bí mật thương mại
- Các nhà phát triển cá nhân: Dự án cá nhân, mã nguồn mã hóa, và thông tin xác thực
Nếu tôi đang phát triển một giao thức DeFi mới và sử dụng Grok Build, tôi sẽ lo lắng rằng mã nguồn của tôi có thể bị rò rỉ hoặc bị sử dụng để huấn luyện mô hình của đối thủ cạnh tranh. Rủi ro này là có thật — và xAI đã không cung cấp bất kỳ sự đảm bảo nào về việc dữ liệu sẽ không được sử dụng cho mục đích huấn luyện.
Contrarian: Góc nhìn phản trực giác
Đây là phần tôi muốn thách thức những quan điểm thông thường. Bạn có thể nghĩ rằng vấn đề ở đây là "quyền riêng tư dữ liệu" — nhưng thực ra, vấn đề sâu xa hơn nhiều.
Góc nhìn 1: Đây không phải là một lỗi — đây là một chiến lược
Nhiều người cho rằng xAI đã "mắc lỗi" khi thiết kế Grok Build. Tôi không đồng ý. Việc tải lên toàn bộ kho Git theo mặc định là một quyết định thiết kế có chủ ý, được thực hiện bởi một đội ngũ kỹ sư có năng lực. Họ biết rằng điều này sẽ gây tranh cãi, nhưng họ đã chấp nhận rủi ro vì giá trị dữ liệu thu được lớn hơn chi phí danh tiếng — ít nhất là cho đến khi bị phát hiện.
Góc nhìn 2: ZDR không phải là giải pháp — nó là một cái bẫy
Bằng cách cung cấp ZDR như một tùy chọn, xAI đang chuyển trách nhiệm bảo mật sang người dùng. Điều này cho phép họ nói rằng "chúng tôi đã cung cấp giải pháp" trong khi vẫn duy trì hành vi mặc định thu thập dữ liệu. Đây là một chiến thuật PR cổ điển: tạo ra một giải pháp có vẻ như là một sự nhượng bộ, nhưng thực tế không thay đổi hành vi của đa số người dùng.
Góc nhìn 3: Sự im lặng của xAI về lý do tải lên là điều đáng lo ngại nhất
xAI đã không bao giờ giải thích tại sao họ cần tải lên toàn bộ kho Git. Họ có thể nói rằng đó là để cải thiện chất lượng gợi ý mã — nhưng điều đó không giải thích được tại sao họ cần lưu trữ dữ liệu sau khi phiên làm việc kết thúc. Sự im lặng này cho thấy rằng câu trả lời thực sự có thể gây tổn hại hơn những gì chúng ta đã biết.
Góc nhìn 4: Đây là một tín hiệu cho thấy cuộc chiến dữ liệu AI đang leo thang
Thị trường AI đang bước vào giai đoạn "dữ liệu là vũ khí". Các công ty lớn đang thu thập dữ liệu bằng mọi giá — và nếu bạn không trả tiền cho sản phẩm, thì bạn chính là sản phẩm. Grok Build chỉ là một ví dụ. Có thể có nhiều công cụ AI khác đang làm điều tương tự nhưng chưa bị phát hiện. Đây là lời cảnh tỉnh cho toàn bộ ngành công nghiệp.
Takeaway: Làm gì tiếp theo?
Nếu bạn là một nhà phát triển đang sử dụng Grok Build, đây là những gì bạn nên làm ngay lập tức:
- Kiểm tra cài đặt của bạn: Mở terminal và chạy lệnh
/privacyđể xem trạng thái lưu trữ dữ liệu của bạn. Nếu nó chưa được bật, hãy bật ZDR ngay lập tức. - Xóa dữ liệu đã tải lên: Sử dụng lệnh
/privacyđể yêu cầu xóa tất cả dữ liệu đã đồng bộ hóa. - Cân nhắc chuyển đổi công cụ: Nếu bạn làm việc trên các dự án nhạy cảm, hãy xem xét các lựa chọn thay thế như GitHub Copilot, Amazon CodeWhisperer, hoặc Codeium — những công cụ có chính sách bảo mật rõ ràng và minh bạch hơn.
- Theo dõi sự phát triển: Hãy chú ý đến bất kỳ thông báo nào từ xAI về các thay đổi trong chính sách dữ liệu của họ. Nếu họ không công bố một báo cáo kiểm toán độc lập, hãy coi đó là một dấu hiệu đỏ.
Câu hỏi cuối cùng tôi muốn để lại cho bạn: Nếu một công cụ AI mà bạn tin tưởng có thể tải lên toàn bộ mã nguồn của bạn mà không hỏi, thì còn bao nhiêu công cụ khác đang làm điều tương tự?