Là trình duyệt vân tay là một kỹ thuật khả thi để xác định người dùng ẩn danh?


96

Là trình duyệt vân tay là một phương pháp đủ để xác định duy nhất người dùng ẩn danh? Điều gì nếu bạn kết hợp dữ liệu sinh trắc học như cử chỉ chuột hoặc kiểu gõ?

Hôm nọ tôi chạy vào thí nghiệm Panopticlick EFF đang chạy trên dấu vân tay của trình duyệt .

Tất nhiên tôi nghĩ ngay đến những hậu quả riêng tư và làm thế nào nó có thể được sử dụng cho mục đích xấu. Nhưng mặt khác, điều này có thể được sử dụng rất tốt và, ít nhất, đó là một vấn đề hấp dẫn để giải quyết.

Trong khi nghiên cứu chủ đề tôi đã tìm thấy một vài công ty sử dụng dấu vân tay trình duyệt để tấn công gian lận. Và sau khi gửi một vài email, tôi có thể xác nhận ít nhất một trang web hẹn hò chính đang sử dụng dấu vân tay của trình duyệt như một cơ chế để phát hiện tài khoản giả. (Lưu ý: Họ đã thấy rằng nó không đủ độc đáo để hoạt động như một danh tính khi nhân rộng tới hàng triệu người dùng. Nhưng, bộ não lập trình viên của tôi không muốn tin họ).

Đây là một công ty sử dụng dấu vân tay của trình duyệt để phát hiện và ngăn chặn gian lận:
http://www.bluecava.com/

Dưới đây là danh sách khá đầy đủ các nội dung bạn có thể sử dụng làm định danh duy nhất trong trình duyệt:
http://browserspy.dk/


6
Làm thế nào dễ dàng để viết một plugin cho trình duyệt yêu thích của bạn để thay đổi dấu vân tay trình duyệt của bạn? Tôi tưởng tượng nếu nó có thể được thực hiện, ai đó có thể phân phối một plugin như vậy cho phép bạn thay đổi dấu vân tay của bạn theo ý muốn. Nó thậm chí có thể chứa các "hồ sơ" được tải sẵn để cả nhóm người dùng đều có thể sử dụng cùng một dấu vân tay ...
FrustratedWithFormsDesigner

1
Thảo luận về Meta Stack tràn liên quan về việc thực hiện điều này trên Stack Exchange: Thực hiện một số hình thức lấy dấu vân tay của trình duyệt để giúp loại bỏ tất

Liên quan đến việc sử dụng một plugin để thay đổi dấu vân tay trình duyệt. IEEE bài viết này ( spectrum.ieee.org/computing/software/... ) lập luận tại sao điều đó có thể phản tác dụng
Pimin Konstantin Kefaloukos

Câu trả lời:


91

Đầu tiên, tôi không nghĩ nó thực tế khi hy vọng người dùng sẽ tắt JavaScript trên web hiện đại. Vì vậy, hãy xem Panopticlick có thể thu thập thông qua JavaScript một mình, cùng với điểm số duy nhất của trình duyệt cụ thể của tôi:

  • Tác nhân người dùng (1 trên 4.184)
  • Tiêu đề HTTP_ACCEPT (1 trong 14)
  • Chi tiết Plugin trình duyệt (1 trong 1,8 triệu)
  • Múi giờ (1 trong 24)
  • Kích thước màn hình và độ sâu màu (1 trong 1.700)
  • Phông chữ hệ thống (1 trong 11)
  • Cookies kích hoạt? (1 trong 1.3)
  • Thử nghiệm SuperCookie giới hạn (1 trong 2)

Nổi bật về tính độc đáo rõ ràng là Trình cắm người dùng và Trình duyệt. Hãy nhớ rằng các mục này được sử dụng cùng nhau để tạo thành dấu vân tay của trình duyệt, vì vậy chúng mạnh hơn điểm số của từng cá nhân. Sự độc đáo tích lũy ở đây là: 4,184 x 14 x 1.8 million x 24 x 1,700 x 11 x 1.3 x 2aka MỘT SỐ LỚN THỰC SỰ . Điều đó ... khá độc đáo.

Hiện tại tôi đã tắt Flash, với "nhấp để kích hoạt". Kích hoạt Flash cho biết thêm:

  • Phông chữ hệ thống (1 trong 374k)

Flash cung cấp yếu tố phát hiện độc đáo thứ hai, nhưng với số lượng khổng lồ ngay cả phát hiện JavaScript mặc định trong Panopticlick tạo ra, tôi không chắc Flash là cần thiết để loại vân tay trình duyệt này hoạt động. Chỉ cần kích hoạt JavaScript là đủ.

Dấu vân tay trình duyệt chỉ là một phần của câu chuyện. Hãy xem xét tổng của tất cả những gì chúng ta có thể phát hiện từ người dùng ẩn danh, bởi vì tất cả có thể hoạt động cùng nhau với người dùng ẩn danh dấu vân tay. Làm thế nào là khó khăn để thu thập và sử dụng dữ liệu được phát hiện?

  1. Chi tiết trình duyệt đánh hơi, như hình trên (dễ)
  2. Địa chỉ IP, có mức độ tin cậy đã biết với ưu và nhược điểm (dễ)
  3. Các mẫu hành vi của người dùng như sử dụng (thời gian trong ngày), gõ, di chuyển chuột hoặc ngón tay, sử dụng từ (cứng, một số phía máy chủ, một số phía máy khách)

Một điều tôi lo lắng khi chỉ riêng trình duyệt đánh hơi là việc người dùng chuyển đổi trình duyệt dễ dàng đến mức nào. Có ít nhất bốn lựa chọn thay thế trình duyệt tuyệt vời và miễn phí trên hầu hết các nền tảng: Chrome, Opera, Firefox, Safari. Vì vậy, để phá vỡ trình duyệt đánh hơi hoặc ít nhất làm gián đoạn trình duyệt, bạn có thể chuyển đổi trình duyệt thường xuyên.

Điều đáng nói là cái gọi là SuperCookies ở đây vì chúng thực sự có thể hoạt động, trong một số trường hợp, ngay cả khi bạn chuyển đổi trình duyệtngay cả khi JavaScript, HTML 5 Local Storage và Flash bị tắt .

Một nhà nghiên cứu bảo mật đã tiết lộ thiên tài xấu xa đằng sau dịch vụ phân tích web vì lợi nhuận có khả năng theo dõi người dùng trên hơn 500 trang web, ngay cả khi tất cả lưu trữ cookie bị vô hiệu hóa và các trang web được xem bằng chế độ riêng tư của trình duyệt.

(Nếu bạn tò mò, phiên bản TL; DR là họ thực hiện điều này bằng cách khai thác các nguyên tắc tối nghĩa của tiêu đề ETag .)

Dù sao, quay trở lại trình duyệt đánh hơi - có hai điều hơi bất tiện mà người dùng có thể làm để đánh bại điều này:

  1. Liên tục chuyển đổi trình duyệt.
  2. Luôn duyệt với JavaScript và Flash bị vô hiệu hóa.

Tuy nhiên, nếu người dùng không biết rằng cài đặt trình duyệt của họ đang bị đánh hơi và sử dụng như một phần của phương pháp để lấy dấu vân tay của họ, tôi rất nghi ngờ rằng họ nhất thiết sẽ gặp rắc rối khi thực hiện hai điều này. Đó là công việc.

Dựa trên dữ liệu trên, tôi tin rằng trình duyệt đánh hơi có thể giúp xác định người dùng internet ẩn danh điển hình - nhưng nó chỉ hiệu quả khi kết hợp với những thứ khác mà chúng tôi thường phát hiện từ người dùng internet ẩn danh như Địa chỉ IP.


7
Hacker +1. Bố mẹ bạn có biết bạn dành thời gian như thế nào không?
P.Brian.Mackey

2
"Đầu tiên, tôi không nghĩ nó thực tế khi hy vọng người dùng sẽ tắt JavaScript trên web hiện đại." Tôi rất vui vì một giải pháp NoScript đơn giản hoàn toàn ngăn chặn việc tôi bị theo dõi.
Arda Xi

93
"hay còn gọi là SỐ LỚN THỰC SỰ. Điều đó ... khá độc đáo." Nó chỉ duy nhất nếu các tính năng đó được phân phối ngẫu nhiên giữa những người dùng. Có thể là phần lớn người dùng chạy một tập hợp con nhỏ hơn nhiều của các tác nhân và cấu hình plugin? Có một số tác nhân hoặc cấu hình plugin có tương quan cao? Nếu bạn sẽ dựa vào tính độc đáo này, bạn nên xem phân phối các tính năng này giữa những người dùng, không chỉ là trường hợp tốt nhất có thể.
Charles E. Grant

3
@Arda Xi: Vẫn mang lại trải nghiệm duyệt web rắc rối ...;)
BoltClock

1
"Đầu tiên, tôi không nghĩ nó thực tế khi hy vọng người dùng sẽ tắt JavaScript trên web hiện đại." Trân trọng, bạn đã sai. Với addon noscript, thật dễ dàng để vô hiệu hóa tập lệnh cho trang web không xác định của bạn trong khi thưởng thức web hiện đại trên các trang web đã biết.
Arkh

11

Dấu vân tay trình duyệt dựa trên một hệ sinh thái trình duyệt / thiết bị rất không đồng nhất. Một điều cần xem xét là chúng ta đang hướng tới một hệ sinh thái đồng nhất ngày càng nhiều hơn khi ngày càng nhiều việc lướt web trên điện thoại thông minh và máy tính bảng / miếng đệm có xu hướng ít bị phân mảnh hơn theo nghĩa này. IPhone / iPad chẳng hạn sẽ trông giống hệt nhau.


3
một điểm tuyệt vời, và một loại buồn. Nhưng đó là một thực tế rất có thể.
Jeff Atwood

Số lượng mẫu iPhone và iPad đang phân kỳ.
JoJo

10

Là trình duyệt vân tay là một phương pháp đủ để xác định duy nhất người dùng ẩn danh?

Không, tốt nhất là nó có thể nhận dạng duy nhất một Máy tính . Không có cách nào nó có thể phân biệt giữa 2 máy tính mới (và thích) trên cùng một mạng (Cùng một IP) mà không có cookie \ session.

Điều gì nếu bạn kết hợp dữ liệu sinh trắc học như cử chỉ chuột hoặc kiểu gõ?

Điều này không có vẻ thực tế. Điều này sẽ phải được mã hóa gần như hoàn toàn bằng JavaScript vì "dữ liệu số liệu sinh học" là tất cả các phía máy khách. Người dùng chỉ có thể tắt nó đi. Ngoài ra "dữ liệu số liệu sinh học" của bạn sẽ trông như thế nào cho một Perl Script?


Điều đó đang được nói, sử dụng các loại chiến thuật này để chống gian lận là một ý tưởng tốt, Nó không phải là 100% .. bất kỳ sự giảm gian lận nào cũng tốt, ngay cả khi nó chỉ là cải thiện 5%.

Cuộc chiến chống gian lận là một cuộc chiến gia tăng, không có giải pháp đạn duy nhất để chống gian lận, thậm chí không bận tâm tìm kiếm một.


EDIT: Để trả lời các Nhận xét bên dưới (và vì nó rất phù hợp), thực tế là việc lấy dấu vân tay xử lý các hồ sơ khác nhau, theo niềm tin của tôi, là một NEGECT ròng *. Đây là thứ mà người dùng độc hại sẽ sử dụng để đánh lừa cơ chế lấy dấu vân tay, thực tế là người dùng có quyền kiểm soát tất cả các biến được sử dụng trong dấu vân tay là một lỗ hổng nghiêm trọng .

* Đó là lý do tại sao tôi nói tốt nhất nó có thể Xác định một máy tính, bởi vì đó là TỐT HƠN sau đó xác định một Tài khoản trên Máy tính. Nếu bạn có thể làm cả hai, đó là tuyệt vời.


3
"Dữ liệu số liệu sinh học" cũng có thể là khi mọi người truy cập trang web, URL nào, tần suất, mẫu từ và ngôn ngữ của họ .. không có gì trong số này yêu cầu JavaScript
Jeff Atwood

2
Vân tay thực sự có thể xác định ngay cả các tài khoản khác nhau trên cùng một máy. Tôi biết tiếng Anh, tiếng Thụy Điển và một số tiếng Tây Ban Nha. Tôi đã cấu hình máy Mac của mình phù hợp. Khi Firefox yêu cầu một trang, nó sẽ gửi "Ngôn ngữ chấp nhận: en-us, en; q = 0.8, sv; q = 0.5, es; q = 0.3". Vợ tôi không biết tiếng Tây Ban Nha. Firefox trên tài khoản của cô trên cùng một máy không bao gồm cụm từ "es". Rõ ràng điều này bạn nói là không thể.
Andrew Dalke

Andy, chỉ vì đó là hồ sơ người dùng của bạn, không có nghĩa là bạn ngồi trước máy tính.
Morons

4
Mor, tuyên bố của bạn "tốt nhất là nó có thể xác định duy nhất một Máy tính" là không chính xác. Tốt nhất, nó có thể phân biệt giữa các tài khoản khác nhau trên cùng một máy tính. Nếu đó là một tài khoản được nối mạng thì có thể phân biệt giữa hai tài khoản khác nhau trên cùng một mạng. Việc nhiều người có thể sử dụng tài khoản là một vấn đề khác.
Andrew Dalke

6

Tôi đồng ý với @vincentcr , nhưng sẽ thêm một môi trường nữa để xem xét: mạng công ty.

Tại đây, bạn có thể tìm thấy nhiều hàng chục hoặc hàng trăm người dùng (tiềm năng) với cùng một trình duyệt, plugin, phông chữ, v.v ... Các yếu tố bổ sung @vincentcr gợi ý cũng thất bại ở đây - địa chỉ IP có thể giống nhau nếu người dùng đứng sau tường lửa của công ty, cũng như các địa điểm được báo cáo của người dùng.

Ngay cả với các cử chỉ chuột và kiểu gõ được bao gồm, tôi nghi ngờ liệu các kỹ thuật này có thể được sử dụng để xác định người dùng duy nhất với bất kỳ hình thức bảo mật nào không và nếu bạn muốn tài khoản người dùng có thể tồn tại khi người dùng thay đổi trình duyệt, bạn sẽ phải sao lưu nó với một hệ thống xác thực truyền thống hơn.

Mặc dù như những người khác đã nói, nó có thể hữu ích trong việc phát hiện spam và những thứ tương tự. Ví dụ: plugin "Hành vi xấu" của WordPress phân tích các tiêu đề HTTP (trong số các yếu tố khác) trong nỗ lực phát hiện spam bots.


Điểm rất tốt. Mặc dù bạn có thể phát hiện những thứ như đồng hồ lệch, sẽ thay đổi từ máy tính này sang máy tính khác và rõ ràng bạn có thể truy cập IP thực tế thông qua flash. Ngoài ra còn có độ phân giải màn hình, sẽ có giá trị một cái gì đó nhưng ít hữu ích hơn trong môi trường công ty.
SMrF

4

Ngay cả khi có một số lượng lớn kết hợp, chúng không được phân phối đều.

Hãy nghĩ rằng có bao nhiêu người trên, nói, một macbook, sẽ chỉ sử dụng cấu hình chứng khoán. Hoặc những người không bao giờ cài đặt bất kỳ plugin nào: Tôi nghi ngờ đó là phần lớn người dùng.

Và cuối cùng, bạn có phân khúc thiết bị phát triển nhanh nhất: người dùng điện thoại di động và máy tính bảng, đặc biệt là iPhone và iPad, nơi bạn được giảm xuống chỉ còn hai biến: số lượng và số phiên bản.

Vì vậy, nó có thể là một heuristic tốt khi kết hợp với các yếu tố khác (chẳng hạn như địa chỉ IP hoặc vị trí khi có sẵn), nhưng không nhiều hơn thế.


3

Sử dụng dấu vân tay trình duyệt, bạn có thể xác định một người dùng cá nhân trên web và nhược điểm duy nhất là bạn cần phải tạo javascript cho mọi người dùng.

Nó hoạt động trên hai nguyên tắc:

  1. Phát hiện dấu vân tay của trình duyệt dựa trên 8 thông số
  2. Phát hiện nếu ai đó đã thay đổi dấu vân tay của mình bằng cách thay đổi bất kỳ tham số nào.

Sự thành công của dấu vân tay phụ thuộc vào nguyên tắc thứ hai; để phát hiện nếu ai đó đã thay đổi dấu vân tay.

Để biết thêm thông tin chỉ cần thử mã có sẵn . Bạn cần phát triển thuật toán của riêng mình để phát hiện người dùng quay lại vì thuật toán được sử dụng bởi https://panopticlick.eff.org/ hiện không hiệu quả 100%.


1
'không hiệu quả 100%' hoặc có lẽ 'không hiệu quả 100%'? Bạn có thể giải thích về điểm đó?
Martijn Pieters

2

Một số trình duyệt cũng có thể được xác định thông qua HSTS Supercookies.

Đây là nơi bạn có thể nhúng một trang với các yêu cầu vào các bộ tài nguyên an toàn và không an toàn ngẫu nhiên cho mỗi khách truy cập, sau đó theo dõi mẫu yêu cầu của họ trong lần truy cập trở lại. Nếu mỗi tài nguyên được yêu cầu trong cùng một mẫu, thì bạn có thể sử dụng thông tin đó để xác định người dùng.

Chúng đặc biệt hữu ích để xác định iPhone / iPad nếu không có dấu vân tay trình duyệt chung. Cách tiếp cận này không hữu ích cho Internet Explorer khi HSTS không được hỗ trợ.

Bài viết này giải thích cách tiếp cận; http://www.radicalresearch.co.uk/lab/hstssupercookies/

Bài viết này cung cấp một ví dụ hay về cách tận dụng Supercookies của HSTS để xác định người dùng; https ra


0

Javascript không bắt buộc vì có nhiều tham số khác để đánh hơi từ PHP. Điều đó nói rằng, 99% người dùng có JS, vậy tại sao phải bận tâm

Dấu vân tay có thể cung cấp một nhận dạng đủ độc đáo? Tôi cũng tin như thế. Và www.visitor-intellect.com cũng nói như vậy với triết lý sàng lọc kế tiếp. Hãy suy nghĩ về nó.

Thiên hà riêng tư của bạn không lớn như toàn hành tinh của chúng ta.

Có bao nhiêu cô gái cao, tóc nâu, mắt xanh với giọng Pháp đi trên phố? Trên quy mô hành tinh, hàng triệu. Nhưng tôi cá là cô ấy sẽ khá độc đáo trên phố của bạn (hoặc ghé thăm cửa hàng của bạn).

Trừ khi bạn sống ở Champs Elysees. Rồi nhìn gần hơn. Cô ấy mảnh mai và bước đi như một người mẫu? Cô ấy đeo một chiếc túi xách đắt tiền? Được rồi, giờ cô ấy hoàn toàn độc đáo :-)

Nhìn hoàn toàn vào các tiêu đề là sai bởi vì nó bao gồm số phiên bản của trình duyệt và các tham số rất khác nhau.

Chúng tôi hiện đang ở Chrome 27 và Firefox 21. Chúng tôi đang cập nhật phiên bản trình duyệt mà không hề hay biết.

Bây giờ, nhìn vào danh sách plugin đầy đủ cũng khá sai. Hãy thử điều đó: cài đặt firefox, cài đặt trình đọc acrobat, sau đó cài đặt Chrome. Tôi cá là trình đọc acrobat sẽ không hiển thị trong danh sách plugin Chrome của bạn :-)

Vì vậy, điểm mấu chốt là: nếu bạn tìm kiếm một hệ thống nhận dạng hợp lý cho một cửa hàng có kích thước tiêu chuẩn, thì việc lấy dấu vân tay là đủ, và thậm chí ổn định hơn so với cookie (cá nhân tôi xóa tất cả cookie của mình gần như mỗi ngày).

Chỉ 2 xu của tôi

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.