Lỗi trình duyệt Apple Safari cho phép hacker theo dõi người dùng trên nhiều trang web

Lỗi trình duyệt Apple Safari cho phép hacker theo dõi người dùng trên nhiều trang web

Một lỗi trên trình duyệt Apple Safari 15 được giới thiệu trong quá trình triaển khai API IndexedDB có thể bị các trang web độc hại lạm dụng để theo dõi hoạt động trực tuyến của người dùng, thậm chí là tiết lộ danh tính của họ.

Lỗi trình duyệt Apple Safari cho phép hacker theo dõi người dùng trên nhiều trang web

Lỗ hổng được đặt tên là IndexedDB Leaks, được tiết lộ bởi công ty phần mềm chống gian lận FingerprintJS, công ty đã báo cáo vấn đề với nhà sản xuất iPhone vào ngày 28 tháng 11 năm 2021.

IndexedDB là một giao diện lập trình ứng dụng JavaScript cấp thấp (API) được cung cấp bởi trình duyệt web để quản lý cơ sở dữ liệu NoSQL của các đối tượng dữ liệu có cấu trúc như tệp và đốm màu.

"Giống như hầu hết các giải pháp lưu trữ web, IndexedDB tuân theo chính sách same-origin", Mozilla lưu ý trong tài liệu về API của mình. "Vì vậy, mặc dù bạn có thể truy cập dữ liệu được lưu trữ trong một miền, nhưng bạn không thể truy cập dữ liệu trên các miền khác nhau."

Same-origin là một cơ chế bảo mật cơ bản đảm bảo rằng các tài nguyên được truy xuất từ các nguồn khác nhau - tức là sự kết hợp của lược đồ (giao thức), máy chủ (miền) và số cổng của một URL - được cách ly với nhau. Điều này có nghĩa là "http [:] // example [.] Com /" và "https [:] // example [.] Com /" không có cùng nguồn gốc vì chúng sử dụng các lược đồ khác nhau.

Bằng cách hạn chế cách một tập lệnh được tải bởi một nguồn gốc có thể tương tác với một tài nguyên từ một nguồn khác, ý tưởng là sắp xếp các đoạn mã độc hại tiềm ẩn và giảm các vectơ tấn công tiềm ẩn bằng cách ngăn một trang web giả mạo chạy mã JavaScript tùy ý để đọc dữ liệu từ một miền khác, chẳng hạn như một dịch vụ email.

Nhưng đó không phải là trường hợp của cách Safari xử lý API IndexedDB trong Safari trên iOS, iPadOS và macOS.

"Trong Safari 15 trên macOS và trong tất cả các trình duyệt trên iOS và iPadOS 15, API IndexedDB đang vi phạm chính sách nguồn gốc giống nhau", Martin Bajanik cho biết trong một bài viết. "Mỗi khi một trang web tương tác với cơ sở dữ liệu, một cơ sở dữ liệu mới (trống) có cùng tên sẽ được tạo trong tất cả các khung, tab và cửa sổ đang hoạt động khác trong cùng một phiên trình duyệt."

Hậu quả của việc vi phạm quyền riêng tư này là nó cho phép các trang web tìm hiểu những trang web khác mà người dùng đang truy cập trong các tab hoặc cửa sổ khác nhau, chưa kể đến việc xác định chính xác người dùng trên các dịch vụ của Google như YouTube và Lịch Google khi các trang web này tạo cơ sở dữ liệu IndexedDB bao gồm ID người dùng Google đã xác thực, là số nhận dạng nội bộ nhận dạng duy nhất một tài khoản Google.

"Điều này không chỉ ngụ ý rằng các trang web không đáng tin cậy hoặc độc hại có thể tìm hiểu danh tính của người dùng mà còn cho phép liên kết với nhau của nhiều tài khoản riêng biệt được sử dụng bởi cùng một người dùng", Bajanik nói.

Để làm cho vấn đề tồi tệ hơn, sự rò rỉ cũng ảnh hưởng đến chế độ Duyệt web riêng tư trong Safari 15 nếu người dùng truy cập nhiều trang web khác nhau từ trong cùng một tab trong cửa sổ trình duyệt. Chúng tôi đã liên hệ với Apple để nhận xét thêm và chúng tôi sẽ cập nhật câu chuyện nếu chúng tôi nhận được phản hồi.

"Đây là một lỗi lớn", Jake Archibald, nhà phát triển Google Chrome, đã tweet. "Trên OSX, người dùng Safari có thể (tạm thời) chuyển sang trình duyệt khác để tránh dữ liệu của họ bị rò rỉ trên toàn bộ nguồn gốc. Người dùng iOS không có lựa chọn như vậy vì Apple áp dụng lệnh cấm đối với các công cụ trình duyệt khác."

Hương