- Hiện đang có một vụ kiện tập thể chống lại Meta, và theo các tài liệu của tòa án, công ty này có thể đã vi phạm Wiretap Act.
- Bài viết này dựa trên các tài liệu của tòa án và phân tích dịch ngược ứng dụng Onavo Protect.
- Facebook đã sử dụng tấn công MITM để chặn bắt lưu lượng HTTPS được mã hóa của người dùng, và gọi phương pháp này là "ssl bump".
Tóm tắt kỹ thuật
- Ứng dụng Android Onavo Protect có chứa mã nhằm dụ người dùng cài đặt chứng chỉ CA do "Facebook Research" phát hành.
- Chứng chỉ này cần thiết để Facebook giải mã lưu lượng TLS.
- Ứng dụng được phát hành năm 2016 có kèm chứng chỉ Facebook Research CA, một số chứng chỉ còn hiệu lực đến năm 2027.
- Khi các phiên bản Android mới ra mắt, phương pháp này không còn khả dụng nữa.
- Miền phân tích của ứng dụng Snapchat không dùng certificate pinning, nên có thể bị tấn công MITM.
- Ngoài thống kê sử dụng ứng dụng, còn có chức năng thu thập dữ liệu nhạy cảm như IMSI.
Cách hoạt động
- Cài đặt một chứng chỉ đáng tin cậy lên thiết bị, chuyển toàn bộ lưu lượng qua VPN đến hạ tầng của Facebook, rồi dùng proxy cache Squid để giải mã lưu lượng.
- Lưu lượng tới các miền của Snapchat, Amazon và YouTube đã bị chặn bắt.
- Theo thời gian, do Android tăng cường bảo mật, tỷ lệ thành công của chiến lược này đã giảm xuống.
- Facebook đã cân nhắc Accessibility API như một phương án thay thế.
Động cơ
- Mark Zuckerberg đã đề cập rằng cần có phân tích đáng tin cậy về Snapchat.
- Có ý định triển khai sang các ứng dụng khác kỹ thuật chặn bắt lưu lượng của các miền cụ thể thông qua ứng dụng VPN Onavo Protect.
- Facebook đã mua lại Onavo vào năm 2013 với giá khoảng 120 triệu USD và tìm cách tận dụng tốt công nghệ này.
Phân tích kỹ thuật
- Lý do chúng ta tin tưởng website hoặc máy chủ từ xa qua HTTPS/TLS là vì các chứng chỉ công khai được lưu trong kho tin cậy của thiết bị.
- Nếu thêm một chứng chỉ tự ký vào kho tin cậy, có thể chặn bắt lưu lượng TLS được mã hóa.
- Từ Android 11, các chứng chỉ do người dùng thêm vào không còn được đa số ứng dụng tin cậy nữa.
- Ứng dụng Snapchat không dùng certificate pinning cho miền phân tích.
Kết luận
- Việc Facebook giải mã lưu lượng HTTPS mà không có sự đồng ý của người dùng có thể vi phạm các chuẩn mực đạo đức và gây ra vấn đề pháp lý.
- Từ sau Android 7, ứng dụng đã được thay đổi để không còn tin cậy chứng chỉ trong kho người dùng.
- Facebook đã tìm cách thu thập dữ liệu nhạy cảm như IMSI.
Tóm tắt của GN⁺
- Bài viết này giải thích chi tiết các phương pháp kỹ thuật mà Facebook đã dùng để chặn bắt lưu lượng của đối thủ.
- Do Android tăng cường bảo mật, các phương pháp này không còn hiệu quả nữa.
- Khả năng Facebook lạm dụng Accessibility API đặt ra các vấn đề đạo đức.
- Một số dự án khác có chức năng tương tự gồm các công cụ phân tích lưu lượng qua VPN.
1 bình luận
Ý kiến trên Hacker News
Có vẻ FB đã trả tiền cho người dùng SC để tham gia "nghiên cứu thị trường" và cài proxy
Việc nhân viên FB công khai nói về MITM (tấn công trung gian) và còn bảo các công ty khác đưa nó vào là một hành động cực kỳ ngớ ngẩn
Việc phải tải ứng dụng Onavo đồng nghĩa người dùng có một mức độ lựa chọn nhất định
Đây là công ty công nghệ duy nhất mà tôi không thể có thiện cảm
Vụ kiện tập thể hiện tại nhắm vào Meta có bao gồm các tài liệu cáo buộc vi phạm Wiretap Act
Có cảm giác Facebook đang vận hành như một tiền đồn của NSA
Cần phải có tiền lệ pháp lý liên quan đến SSLbump
Một người họ hàng của tôi từng định tham gia nghiên cứu thị trường rồi bỏ dở
Trước khi truyền thông tin nhạy cảm qua Internet thì phải có bước trao đổi chứng chỉ TLS
Rất có thể các tác nhân xấu như Meta đang sử dụng nhiều "dark pattern"