Các nhà nghiên cứu an ninh mạng vừa tiết lộ một vấn đề bảo mật đối với công cụ iCloud Private Relay của Apple, có thể làm lộ địa chỉ IP thực của người dùng.
Được giới thiệu cùng với iOS 15, iCloud Private Relay sử dụng kiến trúc dual-hop để đảm bảo quyền riêng tư của người dùng bằng cách định tuyến lưu lượng truy cập web Safari qua hai relay. Cơ chế này giúp ngăn chặn bất kỳ bên thứ ba nào, kể cả Apple, xác định được nguồn gốc của yêu cầu và các trang web đang được truy cập. Tính năng này được cung cấp như một phần của gói đăng ký iCloud+.
Hai nhà nghiên cứu Talal Haj Bakry và Tommy Mysk, những người đã phát hiện ra vấn đề này, cho biết lỗi bắt nguồn từ ba tính năng trong WebKit của Apple: DNS prefetching, WebAuthn Related Origin Requests và WebTransport. WebKit là công cụ trình duyệt web mặc định được Safari và tất cả các trình duyệt bên thứ ba trên iOS và iPadOS sử dụng, chẳng hạn như Google Chrome, Microsoft Edge, Mozilla Firefox, Brave và những trình duyệt khác.
Ba tính năng này "bỏ qua proxy đã được cấu hình và gửi lưu lượng truy cập trực tiếp từ thiết bị, điều này làm lộ mạng thực của người dùng," các nhà nghiên cứu cho biết. "Sự cố rò rỉ tương tự cũng ảnh hưởng đến iCloud Private Relay của Apple."
Vấn đề này cũng ảnh hưởng đến macOS, cũng như bất kỳ trình duyệt dựa trên WebKit nào khác dựa vào các API cấu hình proxy của WebKit. Trong mỗi trường hợp này, địa chỉ IP thực tế của thiết bị sẽ bị rò rỉ qua:
- DNS prefetching: Giải quyết tên miền thông qua đường dẫn DNS bình thường của thiết bị thay vì qua proxy do trình duyệt thiết lập.
- WebAuthn Related Origin Requests: Khiến dịch vụ thông tin xác thực của hệ điều hành tìm nạp tệp xác thực trực tiếp từ thiết bị.
- WebTransport: Mở kết nối HTTP/3 trực tiếp và bỏ qua proxy.
Vì WebAuthn cho phép người dùng đăng nhập vào các trang web bằng passkeys, bất kỳ trang web nào tuyên bố hỗ trợ tiêu chuẩn web này đều có thể xem địa chỉ IP thực của người dùng ngay cả khi iCloud Private Relay đang bật.
"Bất kỳ trang web nào cũng có thể cấu hình WebAuthn (API được sử dụng cho passkeys) theo cách khiến WebKit tiết lộ địa chỉ IP thực của trình duyệt, bỏ qua cả cấu hình proxy và iCloud Private Relay trong Safari," Mysk chia sẻ với The Hacker News.
"Do bản chất của lỗi này, trang web phải cố tình khai thác nó để liên kết phiên duyệt web hiện tại của người dùng với địa chỉ IP bị rò rỉ. Điều này không yêu cầu bất kỳ sự tương tác nào từ người dùng hoặc việc sử dụng passkeys."
Một trang web bằng chứng khái niệm (PoC) có tên là "leaks.psylo[.]app" đã được cung cấp để bất kỳ ai cũng có thể kiểm tra xem địa chỉ IP thực của họ có bị rò rỉ hay không, ngay cả khi Private Relay đang bật.
Trong khi phần "HTTPS Traffic" đề cập đến lưu lượng mạng thông thường mà WebKit tạo ra khi kết nối với một trang web, thì phần "Possible IP leaks" cho thấy cách địa chỉ IP thực của thiết bị có thể rò rỉ ra khỏi đường dẫn proxy đã định cấu hình.
"Chúng tôi sử dụng thuật ngữ 'có thể' vì không phải trình duyệt nào cũng bị ảnh hưởng (ví dụ: Chrome trên máy tính thì không), và các vụ rò rỉ cũng được giảm thiểu khi người dùng kết nối với một VPN," Mysk nói thêm.
Apple đã không phản hồi ngay lập tức yêu cầu bình luận. Tuy nhiên, công ty đã trả lời 404 Media rằng họ đang điều tra báo cáo của các nhà nghiên cứu.
Đây không phải là lần đầu tiên các vấn đề bảo mật được phát hiện trong iCloud Private Relay. Ngay sau khi tính năng này được phát hành vào năm 2021, FingerprintJS đã làm nổi bật một cơ chế dựa trên WebRTC làm lộ địa chỉ IP thực của máy khách.
Tiết lộ này được đưa ra chỉ hơn một tháng sau khi Apple khắc phục một lỗ hổng khác trong dịch vụ Hide My Email, vốn cho phép địa chỉ email thực của người dùng bị lộ trong một số điều kiện nhất định, làm suy yếu các cam kết về quyền riêng tư của tính năng này.