Một cuộc điều tra kỹ thuật độc lập công bố ngày 20 tháng 9 cho biết bộ thu thập quảng cáo của OpenAI cài một cookie xuyên trang (cross-site) vào trình duyệt người dùng, cho phép các trang thương mại đặt quảng cáo gửi lại hành vi duyệt web và mua sắm ngoài ChatGPT của người dùng cho OpenAI, đồng thời gắn dữ liệu đó với tài khoản ChatGPT tương ứng. Bài viết được đẩy lên mục nổi bật trên Hacker News.
Tác giả đã tái hiện toàn bộ quy trình trên điện thoại của chính mình bằng hai phương pháp bắt gói tin độc lập, đồng thời đối chiếu với dữ liệu lưu lượng tích lũy trong vài tháng. Đến nay OpenAI chưa phản hồi các câu hỏi cụ thể nêu trong bài.
Hành trình của một chiếc cookie
Theo ghi chép bắt gói tin trong bài, quy trình gồm ba bước. Trang ChatGPT trước tiên tạo một mã định danh 16 byte, gửi yêu cầu tới /backend-api/bazaar/obi/sync-token, nhận về một token ký RS256 có hiệu lực 60 giây, gắn tài khoản hiện tại với mã định danh này. Sau đó trang gửi token này xuyên trang tới bzr.openai.com, nơi ghi cookie __obi vào tên miền .openai.com với các thuộc tính SameSite=None, Secure, HttpOnly, thời hạn 31536000 giây, tức một năm.
Sau đó khi người dùng ghé các trang thương mại có gắn mã pixel của OpenAI, trình duyệt sẽ gửi __obi kèm dữ liệu trang cho OpenAI. Các trường mà pixel thu thập gồm email, số điện thoại và tên đã băm SHA-256, cùng quốc gia, khu vực, thành phố và mã bưu điện ở dạng văn bản thuần, và đường dẫn trang đã bỏ tham số truy vấn.
Trong 881 pixel mà tác giả quan sát được, 638 pixel bật chế độ tự động khớp; lượng thông tin danh tính pixel tự thu thập từ trang so với thông tin do thương gia chủ động gửi là 685 so với 255. Trong các đường dẫn bị ghi lại có trang bệnh lý y tế, trang dẫn khách cho dịch vụ giải quyết nợ và một biểu mẫu đăng ký kiện tụng.
Cookie phân tích hay tiếp thị
Điểm gây tranh cãi nhất nằm ở cách phân loại. Chính sách cookie của OpenAI xếp __obi vào nhóm cookie phân tích, với lời giải thích là giúp công ty hiểu cách dịch vụ được sử dụng. Mỗi token đồng bộ mà tác giả giải mã đều mang trường consent_decision: analytics_allowed. Nhận định trong bài là:
"Someone who allows analytics and refuses marketing gets this."
Người cho phép phân tích nhưng từ chối tiếp thị vẫn sẽ bị gắn cookie này.
Trên một thiết bị của tác giả, cùng một giá trị __obi đã được 12 trang thương mại gửi đi, gồm Chewy, Wayfair, ThriftBooks, Eventbrite, HelloFresh, Coursera, SeatGeek. Trên mẫu rộng hơn, trong 30 giá trị cookie khác nhau có 12 giá trị xuất hiện ở nhiều hơn một nhà quảng cáo, trong đó có một giá trị xuất hiện ở 10 nhà quảng cáo.
Ngày 14 tháng 9, tác giả đã gửi email tới địa chỉ truyền thông và quyền riêng tư của OpenAI, hỏi hai câu: vì sao __obi được xếp vào nhóm phân tích, và những người từ chối cấp quyền tiếp thị có còn nhận được cookie này hay không. Bộ phận hỗ trợ của OpenAI xác nhận đã nhận được thư nhưng không trả lời cả hai câu hỏi.
Người dùng nói tiếng Trung có bị ảnh hưởng không
Cơ chế này hiện có ranh giới khá rõ. Theo thử nghiệm trong bài, Chrome trên Android chạy được toàn bộ chuỗi này; Safari trên iPhone có tính năng chống theo dõi thông minh, mặc định chặn cookie bên thứ ba nên chuỗi này không thực hiện được; tác giả chưa thử nghiệm trên Chrome máy tính để bàn. Ngoài ra, trung bình khoảng cứ năm phiên ChatGPT mới tạo một token đồng bộ, cho thấy OpenAI đang triển khai theo từng đợt nhỏ.
ChatGPT không cung cấp dịch vụ cho Trung Quốc đại lục, nhưng trong số người dùng nói tiếng Trung ở Hồng Kông, Ma Cao, Đài Loan và hải ngoại, không ít người dùng điện thoại Android đăng nhập ChatGPT và đồng thời mua sắm trên các trang thương mại điện tử Bắc Mỹ. 12 thương gia được nêu tên đều là các trang hướng tới thị trường Mỹ, nên mức độ rủi ro tùy thuộc vào việc bạn có mua sắm trên những trang đó hay không. Muốn tự bảo vệ trước, hãy bật tùy chọn "chặn cookie bên thứ ba" trong cài đặt Chrome, chuỗi kết nối này sẽ bị cắt đứt.
Cuộc điều tra này đến từ việc bắt gói tin của một tác giả duy nhất, mẫu dữ liệu lấy từ thiết bị và tập dữ liệu của chính người đó, OpenAI hiện chưa xác nhận hay phủ nhận bất kỳ chi tiết kỹ thuật nào trong đó.
Nguồn tham khảo: báo cáo điều tra độc lập của Buchodi (thuộc tính cookie, trường token, số lượng pixel và tên máy chủ), thảo luận trên Hacker News, CocoLoop, Chính sách cookie của OpenAI (cách phân loại __obi).