Thứ hai, 10/08/2020 09:41

Browser Fingerprinting - Công nghệ theo dõi người dùng duyệt web mới và cách phòng chống

Nguyễn Trung Hiếu

Bộ môn Toán - Tin học và ứng dụng khoa học công nghệ trong phòng chống tội phạm, Học viện Cảnh sát nhân dân

Cùng với sự bùng nổ của Internet, các cuộc tấn công mạng đã và đang diễn ra rộng rãi bằng nhiều hình thức ngày càng tinh vi và phức tạp hơn. Một trong những công nghệ theo dõi trực tuyến, thu thập các thông tin người dùng trái phép thông qua các trình duyệt web là Browser Fingerprinting - dấu vân tay trình duyệt.

Giới thiệu

Theo dõi trực tuyến (hoặc theo dõi web - web tracking) là quá trình theo dõi các hoạt động trực tuyến của người dùng. Các thực thể dùng để theo dõi được gọi là trình theo dõi. Các trình theo dõi này sẽ được nhúng trên website để thông báo cho quản trị website biết mỗi khi có người dùng truy cập một trang web nào đó.

Toàn bộ quá trình theo dõi xảy ra mà người dùng không hề hay biết (hay có sự đồng ý của người dùng). Hầu hết các website hiện nay đều theo dõi các phiên làm việc, giải trí và thói quen sử dụng của người dùng, đặc biệt là các trang mạng xã hội. Việc theo dõi trực tuyến nhằm cung cấp thông tin cho hàng ngàn đơn vị quảng cáo, các công ty bán hàng để tăng lợi nhuận bằng việc hướng quảng cáo tới đúng đối tượng đang có nhu cầu.

Có hai cách tiếp cận để theo dõi trực tuyến người dùng: theo dõi trạng thái của người dùng liên quan đến sử dụng cookie và theo dõi không trạng thái bao gồm cả việc sử dụng dấu vân tay trình duyệt (Browser Fingerprinting). Việc sử dụng cookie bị hạn chế bởi người sử dụng có thể kiểm soát được. Ngược lại, dấu vân tay trình duyệt không yêu cầu lưu trữ tệp trên thiết bị của người dùng, hiệu quả của nó một phần phụ thuộc vào trình duyệt, nền tảng máy chủ và người dùng hầu như không kiểm soát được.

Công nghệ Browser FingerPrinting

Eckersley đã xuất bản tài liệu nghiên cứu đầu tiên thảo luận chi tiết về khái niệm vân tay của thiết bị dựa trên trình duyệt, cho thấy các trang web có thể xác định người dùng và theo dõi thói quen duyệt web của họ bằng cách thu thập thông tin cơ bản như địa chỉ IP của thiết bị, múi giờ, độ phân giải màn hình và danh sách các phông chữ và plugin được hỗ trợ; chức năng như vậy ban đầu được thiết kế giúp tối ưu hóa nội dung web cho nhiều loại thiết bị mục tiêu [1].

Dấu vân tay trình duyệt là một tập hợp thông tin liên quan đến thiết bị của người dùng, từ phần cứng, hệ điều hành đến trình duyệt và cấu hình của thiết bị [2]. Vân tay trình duyệt đề cập đến quá trình thu thập thông tin thông qua trình duyệt web để tạo dấu vân tay của thiết bị. Thông qua một vài tập lệnh đơn giản chạy bên trong trình duyệt, máy chủ có thể thu thập nhiều thông tin từ các giao diện công khai được gọi là API và tiêu đề HTTP. Cookie thường dựa trên số nhận dạng duy nhất (ID) được lưu trữ trực tiếp bên trong trình duyệt của người dùng. Trong khi đó, dấu vân tay trình duyệt không để lại bất kỳ dấu vết nào vì không yêu cầu lưu trữ thông tin bên trong trình duyệt. Nếu dấu vân tay thu thập đủ thông tin, rất có thể xác định rõ ràng cho từng thiết bị, do đó có thể được sử dụng để xác định đầy đủ hoặc một phần khách truy cập trên trang web nhờ các đặc điểm của thiết bị được hiển thị.

Kể từ khi được Eckersley mô tả, việc triển khai dấu vân tay trình duyệt trong thế giới thực đã tăng lên đáng kể. Bên cạnh đó, phạm vi và mức độ phong phú của thông tin có thể được thu thập từ một trình duyệt cũng ngày càng gia tăng.

Dấu vân tay trình duyệt có thể được thực hiện bằng phương pháp chủ động hoặc thụ động [2] hoặc một dạng tương tự như cookie [3]. Phương pháp thụ động hoàn toàn phụ thuộc vào thông tin có thể truy xuất thông qua các yêu cầu HTTP thông thường. Trong khi đó, việc ghi dấu vân tay trình duyệt chủ động liên quan đến việc sử dụng các tập lệnh để truy xuất thêm thông tin về trình duyệt và độ chính xác của trình duyệt.

Dấu vân tay trình duyệt được sử dụng rộng rãi trong các lĩnh vực như: tối ưu hóa quảng cáo nhắm đến mục tiêu cụ thể, chia sẻ phương tiện truyền thông xã hội, các dịch vụ phân tích và bảo mật website. Ngoài ra, cũng có những cách sử dụng khác, ví dụ: hoạt động như một lớp xác thực thứ hai hoặc để nâng cao hiệu quả của CAPTCHA. Tuy nhiên, ngay cả trong những trường hợp này người dùng thường không được thông báo rằng dấu vân tay trình duyệt đang được sử dụng.
Theo Eckersley [1], Narayanan [4], Perry [5], người dùng có một số lý do để lo ngại về dấu vân tay trình duyệt và vấn đề về quyền riêng tư:

Thứ nhất, thông thường, không có cách đơn giản nào để xác định chắc chắn liệu một trang web có đang triển khai bất kỳ kỹ thuật lấy dấu vân tay trình duyệt nào không.

Thứ hai, người dùng có thể giới hạn khả năng theo dõi của cookie bằng một số cách, ví dụ: thường xuyên xóa cookie hoặc chặn chúng hoàn toàn (được hỗ trợ bởi hầu hết các trình duyệt), nhưng tại thời điểm hiện tại không có công cụ nào có thể hạn chế lấy dấu vân tay trình duyệt một cách triệt để.

Thứ ba, không giống như cookie, việc thu thập dấu vân tay trình duyệt không phụ thuộc vào một tính năng duy nhất nào của HTTP.

Biện pháp đối phó trên khía cạnh người sử dụng

Lựa chọn và cấu hình trình duyệt

Các trình duyệt khác nhau sẽ có “tính nhạy cảm” với vân tay trình duyệt khác nhau. Những biến thể này phát sinh vì nhiều lý do sau đây: một số tùy chọn cấu hình trình duyệt có thể ảnh hưởng đến việc thu thập vân tay trình duyệt như vô hiệu hóa JavaScript, sự lựa chọn của người dùng về các tùy chọn trên trình duyệt có thể thay đổi hiệu quả của việc in dấu vân tay lên trình duyệt, hay việc chọn một trình duyệt và các phiên bản khác nhau cũng có khả năng giúp trình duyệt ít bị lỗi hơn.
Trình duyệt Tor được thiết kế đặc biệt để giúp người dùng ẩn danh bằng cách định tuyến lưu lượng dữ liệu qua mạng Tor - mạng lớn bao gồm nhiều máy chủ proxy, từ đó bảo vệ quyền riêng tư cho người sử dụng. Do đó, Tor có thể được coi là biện pháp đối phó hiệu quả với người dùng. Không giống như một số trình duyệt được sử dụng rộng rãi khác, trình duyệt Tor mặc định bao gồm một loạt các tính năng nhằm chống lại việc in dấu [6] như: sử dụng một bộ màu hệ thống cố định, tắt các plugin theo mặc định, giới hạn số phông chữ mà tài liệu được phép tải, không cho phép truy cập đọc vào kho hình ảnh trừ khi người dùng cấp phép rõ ràng.

Tuy nhiên, việc sử dụng trình duyệt Tor có một số nhược điểm, bao gồm trải nghiệm duyệt web bị xâm phạm nghiêm trọng [7], một khía cạnh trong đó là tốc độ duyệt chậm; số lượng người dùng cũng tương đối ít (ít hơn 1% người dùng web sử dụng trình duyệt Tor10). Tor cũng có các vấn đề về khả năng sử dụng nghiêm trọng khác: phá vỡ bố cục một số trang web, một số trang web chọn phương pháp chặn khách hàng Tor và thay đổi địa chỉ IP ảnh hưởng tiêu cực đến trải nghiệm duyệt web cục bộ. Một ví dụ khác về vấn đề sử dụng phát sinh khi Tor khuyên người dùng không nên tối đa hóa cửa sổ trình duyệt thông qua một thông báo trong trình duyệt. Điều này nhằm giữ cho cửa sổ ở kích thước mặc định cùng kích thước với những người dùng Tor khác, do đó ngăn các trang web học và phân loại kích thước hiển thị của từng thiết bị. Trong khi điều này làm giảm khả năng hiển thị của trình duyệt, rõ ràng nó sẽ có tác động tiêu cực đến trải nghiệm người dùng.

Với những nhược điểm nghiêm trọng trên, trình duyệt Tor dường như chưa bao giờ được áp dụng rộng rãi và do đó không thể được coi là một phương tiện hữu hiệu để kiểm soát việc thu thập dấu vân tay trình duyệt.

Sử dụng tiện ích mở rộng trình duyệt

Ngoài sự lựa chọn cơ bản về trình duyệt, tùy chọn chính cho người dùng muốn hạn chế tính hiệu quả của việc hạn chế in dấu vân tay trình duyệt là cài đặt một hoặc nhiều tiện ích mở rộng cho trình duyệt.

Người dùng có thể cân nhắc sử dụng các tiện ích trình duyệt như AmIUnique [8], Don't FingerPrint Me [9], Browser Fingerprint Protector [10] trong việc hạn chế dấu vân tay trình duyệt.

Tuy nhiên, không có phương pháp nào để biết liệu các tiện ích mở rộng chống lại các kỹ thuật dấu vân tay trình duyệt có thực sự hoạt động hiệu quả hay không, đặc biệt khi không phải lúc nào cũng có thể phát hiện việc lấy dấu vân tay trình duyệt [6].

Hạn chế

Nhược điểm chính của các biện pháp đối phó từ khía cạnh người dùng là tất cả các phương pháp đều phụ thuộc vào việc thao túng hoặc chặn dữ liệu được trình duyệt gửi đến các máy chủ web từ xa. Điều này dẫn đến một số hạn chế dưới đây:

Thứ nhất, giới hạn sự lựa chọn trình duyệt: mặc dù các trình duyệt khác nhau về khả năng hiển thị, song chúng vẫn có một số lượng lớn các thuộc tính có thể lấy dấu được. Có lẽ điều này ít đúng với các trình duyệt mạnh về quyền riêng tư, như trình duyệt Tor, nhưng phải trả giá bằng trải nghiệm của người dùng.

Thứ hai, giới hạn của tiện ích mở rộng: tiện ích mở rộng trình duyệt có thể tùy chỉnh các chi tiết và hành vi của trình duyệt. Tuy nhiên, khả năng sửa đổi hành vi của các tiện ích mở rộng bị giới hạn đối với những gì nhà cung cấp trình duyệt cho phép. Điều này có nghĩa là tiện ích mở rộng trình duyệt không thể thay thế các biện pháp do nhà cung cấp thực hiện nhằm nâng cao các thuộc tính riêng tư trên trình duyệt của họ.

Thứ ba, trải nghiệm duyệt web bị hạn chế: điều này đặc biệt đúng khi các biện pháp đối phó như vậy chặn các tập lệnh hoặc thuộc tính giả mạo nhất định. Các thuộc tính này có thể quan trọng đối với chức năng của một trang web đang truy cập. Ngoài ra, còn có khả năng dấu vân tay trình duyệt được phát hiện không chính xác, dẫn đến ngăn chặn sai các trang web vô tội.

Thứ tư, nghịch lý dấu vân tay: thuật ngữ này cho thấy thực tế là các biện pháp được thực hiện để hạn chế khả năng để lại dấu vân tay trình duyệt có thể vô tình tạo ra một nguồn dấu vân tay mới. Phần mở rộng của trình duyệt có khả năng chống thu thập dấu dấu vân tay chỉ được cài đặt trong một số ít thiết bị. Khi đó, giao diện của phần mở rộng tự nó là một thuộc tính có thể góp phần vào việc thu thập dấu vân tay trình duyệt. Như phần mở rộng của trình duyệt Google Chrome không thể sử dụng trực tiếp trên trình duyệt Mozilla Firefox…

Kết luận

Trong bối cảnh quyền riêng tư và bảo mật của người dùng Internet đang ngày càng bị đe dọa, các phương thức thực hiện liên tục thay đổi khi chính các trình duyệt phát triển, việc kiểm soát lấy dấu vân tay trình duyệt trái phép càng trở nên khó khăn hơn. Hiện tại, chưa có cơ chế cụ thể hướng dẫn người dùng ngăn chặn hành vi này. Hy vọng trong thời gian tới, đây sẽ là một trong những chủ đề được quan tâm và nghiên cứu nhiều hơn nữa, góp phần tìm kiếm giải pháp cho công nghệ này.

TÀI LIỆU THAM KHẢO

[1] P. Eckersley (2010), "How unique is your web browser?", PETS'10 Proceedings of the 10th International conference on privacy enhancing technologies, Berlin, Germany, pp.1-18.

[2] P. Laperdrix (2017), Browser Fingerprinting: exploring device diversity to augment authentification and build client-side countermeasures, Institut National des Sciences Appliquées de Rennes, Rennes.

[3] https://www.w3.org/TR/fingerprinting-guidance/.

[4] D.R. Arvind Narayanan (2017), "The princeton web transparency and accountability project", Transparent data mining for big and small data (Studies in big data), 32, pp.45-67.

[5] M. Perry (2012), Do not beg: moving beyond DNT through privacy by design, W3C DNT, Tor Project.

[6] http://www.chrismitchell.net/.

[7] Sheharbano Khattak, David Fifield, Sadia Afroz, Mobin Javed, Srikanth Sundaresan, Damon McCoy, Vern Paxson and Steven J. Mur-doch (2016), "Do you see what I see? differential treatment of anonymous users", 23rd Annual network and distributed system security symposium, San Diego, California, USA.

[8] https://amiunique.org/.

[9] https://chrome.google.com/webstore/detail/dont-fingerprint-me/nhbedikkbkakbjipij ipejfojanppbfg.

[10] https://chrome.google.com/webstore/detail/browser-fingerprint prote/ kcklikpoajnp dpjgamjfepagpdkhahpn.

 

Đánh giá

X
(Di chuột vào ngôi sao để chọn điểm)