Lấy vân tay canvas
Lấy vân tay canvas (tiếng Anh: canvas fingerprinting) là một trong những kỹ thuật lấy vân tay trình duyệt dùng để theo dõi người dùng trên mạng, cho phép các website định danh và theo dõi người truy cập bằng cách sử dụng phần tử canvas của HTML5 thay vì cookie trình duyệt hoặc những dữ liệu tương tự.[1] Kỹ thuật này đã nhận được sự chú ý rộng rãi của giới truyền thông[2][3] sau khi được các nhà nghiên cứu từ Đại học Princeton và Đại học KU Leuven mô tả trong bài nghiên cứu The Web never forgets của họ.[4]
Mô tả
Kỹ thuật lấy vân tay canvas hoạt động bằng cách khai thác phần tử canvas của HTML5. Theo như Acar và những nhà nghiên cứu khác mô tả:[4]
Khi người dùng truy cập một trang, script lấy vân tay trước tiên sẽ vẽ văn bản với phông chữ và kích thước chọn trước và thêm màu nền (1). Tiếp theo, script gọi phương thức ToDataURL của API Canvas để lấy dữ liệu pixel của canvas dưới định dạng dataURL (2), dữ liệu này thực chất là dữ liệu pixel ở dạng nhị phân đã mã hoá dưới dạng Base64. Cuối cùng, script lấy giá trị băm (hash) của dữ liệu pixel đã mã hóa dưới dạng văn bản kia (3), giá trị này đóng vai trò như là vân tay...
Sự thay đổi bộ xử lý đồ hoạ (GPU) hoặc driver đồ hoạ có thể làm thay đổi vân tay. Vân tay có thể được lưu trữ và chia sẻ với các đối tác quảng cáo để định danh người dùng khi họ truy cập các website liên kết với những đối tác này. Hồ sơ về người dùng có thể được tạo ra từ hoạt động duyệt web của họ, cho phép các nhà quảng cáo hướng quảng cáo thích hợp đến họ dựa theo dữ liệu về nhân khẩu học và sở thích đã tiên đoán trước.[3][5]
Vào tháng 1 năm 2022, các nhà nghiên cứu đã mở rộng kỹ thuật này để tạo vân tay dựa trên các đặc điểm về hiệu suất của phần cứng xử lý đồ họa, với tên gọi DrawnApart.[6]
Tính độc nhất
Vì vân tay chủ yếu được tạo dựa trên các yếu tố như trình duyệt, hệ điều hành và phần cứng xử lý đồ họa, có thể xảy ra trường hợp trùng định danh. Trong một nghiên cứu quy mô nhỏ với 294 người tham gia của Amazon Mechanical Turk, một entropy mức độ 5,7 bit đã được ghi nhận. Các tác giả của nghiên cứu này gợi ý rằng có thể ghi nhận thêm nhiều entropy khi triển khai trên thực tế và với nhiều mẫu phần mềm và phần cứng được sử dụng để tạo vân tay. Mặc dù không đủ để định danh người dùng cá nhân một cách độc nhất, vân tay canvas có thể được dùng kết hợp với các nguồn entropy khác để tạo ra định danh duy nhất cho mỗi người dùng. Kỹ thuật lấy vân tay canvas được khẳng định sẽ lấy vân tay GPU hiệu quả, vì vậy entropy của kỹ thuật này "trực giao" với entropy của các kỹ thuật lấy vân tay trình duyệt trước đó, ví dụ như các kỹ thuật dựa trên độ phân giải màn hình và mức độ hỗ trợ JavaScript của trình duyệt.[7]
Việc định danh người dùng với tỉ lệ trùng lặp thấp hơn đáng kể là khả thi với kỹ thuật DrawnApart. Được công bố vào năm 2022, kỹ thuật này đã được chứng minh là sẽ tăng thời gian theo dõi của vân tay định danh cá nhân lên đến 67% khi được sử dụng để cải tiến các phương pháp định danh khác.[6]
Lịch sử
Vào tháng 5 năm 2012, Keaton Mowery và Hovav Shacham – hai nhà nghiên cứu từ Đại học California, San Diego, đã viết một bài nghiên cứu có tên "Pixel Perfect: Fingerprinting Canvas in HTML5" mô tả cách mà HTML5 canvas có thể được sử dụng để tạo ra vân tay số của người dùng web.[3][7]
Công ty công nghệ social bookmarking AddThis đã bắt đầu thử nghiệm kỹ thuật lấy vân tay canvas vào đầu năm 2014 như một phương pháp thay thế tiềm năng cho cookie. 5% trong số 100.000 website hàng đầu đã sử dụng kỹ thuật lấy vân tay canvas khi thử nghiệm được triển khai.[8] Theo CEO của AddThis, Richard Harris, công ty chỉ sử dụng dữ liệu thu thập từ những thử nghiệm này để tiến hành nghiên cứu nội bộ. Người dùng có thể cài đặt một cookie từ chối tham gia trên bất kỳ máy tính nào để ngăn chặn việc bị theo dõi bởi AddThis qua kỹ thuật lấy vân tay canvas.[3]
Một nhà phát triển phần mềm đã cung cấp thông tin cho Forbes, cho biết các phương pháp lấy vân tay thiết bị đã được sử dụng cho mục đích ngăn chặn truy cập trái phép vào các hệ thống từ lâu trước khi nó được sử dụng để theo dõi người dùng mà không có sự đồng ý của họ.[2]
Đến năm 2014, kỹ thuật này đã trở nên phổ biến trên nhiều website và được sử dụng bởi ít nhất mười hai nhà cung cấp quảng cáo trực tuyến và theo dõi người dùng có tiếng.[9]
Vào năm 2022, kỹ thuật lấy vân tay canvas đã được mở rộng đáng kể bằng cách xem xét đến cả những sự khác biệt nhỏ giữa các thành phần giống nhau (identical units) trên cùng một mẫu GPU. Những sự khác biệt này bắt nguồn từ quy trình sản xuất, làm cho các thành phần ở các bản sao giống nhau trở nên khác biệt theo thời gian một cách tất định.[6]
Giảm thiểu tác động
![](http://upload.wikimedia.org/wikipedia/commons/thumb/d/d4/Typical_Tor_Browser_notification_of_a_canvas_read_attempt.png/220px-Typical_Tor_Browser_notification_of_a_canvas_read_attempt.png)
Tài liệu tham khảo của Tor Project đề cập rằng "Sau plugin và thông tin do các plugin cung cấp, chúng tôi tin rằng HTML5 Canvas là mối đe dọa lớn nhất về việc lấy vân tay mà hiện nay các trình duyệt đang phải đối mặt."[10] Trình duyệt Tor thông báo cho người dùng về các lần đọc canvas và cung cấp tùy chọn trả về dữ liệu hình ảnh trắng để ngăn chặn việc lấy vân tay.[4] Tuy nhiên, trình duyệt Tor hiện không thể phân biệt giữa việc sử dụng phần tử canvas hợp lệ và việc cố gắng lấy vân tay, do đó, cảnh báo của nó không thể được xem là bằng chứng về ý định của một website nhằm định danh và theo dõi người truy cập. Các tiện ích mở rộng trình duyệt như Privacy Badger,[8] DoNotTrackMe,[11] hoặc Adblock Plus[12] khi được thiết lập thủ công với danh sách EasyPrivacy có khả năng chặn các tracker mạng quảng cáo của bên thứ ba và có thể được cấu hình để chặn việc lấy vân tay canvas, miễn là tracker đó được cung cấp bởi một máy chủ bên thứ ba (không phải do website đang truy cập triển khai). Tiện ích mở rộng trình duyệt Canvas Defender có thể giả mạo vân tay canvas.[13]
Dự án trình duyệt LibreWolf bao gồm công nghệ để chặn truy cập vào HTML5 canvas theo mặc định, chỉ cho phép trong các trường hợp được người dùng phê duyệt.[14]
Xem thêm
- Evercookie – một loại cookie được tạo ra với mục đích khó bị xoá
- Local shared object – một loại cookie trình duyệt tồn tại lâu dài, còn được biết đến dưới tên cookie Flash
- Web storage – các phương thức và giao thức của ứng dụng web được dùng để lưu trữ dữ liệu trong trình duyệt web
Tham khảo
- ^ Obaidat, Muath (2020). “Canvas Deceiver - A New Defense Mechanism Against Canvas Fingerprinting”. Journal of Systemics, Cybernetics and Informatics. 18 (6): 66–74.
- ^ a b Joseph Steinberg (23 tháng 7 năm 2014). “You Are Being Tracked Online By A Sneaky New Technology -- Here's What You Need To Know”. Forbes. Truy cập ngày 15 tháng 11 năm 2014.
- ^ a b c d Angwin, Julia (21 tháng 7 năm 2014). “Meet the Online Tracking Device That is Virtually Impossible to Block”. ProPublica. Truy cập ngày 21 tháng 7 năm 2014.
- ^ a b c
- Acar, Gunes; Eubank, Christian; Englehardt, Steven; Juarez, Marc; Narayanan, Arvind; Diaz, Claudia. “The Web never forgets: Persistent tracking mechanisms in the wild” (PDF). Truy cập ngày 24 tháng 7 năm 2014.
- “Persistent tracking mechanisms in the wild”. 24 tháng 7 năm 2014. Lưu trữ bản gốc ngày 27 tháng 7 năm 2014. Truy cập ngày 24 tháng 7 năm 2014.
- “Sites with canvas fingerprinting scripts on their homepages as of May 1-5, 2014”. Canvas Fingerprinting URLs - The Web never forgets: Persistent tracking mechanisms in the wild. Bản gốc lưu trữ ngày 28 tháng 7 năm 2014. Truy cập ngày 27 tháng 8 năm 2021.
- ^ Nikiforakis, Nick; Acar, Günes (25 tháng 7 năm 2014). “Browser Fingerprinting and the Online-Tracking Arms Race”. ieee.org. IEEE. Truy cập ngày 31 tháng 10 năm 2014.
- ^ a b c Laor, Tomer; Mehanna, Naif; Durey, Antonin; Dyadyuk, Vitaly; Laperdrix, Pierre; Maurice, Clémentine; Oren, Yossi; Rouvoy, Romain; Rudametkin, Walter; Yarom, Yuval (2022). “DRAWNAPART: A Device Identification Technique based on Remote GPU Fingerprinting”. Proceedings 2022 Network and Distributed System Security Symposium. arXiv:2201.09956. doi:10.14722/ndss.2022.24093. ISBN 978-1-891562-74-7.
- ^ a b Mowery, Keaton; Shacham, Hovav. “Pixel Perfect: Fingerprinting Canvas in HTML5” (PDF). Truy cập ngày 22 tháng 3 năm 2018.
- ^ a b Davis, Wendy (21 tháng 7 năm 2014). “EFF Says Its Anti-Tracking Tool Blocks New Form Of Digital Fingerprinting”. MediaPost. Truy cập ngày 21 tháng 7 năm 2014.
- ^ “Websites using HTML5 canvas fingerprinting”. WebCookies.org. Bản gốc lưu trữ ngày 28 tháng 12 năm 2014. Truy cập ngày 28 tháng 12 năm 2014.
- ^ “The Design and Implementation of the Tor Browser [DRAFT]”. www.torproject.org. Truy cập ngày 25 tháng 5 năm 2018.
- ^ Kirk, Jeremy (25 tháng 7 năm 2014). “'Canvas fingerprinting' online tracking is sneaky but easy to halt”. PC World. Truy cập ngày 9 tháng 8 năm 2014.
- ^ Smith, Chris. “Adblock Plus: We can stop canvas fingerprinting, the 'unstoppable' new browser tracking technique”. BGR. PMC. Bản gốc lưu trữ ngày 28 tháng 7 năm 2014.
- ^
- Canvas Defender bởi: multiloginapp.com tại Chrome Web Store
- Canvas Defender bởi: multiloginapp.com tại addons.mozilla.org
- Canvas Defender tại multiloginapp.com
- ^ “Frequently Asked Questions”. librewolf.net. Truy cập ngày 18 tháng 11 năm 2023.
Liên kết ngoài
- https://browserleaks.com/canvas
- Canvas Defender bởi: multiloginapp.com tại Chrome Web Store
- Canvas Defender bởi: multiloginapp.com tại addons.mozilla.org
- Canvas Defender tại multiloginapp.com