Privacy & Security

Cách browser fingerprinting hoạt động và vì sao bạn nên quan tâm

Cookie không phải là toàn bộ câu chuyện theo dõi. Trình duyệt của bạn có thể tiết lộ đủ nhiều tín hiệu nhỏ để khiến bạn trở nên dễ nhận ra, ngay cả khi bạn chưa từng đăng nhập.

The Wux Webtools Team The Wux Webtools Team 21 phút đọc Hỗ trợ AI, được con người xem xét
Abstract browser window surrounded by layered fingerprinting signals and data points.
Mục lục
  1. Phương thức theo dõi âm thầm mà nhiều người đánh giá thấp
  2. Browser fingerprinting thu thập những gì
  3. Vì sao canvas fingerprinting trở thành ví dụ nổi tiếng
  4. Một fingerprint được xây dựng như thế nào
  5. Các cách dùng chính đáng và lạm dụng
  6. Vì sao người dùng nên quan tâm
  7. Người dùng có thể làm gì với fingerprinting
  8. Các đội ngũ website nên làm gì
  9. Phòng vệ của trình duyệt đang cải thiện, nhưng không đồng đều
  10. Kết luận thực tế

Phương thức theo dõi âm thầm mà nhiều người đánh giá thấp

Hầu hết mọi người hiểu về cookie ở mức đủ dùng: một trang web lưu một định danh nhỏ, trình duyệt gửi lại định danh đó, và trang web nhớ ra bạn. Browser fingerprinting ít dễ thấy hơn và thường gây khó chịu hơn. Nó không cần lưu thứ gì rõ ràng trên thiết bị của bạn. Thay vào đó, nó thu thập nhiều chi tiết nhỏ về trình duyệt, thiết bị, hệ điều hành, cài đặt và hành vi của bạn, rồi kết hợp chúng thành một hồ sơ có thể đủ khác biệt để nhận ra bạn về sau.

Thông thường, không tín hiệu đơn lẻ nào là đáng báo động. Kích thước màn hình của bạn không phải bí mật. Phiên bản trình duyệt của bạn không phải bí mật. Ngôn ngữ ưu tiên của bạn không phải bí mật. Vấn đề nằm ở sự kết hợp. Một trình duyệt chạy một phiên bản cụ thể, trên một OS cụ thể, với một GPU nhất định, múi giờ, bộ phông chữ, tiện ích mở rộng, hành vi kết xuất canvas và đặc tính đầu ra âm thanh có thể trông độc nhất đến bất ngờ.

Fingerprinting đáng quan tâm vì nó đi vòng qua những cơ chế kiểm soát mà người dùng kỳ vọng sẽ bảo vệ họ. Bạn có thể xóa cookie, từ chối đồng ý theo dõi, duyệt ở chế độ riêng tư, mà vẫn rò rỉ đủ đặc điểm để bị liên kết qua nhiều lần truy cập. Điều đó không có nghĩa mọi website đều đang fingerprinting bạn, hay fingerprinting luôn chính xác. Nhưng nó có nghĩa là công việc bảo vệ quyền riêng tư không thể dừng lại ở các banner cookie.

Nếu bạn đang rà soát lại hệ thống theo dõi của mình sau những thay đổi gần đây về cookie, đây là lớp tiếp theo rất tự nhiên. Hướng dẫn của chúng tôi về những gì đã thay đổi với cookie trong năm 2026 đề cập đến phần đồng ý và cookie bên thứ ba; fingerprinting là phần thường nằm ngoài các mô hình tư duy quen thuộc đó.

Browser fingerprinting thu thập những gì

Một script fingerprinting cố trả lời một câu hỏi đơn giản: "Trình duyệt này có giống một trình duyệt chúng ta từng thấy trước đây không?" Để trả lời, script có thể thu thập các tín hiệu như:

  • Tên trình duyệt, phiên bản, user agent và nền tảng
  • Hệ điều hành và loại thiết bị
  • Kích thước màn hình, kích thước viewport, tỷ lệ pixel và độ sâu màu
  • Múi giờ, locale, ngôn ngữ ưu tiên và định dạng ngày tháng
  • Phông chữ đã cài đặt hoặc hành vi kết xuất phông chữ
  • Thiết bị media khả dụng và khả năng nhập liệu
  • WebGL renderer, chi tiết GPU và hành vi đồ họa
  • Đầu ra kết xuất canvas
  • Đầu ra xử lý âm thanh
  • Pin, bộ nhớ, số luồng CPU đồng thời và các gợi ý liên quan đến phần cứng khác
  • Hỗ trợ cảm ứng, hành vi con trỏ và cảm biến chuyển động
  • Tác dụng phụ của tiện ích mở rộng, nếu có thể phát hiện
  • Đặc tính mạng và TLS trong một số môi trường

Các trình duyệt hiện đại đã giảm quyền truy cập vào một số bề mặt này, và nhiều API hiện yêu cầu quyền hoặc trả về giá trị kém chính xác hơn. Nhưng vẫn còn đủ diện tích bề mặt vì web thật sự cần thông tin thiết bị để hoạt động. Bố cục responsive cần kích thước màn hình. Ứng dụng video cần khả năng media. Trò chơi và giao diện 3D cần API đồ họa. Khả năng truy cập và quốc tế hóa phụ thuộc vào ngôn ngữ, phương thức nhập và chi tiết kết xuất.

Vấn đề quyền riêng tư là thông tin tương thích hữu ích cũng có thể trở thành thông tin theo dõi.

Vì sao canvas fingerprinting trở thành ví dụ nổi tiếng

Canvas fingerprinting là một trong những kỹ thuật được biết đến nhiều nhất vì nó nghe gần như phi lý. Một script yêu cầu trình duyệt vẽ chữ hoặc hình dạng vào một phần tử HTML canvas, rồi đọc lại các pixel đã được kết xuất. Những khác biệt rất nhỏ trong hệ điều hành, driver đồ họa, khử răng cưa, phông chữ và tăng tốc phần cứng có thể tạo ra đầu ra hơi khác nhau.

Script không quan tâm đến bản thân hình ảnh. Nó quan tâm đến hash thu được. Nếu trình duyệt của bạn vẽ hình thử nghiệm theo cách khớp với một lần truy cập trước đó, đó sẽ trở thành thêm một manh mối.

Canvas không phải phép màu. Tự nó, canvas hiếm khi đủ để nhận diện một người một cách đáng tin cậy. Nhưng khi kết hợp với WebGL, âm thanh, đặc tính màn hình, locale và các tín hiệu khác, nó có thể củng cố hồ sơ.

Đây là mô hình chung của fingerprinting: các tín hiệu giá trị thấp trở thành giá trị cao khi được tổng hợp.

Một fingerprint được xây dựng như thế nào

Một luồng fingerprinting điển hình trông như sau:

  1. Một trang tải script bên thứ nhất hoặc bên thứ ba.
  2. Script truy vấn các API của trình duyệt và thu thập dữ liệu yêu cầu thụ động.
  3. Nó chuẩn hóa các giá trị thành một hồ sơ có cấu trúc.
  4. Nó hash hoặc lưu trữ hồ sơ đó.
  5. Trong một lần truy cập sau, nó so sánh hồ sơ mới với các hồ sơ trước đó.
  6. Nếu mức khớp đủ gần, nó xem khách truy cập là cùng một trình duyệt hoặc thiết bị.

Bước khớp rất quan trọng. Fingerprint thực tế có thể thay đổi. Bạn cập nhật trình duyệt. Bạn cắm thêm màn hình. Bạn đi sang múi giờ khác. Bạn cài một tiện ích mở rộng. Vì vậy, một hệ thống theo dõi hoạt động theo xác suất, không hoàn hảo tuyệt đối. Nó có thể gán điểm tin cậy thay vì danh tính chính xác.

Sự không hoàn hảo đó đôi khi được dùng để xem nhẹ rủi ro. Không nên như vậy. Hầu hết hệ thống theo dõi không cần mức chắc chắn như trong phòng xử án. Với quảng cáo, chấm điểm gian lận, làm giàu dữ liệu phân tích hoặc thực thi paywall, một phỏng đoán có độ tin cậy cao có thể đã đủ.

Các cách dùng chính đáng và lạm dụng

Fingerprinting không phải lúc nào cũng độc hại. Có những cách dùng có thể biện minh được, đặc biệt trong bảo mật:

  • Phát hiện lạm dụng tự động và credential stuffing
  • Nhận diện các lần đăng nhập đáng ngờ
  • Giảm gian lận thanh toán
  • Ngăn gửi spam lặp lại
  • Thực thi giới hạn tốc độ mà không chỉ dựa vào địa chỉ IP

Rắc rối bắt đầu khi fingerprinting được dùng cho theo dõi hành vi thiếu minh bạch, đặc biệt trên các trang không liên quan, mà không có sự đồng ý có ý nghĩa hoặc sự hiểu biết của người dùng. Dùng tín hiệu thiết bị để thử thách một lần đăng nhập đáng ngờ là một chuyện. Âm thầm tái dựng lịch sử duyệt web của người dùng sau khi họ đã từ chối cookie theo dõi lại là chuyện khác.

Với chủ sở hữu website, câu hỏi thực tế không phải là "Chúng ta có thể fingerprint không?" mà là "Chúng ta đang giải quyết vấn đề gì, và cách này có tương xứng không?" Nếu biểu mẫu liên hệ của bạn đang ngập trong spam, chẳng hạn, trước tiên bạn nên sửa các lớp nhàm chán: xác thực, giới hạn tốc độ, honeypot, kiểm duyệt và giám sát lạm dụng. Chúng tôi có một bài riêng về vì sao biểu mẫu liên hệ trở thành gánh nặng spam, và hầu hết các biện pháp giảm thiểu đó ít xâm phạm hơn so với fingerprinting mọi khách truy cập.

Vì sao người dùng nên quan tâm

Fingerprinting làm suy yếu lựa chọn của người dùng. Banner cookie chưa hoàn hảo, nhưng ít nhất nó phơi bày ý tưởng rằng việc theo dõi đang diễn ra. Fingerprinting khó nhìn thấy hơn, khó xóa hơn và khó giải thích hơn.

Nó cũng tạo ra sự mất cân bằng quyền lực. Website hoặc script bên thứ ba có thể quan sát và phân loại khách truy cập, trong khi khách truy cập hiếm khi có một cách đơn giản để xem, sửa hoặc xóa hồ sơ thu được.

Rủi ro cao hơn khi fingerprint được kết hợp với các định danh khác. Một fingerprint được liên kết với địa chỉ email, tài khoản đăng nhập, lượt nhấp quảng cáo, bản ghi CRM hoặc lịch sử mua hàng sẽ trở nên nhạy cảm hơn nhiều. Ngay cả khi fingerprint ban đầu là bút danh, nó có thể trở thành dữ liệu cá nhân khi được kết nối với một con người.

Với các đội ngũ hoạt động dưới các luật về quyền riêng tư như GDPR hoặc quy tắc ePrivacy, sự phân biệt này rất quan trọng. Cơ quan quản lý nhiều lần xem định danh thiết bị và các kỹ thuật theo dõi tương tự là có liên quan đến quyền riêng tư. Nếu bạn dùng fingerprinting cho bất cứ điều gì ngoài bảo mật thật sự cần thiết, bạn nên giả định rằng nó cần được rà soát nghiêm túc về pháp lý và sự đồng ý.

Người dùng có thể làm gì với fingerprinting

Không có cách khắc phục hoàn hảo cho người tiêu dùng. Thực tế, tùy chỉnh quá mạnh có thể khiến bạn độc nhất hơn. Cài mười tiện ích mở rộng quyền riêng tư, thay đổi các browser flag hiếm gặp và dùng phông chữ lạ có thể giảm một số theo dõi, nhưng đồng thời tăng mức khác biệt.

Dù vậy, một vài thói quen vẫn hữu ích:

  • Dùng một trình duyệt phổ biến, chú trọng quyền riêng tư và có khả năng chống fingerprinting tích hợp.
  • Luôn cập nhật trình duyệt.
  • Chặn script bên thứ ba khi thực tế cho phép.
  • Tránh cài đặt tiện ích mở rộng không cần thiết.
  • Dùng các hồ sơ trình duyệt riêng cho các ngữ cảnh khác nhau, như công việc, duyệt cá nhân và thử nghiệm.
  • Thận trọng với các trang yêu cầu quyền rộng mà không có lý do rõ ràng.
  • Ưu tiên các dịch vụ xử lý dữ liệu nhạy cảm cục bộ khi có thể.

Điểm cuối cùng rộng hơn fingerprinting. Xử lý phía client có thể giảm phơi lộ dữ liệu không cần thiết khi được triển khai trung thực. Ví dụ, chúng tôi đã viết về vì sao xử lý hình ảnh trong trình duyệt là một lợi thế cho quyền riêng tư: nguyên tắc tương tự áp dụng bất cứ khi nào một tác vụ có thể hoàn tất mà không cần tải dữ liệu thô của người dùng lên máy chủ.

Chế độ duyệt riêng tư giúp với lưu trữ cục bộ, cookie và lịch sử trên thiết bị của bạn. Chúng không làm trình duyệt của bạn trở nên không thể phân biệt. VPN ẩn địa chỉ IP của bạn khỏi website đích, nhưng không loại bỏ các tín hiệu ở cấp trình duyệt. Cả hai đều có thể hữu ích; không cái nào là câu trả lời hoàn chỉnh.

Các đội ngũ website nên làm gì

Nếu bạn xây dựng hoặc quản lý website, fingerprinting nên được xử lý như một vấn đề thiết kế quyền riêng tư, không phải một growth hack.

Hãy bắt đầu bằng kiểm kê. Xem xét các script phân tích, quảng cáo, phòng chống gian lận, A/B testing, quản lý đồng ý, chat, heatmap và hỗ trợ khách hàng của bạn. JavaScript bên thứ ba thường mang theo việc thu thập dữ liệu mà bạn không chủ động thiết kế. Nếu bạn không biết các script đang làm gì trong production, hãy kiểm tra request, header và hành vi script. Bài viết của chúng tôi về gỡ lỗi redirect và HTTP header trong production nói về một nhóm vấn đề khác, nhưng cùng một kỷ luật vẫn áp dụng: xác minh điều thật sự xảy ra, không phải điều dashboard tuyên bố.

Sau đó hãy hỏi bốn câu:

  1. Chúng ta có đang thu thập tín hiệu thiết bị hoặc trình duyệt có thể nhận diện hoặc tách riêng một khách truy cập không?
  2. Mục đích là thiết yếu cho bảo mật, liên quan đến phân tích, liên quan đến quảng cáo, hay chỉ đơn thuần là tiện lợi?
  3. Người dùng có được thông báo rõ ràng và có lựa chọn thật sự ở nơi được yêu cầu không?
  4. Chúng ta có thể giải quyết cùng vấn đề bằng dữ liệu ít xâm phạm hơn không?

Với nhiều đội ngũ, câu trả lời tốt nhất là giảm thiểu. Dùng giới hạn tốc độ phía server trước khi dùng device fingerprinting. Dùng phân tích tổng hợp trước khi theo dõi cấp người dùng. Dùng thời hạn lưu giữ ngắn. Tách tín hiệu bảo mật khỏi hồ sơ marketing. Tránh chia sẻ định danh thô với nhà cung cấp trừ khi có lý do mạnh và hợp đồng chặt chẽ.

Cũng hãy trung thực trong tài liệu của bạn. Một thông báo quyền riêng tư nói "chúng tôi sử dụng cookie" nhưng bỏ qua việc theo dõi tương đương thông qua tín hiệu trình duyệt thì không thật sự minh bạch. Người dùng không quan tâm định danh nằm trong cookie, local storage, hồ sơ phía server hay fingerprint xác suất. Họ quan tâm liệu mình có đang bị theo dõi hay không.

Phòng vệ của trình duyệt đang cải thiện, nhưng không đồng đều

Các nhà cung cấp trình duyệt đã chọn những cách tiếp cận khác nhau. Một số giảm entropy bằng cách khiến nhiều người dùng trông giống nhau hơn. Một số hạn chế các API rủi ro cao. Một số phân vùng trạng thái lưu trữ và mạng theo từng site. Một số thêm lời nhắc cấp quyền hoặc chặn các script theo dõi đã biết.

Những biện pháp này có ích, nhưng bị giới hạn bởi tính tương thích. Chặn quá nhiều API thì web ngừng hoạt động. Để lộ quá nhiều chi tiết thì theo dõi vẫn dễ dàng. Đây là căng thẳng cốt lõi: trình duyệt phải tiết lộ đủ thông tin để các site thích ứng, nhưng không nhiều đến mức mọi khách truy cập đều trở nên có thể nhận ra một cách độc nhất.

Tư thế quyền riêng tư tốt nhất là theo lớp. Trình duyệt nên giảm diện tích bề mặt có thể fingerprint. Người dùng nên tránh sự độc nhất không cần thiết. Nhà phát triển nên thu thập ít hơn. Cơ quan quản lý nên xem theo dõi mờ ám là theo dõi, bất kể cơ chế kỹ thuật là gì.

Kết luận thực tế

Browser fingerprinting không phải một cuộc tấn công khoa học viễn tưởng. Nó là một kỹ thuật theo dõi web bình thường, được xây dựng từ các tính năng trình duyệt thông thường. Sức mạnh của nó đến từ sự tổng hợp, không phải từ một tín hiệu bí mật đơn lẻ nào.

Bạn nên quan tâm vì nó có thể vượt qua các cơ chế kiểm soát quyền riêng tư mà người dùng nhận biết, vì nó thường được thực hiện bởi script bên thứ ba, và vì nó biến các chi tiết tương thích thành manh mối danh tính. Phản ứng đúng không phải là hoảng sợ. Đó là kiềm chế.

Với người dùng, hãy chọn các thiết lập trình duyệt phổ biến, được bảo trì tốt và hoài nghi với các quyền không cần thiết. Với các đội ngũ, hãy kiểm tra script, ghi rõ mục đích, giảm thiểu thu thập và tách các trường hợp dùng cho bảo mật khỏi tham vọng marketing. Fingerprinting có thể tinh vi về kỹ thuật, nhưng thiết kế tôn trọng quyền riêng tư thường đơn giản hơn: thu thập ít hơn, lưu giữ ít hơn và giải thích nhiều hơn.

Câu hỏi thường gặp

Browser fingerprinting có giống cookie không?
Không. Cookie lưu định danh trong trình duyệt. Fingerprinting suy ra một định danh từ đặc điểm của trình duyệt và thiết bị. Cả hai đều có thể được dùng để theo dõi, nhưng fingerprinting khó để người dùng nhìn thấy hoặc xóa hơn.
Tôi có thể chặn hoàn toàn browser fingerprinting không?
Không hoàn toàn trong duyệt web thông thường. Bạn có thể giảm phơi lộ bằng cách dùng trình duyệt có bảo vệ quyền riêng tư mạnh, hạn chế tiện ích mở rộng, chặn các script bên thứ ba không cần thiết và tránh các cài đặt tùy chỉnh bất thường khiến bạn nổi bật.
Riêng canvas fingerprinting có nguy hiểm không?
Thường thì không nếu chỉ riêng nó. Đầu ra canvas là một tín hiệu trong nhiều tín hiệu. Nó trở nên hữu ích hơn cho việc theo dõi khi được kết hợp với WebGL, âm thanh, phông chữ, đặc tính màn hình, locale và các chi tiết trình duyệt khác.
Fingerprinting có hợp pháp không?
Điều này phụ thuộc vào khu vực pháp lý, mục đích, sự đồng ý và cách triển khai. Trong các cơ chế quyền riêng tư như GDPR của EU và khung ePrivacy, định danh thiết bị và các kỹ thuật theo dõi tương tự có thể yêu cầu thông báo rõ ràng, cơ sở pháp lý và đôi khi là sự đồng ý.
Website có nên dùng fingerprinting để phòng chống gian lận không?
Đôi khi, nhưng phải giới hạn chặt chẽ. Các trường hợp dùng cho bảo mật có thể chính đáng, đặc biệt với lạm dụng đăng nhập hoặc gian lận thanh toán. Các đội ngũ nên giảm thiểu dữ liệu, giới hạn thời gian lưu giữ, tránh dùng fingerprint bảo mật cho marketing và ghi rõ thực hành này trong tài liệu.

Nguồn & tài liệu tham khảo thêm

  1. EFF Cover Your Tracks
  2. MDN Web Docs: Fingerprinting
  3. W3C TAG: Unsanctioned Web Tracking
  4. CNIL: Fingerprinting and consent
Về tác giả
The Wux Webtools Team

Cập nhật lần cuối:

Tiếp tục đọc