Phát hiện dấu vân tay trình duyệt, Canvas, WebGL và hơn thế nữa của bạn có bị nhận diện không
Lấy dấu vân tay trình duyệt định danh và theo dõi người dùng dựa trên tổ hợp độc nhất giữa các thiết lập và khả năng mà trình duyệt cùng thiết bị của họ bộc lộ. Khác với cookie, kỹ thuật này không cần lưu trữ dữ liệu nào và rất khó xóa bỏ, khiến nó trở thành một trong những phương pháp theo dõi dai dẳng nhất trên web hiện đại.
Dấu vân tay trình duyệt là tập hợp các thuộc tính mô tả cấu hình phần mềm và phần cứng của thiết bị bạn. Thay vì lưu một mã định danh trên thiết bị như cách cookie làm, một trang web sẽ đọc hàng chục tín hiệu — độ phân giải màn hình, ngôn ngữ, múi giờ, font đã cài đặt, phần cứng đồ họa và nhiều thứ khác — rồi kết hợp chúng thành một hồ sơ duy nhất. Vì tổ hợp cụ thể đó hiếm khi trùng giữa hai thiết bị, hồ sơ này có thể nhận ra bạn ở những lần ghé thăm sau và liên kết hoạt động của bạn trên nhiều trang, ngay cả khi bạn đã xóa dữ liệu trình duyệt.
Khi một trang tải, các script truy vấn trình duyệt thông qua các API JavaScript tiêu chuẩn. Mỗi câu trả lời — chuỗi user-agent, độ sâu màu, số nhân CPU, khả năng hỗ trợ cảm ứng, danh sách font khả dụng — bổ sung thêm một vài bit thông tin định danh. Không một giá trị đơn lẻ nào là duy nhất, nhưng độ ngẫu nhiên tích lũy dần: kết hợp mười lăm hay hai mươi tín hiệu định danh yếu lại với nhau và kết quả thường là duy nhất giữa hàng triệu người dùng. Trang web băm các giá trị này thành một ID ổn định và lưu nó trên máy chủ, hoàn toàn nằm ngoài tầm kiểm soát của bạn.
Lấy dấu vân tay Canvas yêu cầu trình duyệt của bạn dựng văn bản hoặc hình khối ẩn lên một canvas ngoài màn hình, rồi đọc lại dữ liệu pixel. Những khác biệt nhỏ về GPU, driver đồ họa và khử răng cưa tạo ra một kết quả dựng hình nhất quán cho thiết bị của bạn nhưng khác nhau giữa các máy. Lấy dấu vân tay WebGL còn đi xa hơn, dò xét ngăn xếp đồ họa 3D của bạn để lấy tên trình dựng hình, các phần mở rộng được hỗ trợ và độ chính xác đổ bóng. Cùng nhau, đây là những tín hiệu có độ ngẫu nhiên cao nhất mà các bên theo dõi có được.
Việc lấy dấu vân tay không chỉ giới hạn ở đồ họa. API AudioContext có thể được dùng để xử lý một sóng âm im lặng mà đầu ra của nó thay đổi tinh tế theo phần cứng và hệ điều hành. Việc liệt kê font phát hiện những kiểu chữ bạn đã cài đặt, thường để lộ hệ điều hành và ứng dụng của bạn. Các vectơ khác bao gồm trạng thái pin, nhãn thiết bị media, mức độ đồng thời phần cứng và các phép đo thời gian. Các bên theo dõi pha trộn nhiều vectơ này lại để dù bạn có che được một cái, những cái còn lại vẫn định danh được bạn.
Việc lấy dấu vân tay tiếp sức cho quảng cáo xuyên trang, chấm điểm gian lận và liên kết tài khoản — thường không có sự đồng ý và vô hình đối với người dùng. Với những người phụ thuộc vào quyền riêng tư, chẳng hạn nhà báo hay nhà nghiên cứu, một dấu vân tay đặc trưng có thể làm suy yếu các lớp bảo vệ khác như VPN hay duyệt web riêng tư. Với các doanh nghiệp vận hành nhiều tài khoản, một dấu vân tay dùng chung giữa các hồ sơ là nguyên nhân phổ biến nhất khiến các nền tảng đánh dấu và cấm những tài khoản đó.
Mục tiêu nghe có vẻ ngược đời là trông bình thường, chứ không phải vô hình. Các trình duyệt như Tor và Brave cố tình khiến nhiều người dùng có cùng một dấu vân tay, nên hòa vào đám đông hiệu quả hơn nổi bật. Các trình duyệt chống phát hiện tạo ra những hồ sơ tách biệt với dấu vân tay nhất quán và hợp lý cho mỗi danh tính. Hãy tránh các tiện ích mở rộng hiếm, font lạ và kích thước màn hình bất thường, giữ trình duyệt luôn được cập nhật và kiểm tra thường xuyên — một script giả mạo một giá trị nhưng lại để lại mâu thuẫn ở chỗ khác có thể khiến bạn dễ bị nhận diện hơn, chứ không phải ít đi.
Cách nhanh nhất để kiểm tra dấu vân tay trình duyệt là chạy một bài kiểm tra đọc đúng những tín hiệu mà các bên theo dõi thu thập — các giá trị băm Canvas và WebGL, font, chi tiết màn hình và phần cứng, ngăn xếp âm thanh và User-Agent — rồi kết hợp chúng thành một mã định danh duy nhất. Công cụ kiểm tra dấu vân tay của chúng tôi làm việc này hoàn toàn trong trình duyệt của bạn, không gửi dữ liệu nào lên máy chủ, và cho thấy mỗi tín hiệu độc nhất đến mức nào để bạn thấy chính xác những thuộc tính nào khiến mình nổi bật. Kiểm tra lại sau khi cập nhật trình duyệt hay thay đổi tiện ích mở rộng là cách đáng tin cậy duy nhất để xác nhận liệu dấu vân tay của bạn có thực sự thay đổi hay không.
Điện thoại thường được cho là riêng tư hơn máy tính để bàn, nhưng các trình duyệt trên Android và iOS cũng có thể bị lấy dấu vân tay. Thiết bị di động để lộ tỉ lệ pixel của thiết bị, các API cảm biến, font đã cài đặt, model GPU và khả năng cảm ứng, và vì hầu hết người dùng giữ nguyên trình duyệt mặc định cùng các thiết lập gốc, dấu vân tay di động có thể ổn định đến mức bất ngờ. Sự đánh đổi khác với máy tính để bàn: phần cứng ít đa dạng hơn, nên một chiếc điện thoại đơn lẻ trông giống các máy cùng loại hơn, nhưng đối chiếu dấu vân tay di động với User-Agent sẽ nhanh chóng để lộ các môi trường bị giả mạo hay giả lập. Bạn có thể chạy cùng bài kiểm tra dấu vân tay trên Android hay iPhone để xem các tín hiệu di động của mình.
Ở hầu hết các khu vực, bản thân việc lấy dấu vân tay không phải là bất hợp pháp, nhưng dùng nó để theo dõi người dùng cho mục đích quảng cáo thường thuộc phạm vi các luật về quyền riêng tư như GDPR và Chỉ thị ePrivacy, vốn yêu cầu một cơ sở pháp lý và thường là sự đồng ý. Việc thực thi rất khác nhau, và nhiều trang web sử dụng nó với rất ít sự minh bạch.
Không. Duyệt web riêng tư chỉ ngăn trình duyệt lưu lịch sử và cookie cục bộ. Dấu vân tay của bạn — màn hình, phần cứng, font, GPU — vẫn y hệt trong cửa sổ riêng tư, nên bên theo dõi vẫn có thể nhận ra thiết bị của bạn. Chế độ riêng tư bảo vệ khỏi việc dòm ngó cục bộ, chứ không phải khỏi việc lấy dấu vân tay từ xa.
Chỉ một phần. VPN thay đổi địa chỉ IP và vị trí gần đúng của bạn, nhưng dấu vân tay của bạn được dựng từ các tín hiệu trình duyệt và phần cứng mà VPN không hề chạm tới. Bạn có thể trông như đến từ một quốc gia khác trong khi vẫn trình ra cùng một dấu vân tay, và bản thân điều đó là một sự mâu thuẫn có thể phát hiện được.
Điều đó phụ thuộc vào cấu hình của bạn, nhưng các nghiên cứu đã phát hiện rằng phần lớn các trình duyệt máy tính để bàn có thể được định danh một cách độc nhất. Chạy công cụ kiểm tra dấu vân tay của chúng tôi sẽ cho thấy tín hiệu nào của bạn mang độ ngẫu nhiên cao nhất, để bạn thấy chính xác điều gì khiến thiết bị của mình nổi bật giữa đám đông.
Hãy chạy một bài kiểm tra dấu vân tay trình duyệt. Nó thu thập các tín hiệu Canvas, WebGL, font, âm thanh, màn hình và phần cứng của bạn ngay trong trình duyệt rồi băm chúng thành một mã định danh, sau đó ước lượng tổ hợp đó độc nhất đến mức nào. Công cụ kiểm tra của chúng tôi chạy hoàn toàn phía trình duyệt, nên không có gì được tải lên, và nó làm nổi bật những tín hiệu có độ ngẫu nhiên cao nhất để bạn biết nên xử lý thuộc tính nào trước.
Có. Các trình duyệt di động để lộ dữ liệu GPU, màn hình, font, cảm biến và User-Agent có thể được kết hợp thành một dấu vân tay y như trên máy tính để bàn. Điện thoại có phần cứng ít đa dạng hơn, nên một thiết bị đơn lẻ dễ hòa lẫn hơn, nhưng dấu vân tay vẫn đủ ổn định để nhận ra bạn qua các phiên, và những điểm không nhất quán giữa các tín hiệu di động với User-Agent thì rất dễ phát hiện.