Một nghiên cứu tại IMC 2024 đã biến việc phát hiện thành thí nghiệm trực tuyến có thể tái lập: thay vì tin trình duyệt tự nhận là phiên bản nào, nghiên cứu đếm thuộc tính của các đối tượng nền tảng rồi đối chiếu với phiên bản được khai báo. Phương pháp đáng đọc hơn chính kết luận.
Có rất nhiều nhận định về việc dấu vân tay trình duyệt có thể bị phát hiện hay không, và phần lớn chỉ dừng ở kết luận. Thay vì tranh luận bên nào thắng, hữu ích hơn là xem các nhà nghiên cứu đã biến câu hỏi này thành một thí nghiệm có thể tái lập như thế nào và họ dùng những chỉ số nào để đưa ra đánh giá.
Một nghiên cứu được công bố tại ACM Internet Measurement Conference (IMC) 2024 với tiêu đề Browser Polygraph do các nhà nghiên cứu từ Arizona State University, Boston University và Amazon thực hiện; DOI là 10.1145/3646547.3688455. Thay vì chạy dữ liệu mô phỏng trong phòng thí nghiệm, hệ thống được triển khai trong môi trường sản xuất thực tế của một công ty tài chính lớn trong 4,5 tháng, bao phủ 205.000 phiên người dùng thật. Mười giải pháp che giấu môi trường phổ biến được đưa vào thử nghiệm, còn lưu lượng người dùng bình thường được dùng làm nhóm đối chứng.
Thí nghiệm được xây dựng như thế nào
Ba lựa chọn thiết kế giúp việc phát hiện có thể triển khai trên toàn bộ lưu lượng mà không ảnh hưởng đến hoạt động kinh doanh.
Các đặc trưng phải có chi phí thấp. Hệ thống phát hiện chỉ đọc một tập thuộc tính cố định, với chi phí mỗi lần chạy ở mức mili giây và KB. Vì vậy có thể áp dụng cho toàn bộ lưu lượng mà không cần lấy mẫu và người dùng hầu như không nhận thấy tác động.
Các đặc trưng phải ổn định. Nghiên cứu không chọn những tham số người dùng có thể sửa mà chọn các cấu trúc nền tảng do chính trình duyệt quyết định. Mỗi phiên bản trình duyệt đi kèm một JavaScript engine khác nhau, và giữa các phiên bản có những khác biệt nhỏ về số lượng API cũng như số thuộc tính gắn với từng đối tượng. Nghiên cứu dùng khoảng từ Chrome 110 đến Chrome 114 để đối chiếu: hệ thống đếm thuộc tính của 28 đối tượng quan trọng rồi so sánh kết quả với phiên bản mà trình duyệt tự khai báo. Nếu không khớp, phần khai báo và hành vi thực tế không đến từ cùng một nền tảng kỹ thuật.
Nhãn phải đáng tin cậy. Từng môi trường thử nghiệm được kết nối với cùng một luồng lưu lượng sản xuất và được đánh giá theo cùng một bộ quy tắc, trong khi nhóm đối chứng là hành vi bình thường của người dùng thật. Vì vậy kết quả không phải là nhận xét chủ quan xem thứ gì đó “trông có thật không”, mà là liệu lưu lượng này có thể bị phân biệt theo cùng một quy tắc hay không.
Các chỉ số đánh giá mức độ mô phỏng thực
Các phép đo trong nghiên cứu có thể chia thành bốn nhóm.
- Tính nhất quán: phiên bản mà trình duyệt khai báo có khớp với cấu trúc đối tượng nền tảng hay không? Đây là chỉ số cốt lõi và khó làm giả nhất, vì sửa một chuỗi văn bản không đồng thời thay đổi số lượng đối tượng và thuộc tính trong engine.
- Tỷ lệ phát hiện: nghiên cứu thực hiện thử nghiệm chi tiết trên bốn giải pháp, với tỷ lệ phát hiện từ 67% đến 84%.
- Độ lệch so với thiết bị thật: dưới cùng một bộ quy tắc, trình duyệt bình thường có điểm rủi ro bằng 0, còn các giải pháp thử nghiệm có mức trung bình từ 8,85 đến 11,66. Điểm này thể hiện khoảng cách so với phân bố thực, không phải cảm nhận chủ quan về độ giống.
- Khả năng phân biệt: có thể tách lưu lượng thử nghiệm khỏi lưu lượng bình thường hay không? Một nhóm không thể tách ra cho thấy, theo phương pháp này, nó không có khoảng cách hành vi rõ rệt so với trình duyệt thật.
Trong bốn chỉ số, chỉ số đầu tiên là nguyên nhân; ba chỉ số sau là hệ quả của nó.
Bốn nhóm kết quả khác nhau ở đâu
Nghiên cứu chia các giải pháp được thử nghiệm thành bốn nhóm dựa trên cách triển khai ở tầng nền tảng.
Ở nhóm thứ nhất, các đặc trưng cấp thấp không khớp với bất kỳ phiên bản trình duyệt thật nào đã biết, tức là không có engine tương ứng. Chỉ cần quét đơn giản là sự không nhất quán đã lộ ra.
Ở nhóm thứ hai, môi trường có các đặc trưng vân tay thật, nhưng khi chuyển danh tính thì chỉ phần khai báo bề mặt thay đổi còn engine nền tảng vẫn giữ nguyên. Đây là kiểu phổ biến nhất trong nghiên cứu. Có thể ví như danh thiếp ghi phiên bản mới nhưng giọng nói vẫn mang dấu vết của bản cũ. Vấn đề không nằm ở việc từng tham số được tinh chỉnh tốt đến đâu, mà ở khoảng cách giữa khai báo và hành vi; phần lớn khả năng phát hiện đến từ đây.
Ở nhóm thứ ba, engine nền tảng thay đổi đồng thời với danh tính. Môi trường khai báo phiên bản nào thì chạy đúng engine tương ứng với phiên bản đó, nên tính nhất quán được giữ và hệ thống phát hiện này không phân biệt được lưu lượng. Bài nghiên cứu cũng nêu rằng muốn nhận diện nhóm này cần các phương pháp phát hiện phức tạp hơn.
Nhóm thứ tư không sửa trình duyệt. Một trình duyệt thật được chạy trong máy ảo rồi tải cấu hình mục tiêu. Vì trình duyệt thực sự là thật nên hệ thống phát hiện không thể phân biệt, nhưng chi phí vận hành cao và khó mở rộng quy mô.
Khác biệt giữa bốn nhóm không nằm ở số lượng tham số mà ở việc phần khai báo và hành vi có cùng xuất phát từ một nền tảng hay không.
Gợi ý thực tế khi chọn giải pháp môi trường
Trọng tâm phát hiện đã chuyển từ đọc phần khai báo sang xác minh hành vi, vì vậy các tham số bề mặt có thể chỉnh sửa ngày càng ít tạo lợi thế. Khi đánh giá thực tế:
- Hỏi về tầng nền tảng, không chỉ hỏi danh sách tham số. Khi đổi phiên bản khai báo, tầng bên dưới có thay đổi theo không? Dấu vân tay được tự động tạo thành các tổ hợp thực hay được ghép thủ công từ nhiều giá trị?
- So sánh các môi trường với nhau. Nếu nhiều môi trường trả về các đặc trưng cấp thấp rất giống nhau, mức độ cô lập chưa hoàn toàn.
- Ưu tiên tính nhất quán trước, khác biệt hóa sau. Càng tinh chỉnh nhiều đặc trưng mâu thuẫn nội bộ, bề mặt có thể bị phát hiện càng lớn.
- Vượt qua một trang kiểm tra chung không đồng nghĩa nền tảng sẽ chấp nhận môi trường đó. Bước cuối vẫn nên dùng một lượng nhỏ lưu lượng thật để tự xác minh.
Vấn đề cốt lõi của lớp cô lập môi trường là làm cho mỗi môi trường trở thành một hệ thống độc lập và nhất quán nội bộ. Đó là điều PurpleMark hướng tới. Cả phát hiện lẫn chống phát hiện đều nên được sử dụng trong giới hạn tuân thủ phù hợp; giá trị thực của nghiên cứu là cung cấp cơ sở có bằng chứng cho việc đánh giá, chứ không phải xếp hạng sản phẩm nào tốt hay xấu.


