Chưa tham gia cùng chúng tôi?
Đăng ký để truy cập tất cả các tính năng của trang web.
Đăng ký26.08.26
Cho đến gần đây, việc ẩn danh trình duyệt dường như khá ngây thơ theo tiêu chuẩn hiện nay. Vào đầu những năm 2010, việc thay đổi địa chỉ IP, chạy Tor và tinh chỉnh trình duyệt là đủ để biến bạn thành một người dùng mới đối với nhiều hệ thống. Sau đó, Canvas, WebGL, AudioContext, WebRTC, Client Hints, WebAssembly, WebGPU và hàng tá nguồn tín hiệu khác xuất hiện, và phần mềm chống gian lận đã ngừng xem xét một tham số duy nhất mà bắt đầu xem xét sự kết hợp của chúng.
BrowserFM tiến xa hơn rất nhiều. Thay vì chỉ là một dấu vân tay thông thường, nó cố gắng xây dựng một mô hình môi trường trình duyệt của người dùng, thu thập tới 16.000 thuộc tính khác nhau. Và đây là điểm thực sự thú vị — bởi vì đối với các đối tác liên kết, người dùng nhiều tài khoản, nhà quảng cáo, người săn lùng phần thưởng, hoặc đơn giản là bất kỳ ai tin rằng "một địa chỉ IP mới cộng với một hồ sơ trình duyệt mới bằng một người dùng mới," thì luật chơi đang âm thầm thay đổi.
FM ở đây không liên quan gì đến radio: BrowserFM là viết tắt của Browser Future Model (Mô hình Tương lai của Trình duyệt). Ý tưởng của dự án khá táo bạo: tại sao phải chọn một vài chục đặc điểm "tốt" của trình duyệt khi bạn có thể thu thập hầu như mọi thứ mà trình duyệt có thể cho bạn biết về thiết bị? Nó dựa trên cái gọi là Liệt kê BOM, hay Liệt kê Mô hình Đối tượng Trình duyệt: hệ thống duyệt qua các đối tượng có sẵn cho trình duyệt và trích xuất các đặc điểm từ nhiều nguồn khác nhau—Cửa sổ, Trình điều hướng, Màn hình, Hiệu suất, CSS, GPU, kích thước cửa sổ, thông số hiển thị, DPI, độ phân giải, API có sẵn, các tính năng của môi trường phần mềm, và hàng tá thứ khác. Tổng cộng, nó tích lũy khoảng 16.000 thuộc tính.
Nhiều giải pháp truyền thống tìm kiếm một tập hợp tương đối nhỏ các đặc điểm mang tính thông tin nhất. BrowserFM hoạt động theo triết lý ngược lại: nếu trình duyệt cung cấp một tham số, tại sao không sử dụng nó? Do đó, coi BrowserFM là "một dấu vân tay khác" không hoàn toàn chính xác. Nó giống như một bộ công cụ có thể được sử dụng để lắp ráp một số lượng lớn các dấu vân tay độc lập.
Hãy tưởng tượng một hệ thống chống gian lận nhận 16.000 giá trị và đơn giản là nén chúng thành một mã băm SHA-256 duy nhất. Thay đổi DPI—một mã băm mới. Thay đổi kích thước cửa sổ—một mã băm mới khác. Cập nhật Chrome—một mã băm khác nữa. Một hệ thống như vậy sẽ cực kỳ nhạy cảm và thực tế là vô dụng cho việc nhận dạng lâu dài. BrowserFM làm điều thông minh hơn: tất cả các tham số được phân phối trên các nhánh—Window, Navigator, Screen, CSS, GPU, Performance, và các nhánh khác—và mỗi nhánh mô tả phần riêng của nó trong môi trường.
Đây là một sự thay đổi cơ bản. Giờ đây, hệ thống chống gian lận không chỉ có thể so sánh "dấu vân tay A có giống với dấu vân tay B không?" mà còn có thể đặt ra một câu hỏi tinh tế hơn nhiều: "Những phần nào của dấu vân tay A tương tự với B, và sự tương đồng này có ý nghĩa thống kê đến mức nào?" Điều này có một hệ quả trực tiếp. Giả sử người dùng nâng cấp card đồ họa của họ, và dấu vân tay truyền thống, gắn liền với WebGL và WebGPU, đã thay đổi đáng kể. Tại sao lại phải bỏ đi phần dữ liệu còn lại? BrowserFM cho phép chúng ta nói, "Nhánh GPU khác biệt - được rồi, hãy tạm thời bỏ qua nó và so sánh mọi thứ khác." Nếu Window, Navigator, Performance, CSS và một loạt các đặc điểm khác vẫn khớp, hệ thống có lý do để tin rằng đó là cùng một người dùng với phần cứng được cập nhật. Không cần phải tìm kiếm sự trùng khớp hoàn toàn - chỉ cần khớp các phần riêng lẻ của mô hình là đủ.
Vấn đề chính thậm chí không nằm ở số lượng đặc điểm. Bạn có biết hệ thống phân tích độ phân giải màn hình không? Hãy thay đổi nó. Bạn có biết về khả năng xử lý đồng thời của phần cứng không? Hãy thay đổi nó. Và quan trọng hơn nữa là về tác nhân người dùng (user agent). Nếu dấu vân tay chỉ là một hàm băm đơn giản của một tập hợp các tham số, việc thay đổi dữ liệu đầu vào sẽ đủ để nhận được một giá trị đầu ra hoàn toàn khác. Nhưng BrowserFM dựa trên ý tưởng về hàm băm mờ – một sự so sánh không hoàn toàn trùng khớp. Thay vì yêu cầu sự trùng khớp chính xác, hệ thống tìm kiếm một dấu vân tay tương tự.
Nói cách khác, dấu vân tay không phải là mật khẩu: nó không cần phải khớp từng bit một. Hệ thống cần hiểu mức độ tương đồng giữa hai môi trường, và mô hình cho phép sự biến đổi đáng kể ở một số đặc điểm. Do đó, việc thay đổi một vài tham số rõ ràng không nhất thiết có nghĩa là phá vỡ kết nối với môi trường cũ. BrowserFM tuyên bố độ chính xác nhận dạng đạt khoảng 99,7% trong điều kiện thử nghiệm thích hợp — và con số đó ấn tượng hơn nhiều so với chỉ riêng con số "16.000".
Một ví dụ rõ ràng. Lần chạy đầu tiên: 1920x1080, 96 DPI, Chrome, card đồ họa NVIDIA, 8 luồng CPU, một bộ phông chữ cụ thể và các chỉ số hiệu năng cụ thể. Lần chạy thứ hai: 1366x768, 120 DPI, cùng Chrome, cùng card đồ họa NVIDIA, cùng 8 luồng, gần như cùng bộ phông chữ và các chỉ số hiệu năng tương tự. Chỉ nhìn vào ảnh chụp màn hình, chúng ta đang thấy những người dùng khác nhau. Nhìn vào toàn bộ mô hình, kết quả còn xa mới chắc chắn. Hơn nữa, các nhánh có trọng số khác nhau: một tham số dễ thay đổi không nên được đánh giá cao bằng một đặc điểm khó làm giả một cách nhất quán. Và đây có lẽ là phần thú vị nhất của BrowserFM.
Bạn có thể thay thế một chuỗi ký tự. Bạn có thể thay đổi giá trị API JavaScript. Bạn có thể cho một trang web biết độ phân giải khác. Nhưng việc khiến một máy tính hoạt động ổn định như các phần cứng khác là một nhiệm vụ khó khăn hơn nhiều. BrowserFM đặc biệt chú trọng đến phần Hiệu năng: trong trình kiểm tra demo, chỉ riêng mục này đã bao gồm hàng tá chỉ số hiệu năng khác nhau. Logic rất đơn giản: nếu hai thiết bị tuyên bố có thông số kỹ thuật giống hệt nhau nhưng thực hiện cùng một thao tác theo cách khác biệt về cơ bản, một tín hiệu bổ sung sẽ được tạo ra. Điều này đặc biệt rõ ràng trong trường hợp ảo hóa và môi trường trình duyệt được tạo ra một cách nhân tạo.
Bạn có thể nói, "Tôi là một máy tính gia đình điển hình." Nhưng việc nhận dạng dấu vân tay hiệu năng đặt ra một câu hỏi khác: "Trình duyệt của bạn có thực sự hoạt động như một máy tính gia đình điển hình không?" Do đó, nhánh Hiệu năng có khả năng nhận được trọng số cao hơn so với nhánh Cửa sổ hoặc Trình duyệt, vốn dễ dàng thay đổi. Đây là một sự thay đổi quan trọng trong việc nhận dạng dấu vân tay: chống gian lận dần chuyển từ câu hỏi "Trình duyệt báo cáo gì về chính nó?" sang câu hỏi "Trình duyệt và thiết bị thực sự hoạt động như thế nào?"
Nếu kế hoạch ẩn danh của bạn vẫn phụ thuộc nhiều vào việc "giả mạo User-Agent", chúng tôi có tin xấu. User-Agent chỉ là một trong nhiều tín hiệu, và công cụ trình duyệt tự bộc lộ thông qua các API hoàn toàn khác nhau. Một ví dụ điển hình là nhận dạng dấu vân tay AudioContext: sự khác biệt trong việc triển khai ngăn xếp âm thanh và công cụ tạo ra các đặc điểm không thể thay đổi một cách nhất quán chỉ bằng một chuỗi User-Agent duy nhất.
Giờ hãy thêm vào đó Canvas, WebGL, WebGPU, WebAssembly, CSS, Hiệu năng, phông chữ, Trình duyệt, Màn hình—và hàng ngàn đặc điểm ít rõ ràng hơn. Hóa ra điều này rất đơn giản: bạn có thể cho một trang web biết bạn đang sử dụng trình duyệt khác, nhưng 15.999 tham số còn lại cũng phải khớp với bạn. Tính nhất quán là một trong những vấn đề cốt lõi của việc nhận dạng dấu vân tay trình duyệt hiện đại.
Có một chi tiết thường bị đánh giá thấp. Giả sử bạn đã thiết lập một máy tính hoàn toàn mới: cài đặt Windows mới, trình duyệt mới, địa chỉ IP mới và không có cookie. Có vẻ như đó là một người dùng mới hoàn hảo. Nhưng một vấn đề bất ngờ phát sinh: người bình thường hầu như không bao giờ sử dụng máy tính hoàn toàn sạch sẽ. Qua nhiều tháng và nhiều năm, rác kỹ thuật số tích tụ trên máy tính—các chương trình, phông chữ, tiện ích mở rộng, bộ ứng dụng văn phòng, trình chỉnh sửa đồ họa, ứng dụng tiện ích—và tất cả những thứ này dần dần làm thay đổi môi trường mà trình duyệt nhìn thấy. Do đó, một bản cài đặt Windows hoàn toàn sạch sẽ tự nó có thể là một tín hiệu chống gian lận thú vị.
Kỹ thuật nhận diện phông chữ đã tồn tại từ lâu, nhưng nó đặc biệt hữu ích trong một hệ thống quy mô lớn như BrowserFM. Tập hợp các phông chữ có sẵn gián tiếp tiết lộ thông tin về bản địa hóa hệ thống, phần mềm đã cài đặt, tuổi đời của môi trường và bản chất sử dụng máy tính. Microsoft Office mang đến những phông chữ riêng, các ứng dụng Adobe để lại một tập hợp dấu vết khác, và các gói ngôn ngữ lại tạo nên một tập hợp thứ ba. Tất cả tạo nên một lịch sử độc đáo về vòng đời của hệ thống.
Hãy tưởng tượng một người dùng tuyên bố, "Tôi chỉ là một người Mỹ bình thường đã sử dụng máy tính Windows này từ lâu." Nhưng môi trường của người dùng trông giống như một hệ thống được cài đặt cách đây hai mươi phút—thiếu phần mềm nhận dạng cá nhân của người dùng và với phông chữ của một vùng miền hoàn toàn khác. Mỗi dấu hiệu riêng lẻ không chứng minh được điều gì, nhưng đó chính xác là cách thức nhận dạng dấu vân tay hoạt động trong thế kỷ 21: các tín hiệu yếu cộng lại thành một kết luận mạnh mẽ.
Trong một số trường hợp, việc sử dụng VPS hoặc máy chủ từ xa, cài đặt trình duyệt và làm việc thông qua đó rất tiện lợi—và từ góc độ mạng, mọi thứ có vẻ hoàn hảo. Nhưng mạng chỉ là một lớp. Một hệ thống như BrowserFM phân tích các đặc điểm của chính môi trường: phiên bản Windows trên máy chủ khác với phiên bản dành cho gia đình thông thường, một bản cài đặt mới có cấu hình riêng biệt, và môi trường ảo hóa bổ sung thêm một tập hợp các tín hiệu khác. Một địa chỉ IP dân dụng chất lượng cao tự nó không biến máy chủ thành máy tính xách tay tại nhà. Có thể nói một cách đơn giản: địa chỉ IP cho trang web biết bạn đến từ đâu, và dấu vân tay cố gắng hiểu cách bạn truy cập—và hệ thống chống gian lận quan tâm đến cả hai câu trả lời này.
Máy ảo lại là một câu chuyện khác. Máy ảo từng là công cụ gần như phổ biến để phân tách các môi trường; ngày nay, bản thân ảo hóa đang trở thành một phần của việc chấm điểm rủi ro. BrowserFM rất thú vị ở đây vì nó không cố gắng tìm một cờ thần kỳ duy nhất như "isVirtualMachine = true", mà thay vào đó thu thập vô số các chỉ số gián tiếp: GPU, hiệu năng, phông chữ, màn hình, API khả dụng, môi trường phần mềm, hành vi trình duyệt và các tính năng hệ thống. Mỗi tín hiệu riêng lẻ đều hoàn toàn hợp lệ, nhưng sự kết hợp của chúng có thể tạo ra một hồ sơ máy ảo đặc trưng — và điều này khó khắc phục hơn nhiều chỉ với một thiết lập duy nhất.
Trong quá khứ, nhiệm vụ của một trình duyệt chống phát hiện trông giống như thế này: thu thập dấu vân tay, sửa đổi dấu vân tay, tạo hồ sơ độc lập. Nhưng càng nhiều nguồn thông tin độc lập mà trình duyệt tích hợp, thì việc duy trì tính nhất quán giữa chúng càng khó khăn. Giả sử tính năng chống phát hiện thay đổi GPU—tuyệt vời. Nhưng hiệu năng của GPU đó có khớp không? WebGPU có khớp không? Số lượng lõi CPU có tương quan với hiệu năng không? Màn hình có khớp với thiết bị được quảng cáo không? Bộ phông chữ có tương thích với hệ điều hành và ngôn ngữ không? Phiên bản trình duyệt được chỉ định có hỗ trợ một tập hợp API cụ thể không? Việc tạo ra các giá trị hợp lý không còn là đủ nữa—chúng ta cần tạo ra một hệ thống các giá trị liên kết hợp lý. Và sự khác biệt ở đây là rất lớn.
Một ví dụ tương tự dễ hiểu là hộ chiếu. Tên: John Smith. Quốc gia: Hoa Kỳ. Năm sinh: 1990. Mọi thứ có vẻ bình thường. Nhưng rồi hóa ra hộ chiếu được cấp ở Pháp, số hộ chiếu theo định dạng Đức, ảnh được chụp cách đây ba mươi năm, và ngày cấp là ngày mai. Mỗi thông số riêng lẻ đều có vẻ hợp lý, nhưng khi kết hợp lại thì thật vô lý. Điều tương tự cũng xảy ra với dấu vân tay trình duyệt. Phần mềm chống gian lận hiện đại ngày càng ít quan tâm đến câu hỏi "thông số này có thể bị giả mạo không?" - mà quan trọng hơn nhiều là: "hàng ngàn thông số có thể bị giả mạo mà vẫn giữ được tính nhất quán không?" BrowserFM biến vấn đề này thành một nguyên tắc kiến trúc.
Có vẻ như mọi thứ đơn giản hơn trên điện thoại thông minh: phạm vi mẫu mã hạn chế, hàng triệu người có iPhone và điện thoại Samsung giống hệt nhau, phần cứng được thống nhất, có nghĩa là dấu vân tay sẽ ít độc đáo hơn. Không hẳn vậy. Android đặc biệt thú vị: bất chấp sự thống nhất phần cứng, trình duyệt vẫn nhận được một lượng lớn các đặc điểm từ môi trường phần mềm và phần cứng. Kết hợp những điều này vào một mô hình lớn hơn, thêm các chỉ số hiệu suất, và số lượng các tổ hợp tiềm năng tăng lên đáng kể. Do đó, các công nghệ như BrowserFM có thể thu hẹp khoảng cách giữa việc nhận dạng dấu vân tay trình duyệt và xác thực, điều mà trước đây yêu cầu cài đặt một ứng dụng. Đây là một hướng đi đặc biệt đầy hứa hẹn cho việc chống gian lận trên thiết bị di động.
Có một khía cạnh của công nghệ mà người dùng thường không để ý đến: chi phí lưu trữ dữ liệu. Điều này đặc biệt đúng khi bạn có hàng trăm triệu sự kiện mỗi ngày, chứ không chỉ một nghìn lượt truy cập mỗi tháng. Google, Amazon, các mạng lưới quảng cáo, ngân hàng, các sàn thương mại điện tử và các nền tảng chống gian lận lớn đều xử lý khối lượng dữ liệu khổng lồ. Theo kiến trúc được nêu, cách biểu diễn dữ liệu của BrowserFM được lưu trữ gọn hơn nhiều so với JSON tiêu chuẩn — các nguồn dữ liệu cho biết mức tiết kiệm lên đến chín lần.
Đối với một người dùng đơn lẻ, đây chỉ là vấn đề nhỏ. Nhưng đối với hàng trăm triệu dấu vân tay, đó lại là một lợi thế về cơ sở hạ tầng. Và thường thì, số phận của một công nghệ không chỉ được quyết định bởi câu hỏi "nó hoạt động tốt đến mức nào?" mà còn bởi "chi phí triển khai nó cho 500 triệu truy vấn là bao nhiêu?". Nếu một dấu vân tay vừa chính xác hơn vừa có chi phí lưu trữ rẻ hơn, thì động lực để triển khai nó sẽ tăng lên đáng kể.
Và một điểm không may khác của khái niệm này: nó không gắn liền với các API hiện tại. Một giao diện trình duyệt mới đã xuất hiện—nó đang được thêm vào nhánh tương ứng. Một cách thức mới để thu thập thông tin GPU đã xuất hiện—một tín hiệu khác. Một API hiệu năng mới—thêm một vài đặc điểm nữa. Chính vì lý do này mà cái tên Mô hình Tương lai có vẻ phù hợp: nó không phải là một dấu ấn cố định, mà là một kiến trúc mà các nguồn thông tin mới có thể được bổ sung vô tận. Hiện nay, có 16.000 tham số. Ngày mai, có thể sẽ còn nhiều hơn nữa.
Kết luận tuy không mấy dễ chịu nhưng lại hữu ích: kỷ nguyên chống lại việc nhận dạng dấu vân tay bằng cách thay thế một vài tham số phổ biến đang dần kết thúc. Một hệ thống hiện đại có thể đồng thời phân tích môi trường mạng, trình duyệt, phần cứng, hiệu năng, môi trường phần mềm, lịch sử thay đổi, tính nhất quán của các đặc điểm và hành vi người dùng. BrowserFM chủ yếu bao phủ một phạm vi rộng lớn của trình duyệt và các lớp phần cứng/phần mềm. Do đó, câu hỏi đang dần thay đổi. Trước đây, câu hỏi là, "Dấu vân tay của tôi có bị thay đổi không?" Giờ đây, một câu hỏi chính xác hơn là, "Môi trường mới có giống một thiết bị thực, độc lập không?" Đây là hai câu hỏi hoàn toàn khác nhau.
Điều này đặc biệt quan trọng cần nhớ khi làm việc với các công cụ kiểm tra dấu vân tay. Người dùng thay đổi một tham số, làm mới trang, thấy "ID dấu vân tay đã thay đổi" và vui mừng kết luận rằng trang web giờ đây coi họ là một người khác. Nhưng điều này có thể tạo ra cảm giác an toàn giả tạo. Mã băm đầy đủ sẽ thay đổi ngay cả với những chỉnh sửa nhỏ đối với dữ liệu đầu vào, nhưng giải pháp chống gian lận không nhất thiết phải sử dụng nó làm định danh duy nhất. Nó có thể lưu trữ và so sánh riêng biệt các cấu hình GPU, Hiệu năng, Trình duyệt, Màn hình và CSS và đánh giá sự tương đồng giữa các cấu hình cũ và mới. Câu hỏi không phải là liệu mã băm có thay đổi hay không—mà là không gian tính năng đó đã thay đổi bao nhiêu.
Và điều này dẫn chúng ta đến ý tưởng cơ bản nhất của BrowserFM, điều thú vị hơn bất kỳ con số nào. Trong vài năm nữa, "16.000" có thể trở nên hoàn toàn bình thường—điều quan trọng là một thứ khác: dấu vân tay trình duyệt không còn là một định danh mà trở thành một kiểu thiết bị. Và một kiểu thiết bị, về bản chất, luôn thay đổi. Người dùng có thể thay đổi card đồ họa, cập nhật trình duyệt, thay đổi độ phân giải, mua màn hình mới hoặc cài đặt Office. Máy tính thực tế thay đổi liên tục—và một giải pháp chống gian lận tốt không nên mất người dùng sau mỗi lần thay đổi như vậy. Nó phải hiểu bản chất của sự thay đổi: phân biệt sự tiến hóa tự nhiên của một hệ thống sống với một môi trường được lắp ráp vội vàng chỉ giả vờ là thật.
Điều này đặt ra một câu hỏi mới, khó khăn hơn nhiều đối với bất kỳ ai xây dựng hồ sơ độc lập. Trước đây, câu hỏi là "làm thế nào để có được dấu vân tay mới?" Giờ đây, câu hỏi là "làm thế nào để xây dựng một môi trường hoạt động giống như một thiết bị hoàn toàn khác và vẫn duy trì tính nhất quán nội bộ, phát triển theo thời gian giống như một máy tính thực sự?" Đây không chỉ là một sự thay đổi trong giao diện, mà là một thách thức kỹ thuật toàn diện.
Bằng cách nhấp vào "Chấp nhận", bạn đồng ý rằng Detect Expert có thể sử dụng cookie để hỗ trợ cá nhân hóa nội dung.
Bạn luôn có thể bỏ chọn bằng cách tuân thủ hướng dẫn trong chúng tôi Chính sách Cookie.