Mô phỏng dấu vân tay di động khiến trình duyệt desktop xuất hiện như một thiết bị di động. Màn hình, mẫu thiết bị, cảm biến và cảm ứng, mạng và nhà mạng, cùng định danh UA/App phải nhất quán với nhau để môi trường trông hợp lý khi được kiểm tra.
Khi chạy quảng cáo và vận hành tài khoản trên các nền tảng như Facebook, Instagram và TikTok, nhiều thao tác hoạt động khác nhau giữa mobile và desktop: bố cục trang khác, điểm truy cập tính năng khác và nền tảng cũng có thể xử lý lưu lượng mobile theo cách khác. Để kiểm tra các tình huống này mà không phải duy trì nhiều điện thoại thật, cần làm cho trình duyệt desktop xuất hiện như một thiết bị di động.
Nói thì chỉ gói gọn trong một câu, nhưng thực tế phải phối hợp cả một bộ tham số. Mức độ đáng tin của môi trường mobile phụ thuộc vào việc các tham số đó có logic với nhau hay không.
Mobile và desktop khác nhau ở đâu
Khác biệt dễ thấy nhất là màn hình. Độ phân giải logic và chiều rộng viewport của thiết bị di động khác xa desktop, và ngay cả cùng một mẫu máy thì viewport khả dụng cũng có thể thay đổi theo phiên bản hệ điều hành. Nếu thông số màn hình không khớp, việc chỉnh các mục phía sau vẫn sẽ tạo cảm giác không nhất quán.
Lớp thứ hai là mẫu thiết bị và phân khúc phần cứng. Nền tảng có thể tham chiếu mẫu máy để ước lượng thiết bị thuộc phân khúc nào rồi quyết định cung cấp phiên bản trang hoặc nội dung nào. Mẫu máy, pixel ratio, bộ nhớ và tham số đồ họa phải tương ứng với nhau. Gắn tên một mẫu cao cấp với đặc điểm phần cứng của máy cấp thấp là một mâu thuẫn rõ ràng.
Cảm biến và đặc điểm cảm ứng là một trong những lớp dễ bị bỏ qua nhất. Điện thoại thật có gyroscope và accelerometer, còn touch events có thể chứa áp lực, diện tích tiếp xúc và multi-touch — những thứ trình duyệt desktop mặc định không có. Nếu chỉ đổi UA thành UA của điện thoại, việc kiểm tra touch events có thể lộ ngay sai lệch. Ở lớp này cần các giá trị sensor readings và dạng touch events hợp lý, chứ không chỉ bật vài tùy chọn.
Loại mạng và nhà mạng cũng là một phần của fingerprint. Thiết bị di động thường dùng mạng cellular, và trang web có thể đọc tên nhà mạng, loại kết nối hoặc thậm chí thông tin liên quan đến tín hiệu. Nếu môi trường khai báo đang dùng một nhà mạng cụ thể tại một quốc gia nhưng kết nối đi ra lại là data-center IP, tổ hợp này hiếm gặp trên thiết bị thật và nên được kiểm tra riêng.
Lớp cuối là user agent và định danh thiết bị, cũng là phần duy nhất nhiều người thay đổi. UA phải khớp với mẫu thiết bị, phiên bản hệ điều hành và phiên bản trình duyệt. Định danh WebView trong App và định danh trình duyệt thông thường cũng là hai loại khác nhau; nền tảng có thể dựa vào đó để nhận biết lượt truy cập được mở từ App hay trực tiếp từ trình duyệt. Trộn lẫn hai loại sẽ để lộ dấu vết rằng môi trường được ghép từ các thành phần không đồng nhất.
Cách kiểm tra tính nhất quán
Sau khi cấu hình tham số, nên kiểm tra theo một thứ tự cố định. Thứ tự quan trọng vì lỗi ở lớp trước thường có thể trông giống lỗi ở lớp sau.
Trước tiên kiểm tra device identity: hệ điều hành, mẫu thiết bị, resolution và pixel ratio mà trang test đọc được có khớp cấu hình hay không, đồng thời mẫu máy và phiên bản hệ điều hành trong UA có khớp với các giá trị đó không. Tiếp theo kiểm tra time zone và language. Cả hai phải phù hợp với target market của tài khoản, trong khi geolocation và outbound region cũng nên nằm trong cùng một khu vực; mâu thuẫn giữa các yếu tố này là dấu hiệu thường gặp. Sau đó kiểm tra mạng: outbound IP là residential hay data-center, thông tin nhà mạng có khớp với quyền sở hữu IP hay không và WebRTC có làm lộ một address hoàn toàn không phù hợp với môi trường hiện tại không. Cuối cùng kiểm tra behavioral capabilities: touch events, sensor readings và font set có giống những gì một thiết bị di động nên có hay không.
Nếu thấy một số mục không đúng, trước tiên hãy tìm tham số nào không phù hợp với tổng thể thay vì liên tục tạo lại môi trường. Rebuild không giải quyết được sự mâu thuẫn nội bộ giữa các tham số.
Cũng cần lưu ý rằng một bất thường trên trang kiểm tra của bên thứ ba không nhất thiết có nghĩa môi trường có vấn đề. Các test site thu thập dữ liệu theo cách khác nhau; có nơi chạy scripts để đọc đặc tính trình duyệt, có nơi xem request headers, nên cùng một môi trường có thể cho kết quả khác nhau trên các trang khác nhau. Browser extensions có thể thay đổi thông tin mà trang đọc được, còn IP database chậm cập nhật có thể định vị sai một residential IP. Chọn một test site được cập nhật thường xuyên và có uy tín làm mốc tham chiếu hữu ích hơn là liên tục so sánh giữa nhiều trang.
Mô phỏng mobile không thay thế được thiết bị thật
Một số tình huống vẫn cần thiết bị vật lý: các bài test cần sensor data thực, camera hoặc đầy đủ chức năng gyroscope; các bước risk control nơi nền tảng đòi hỏi mức độ xác thực thiết bị rất cao và kiểm tra bên trong App; và xác minh liên quan đến thanh toán thật hoặc mạng nhà mạng thật. Ngoài ra, một số chức năng chỉ có trên native client và không có trên web, nên simulated environment cũng không thể bao phủ.
Có thể chia việc như sau: các mobile scenarios mà web xử lý được giao cho simulated environment, còn xác minh cấp hardware và App giao cho thiết bị thật. Hai cách này bổ trợ nhau chứ không thay thế nhau.
Những câu hỏi thường gặp
Chỉ đổi UA có qua được detection không Thường là không. UA là một trong những tham số dễ thay đổi riêng lẻ nhất và cũng dễ cross-check nhất. Nếu resolution, fonts, language, time zone và touch capability không khớp, sai lệch rất dễ bị nhìn thấy.
Một tài khoản nên cố định ở mobile hay desktop Nên giữ ổn định. Việc cùng một tài khoản liên tục chuyển qua lại giữa hai loại thiết bị tự nó có thể là một tín hiệu bất thường. Hãy giữ device type của môi trường phù hợp với cách tài khoản đó thường được sử dụng.
Cần lưu ý gì về compliance Chỉ sử dụng cho việc kiểm thử các tài khoản do bạn vận hành và hoạt động kinh doanh của chính bạn. Không dùng để giả mạo device identity nhằm vượt qua platform verification và không dùng cho hoạt động gian lận.
Kết luận
Mô phỏng dấu vân tay di động không phải là xử lý một tham số riêng lẻ mà là làm cho toàn bộ bộ tham số nhất quán với device identity và target market. Màn hình, mẫu máy, cảm biến, mạng và UA phải hợp lý riêng lẻ và không mâu thuẫn với nhau. Hãy quản lý riêng mobile và desktop environments, giữ một tài khoản lâu dài trên một device profile ổn định và dùng outbound connection độc lập phù hợp với khu vực. Các công cụ quản lý môi trường như PurpleMark có thể gắn device và system parameters, proxy và start page ngay khi tạo môi trường, rồi khôi phục cùng một bộ thiết lập mỗi lần mở để tránh phải cấu hình lại nhiều lần.


