Một lỗi trong Safari trong cách xử lý API IndexedDB có khả năng làm rò rỉ thông tin về thói quen duyệt web của người dùng, một vấn đề có thể được sử dụng để tiết lộ danh tính của người dùng.
Lịch sử duyệt web của người dùng được hiển thị trên Safarileaks, gồm cả ID Google. Ảnh: 9to5Mac
Apple đã liên tục cố gắng tập trung vào quyền riêng tư của Safari, với việc đưa ra các sáng kiến để ngăn chặn việc theo dõi trên nhiều trang web và Báo cáo về quyền riêng tư của Safari nhằm giúp bảo vệ người dùng. Tuy nhiên, một lỗi trong cách các chức năng của Safari có thể đã hoàn tác tất cả công việc đó.
Cụ thể, một lỗi trong quá trình thực hiện IndexedDB của Safari trên MacOS và iOS dẫn đến việc trang web có thể thấy danh sách tên database của bất kỳ tên miền nào, không chỉ tên miền của bản thân trang web đó. Danh sách database sau đó có thể được dùng để trích xuất thông tin xác nhận từ một bảng tra cứu. Ví dụ, dịch vụ của Google lưu trữ một phiên bản IndexedDB tương ứng với mỗi tài khoản Google đăng nhập, kèm theo ID tài khoản tương ứng với tên của database.
Bằng cách sử dụng lỗ hổng FingerprintJS mô tả, kẻ xấu có thể lấy ID tài khoản Google và dùng ID đó để tìm thêm thông tin cá nhân của người dùng, do ID này được dùng để yêu cầu API các dịch vụ khác của Google. Trong phiên bản demo trên safarileaks.com, ảnh đại diện của tài khoản Google bạn đang dùng sẽ được hiện lên.
Theo các chuyên gia, đây là lỗi nghiêm trọng và vi phạm quyền riêng tư người dùng một cách rõ ràng. Nó còn trở nên nguy hiểm đối với một số dịch vụ mà địa chỉ web có chứa ID của người dùng. Ví dụ, với dịch vụ của Google, trình duyệt Safari lưu trữ một phiên bản IndexedDB ứng với mỗi tài khoản mà người dùng đăng nhập, trong đó có kèm theo ID tài khoản. Trang 9to5Mac cho biết đã tiến hành thử khai thác lỗ hổng và ít nhất có thể biết được ảnh đại diện của tài khoản Google dựa trên ID nói trên.
Theo FingerprintJS, người dùng Safari hiện không có cách nào thực sự hiệu quả để tự bảo vệ mình cho đến khi Apple khắc phục vấn đề. Phương pháp kỹ thuật tạm thời là kích hoạt chế độ chặn JavaScript. Tuy nhiên giải pháp này khiến việc duyệt web trở nên khó khăn hơn. Một cách khác là dùng trình duyệt khác thay thế cho Safari. Hiện nay, rất nhiều người sử dụng Safari do đây là trình duyệt mặc định trên iOS và iPad OS.