Phương pháp
Cách các bài kiểm tra MyLeaks hoạt động
MyLeaks báo cáo các quan sát được thực hiện trong lần tải trang hiện tại và các kết nối mạng liên quan.
Phạm vi và diễn giải
Kết quả có thể bị ảnh hưởng bởi hành vi trình duyệt, kiểm soát quyền riêng tư, VPN, proxy, NAT, tường lửa và các phần mềm mạng khác. Đọc từng kết quả cùng với những giới hạn đã nêu.
1. IP & vị trí địa lý
Những gì chúng tôi đo
IP nguồn của kết nối HTTPS, phiên bản IPv4 hoặc IPv6, phiên bản TLS và bộ mã đã thương lượng, User-Agent, Accept-Language và Client Hints entropy thấp (Sec-CH-UA, Sec-CH-UA-Mobile và Sec-CH-UA-Platform). Khi có dữ liệu, kết quả cũng có thể bao gồm quốc gia, phân vùng hành chính, thành phố, vĩ độ/kinh độ gần đúng, bán kính sai số, múi giờ, ASN và tổ chức AS.
Cách chúng tôi đo
MyLeaks đọc địa chỉ nguồn và thông tin kết nối quan sát được trong lần thăm hiện tại. Vị trí xấp xỉ và các trường mạng được tra cứu từ dữ liệu tham chiếu IP.
Kết quả có ý nghĩa gì
IP công khai là địa chỉ được quan sát cho yêu cầu HTTPS tới MyLeaks. Các trường địa lý và mạng là ước tính từ cơ sở dữ liệu gắn với địa chỉ IP đó, không phải vị trí do thiết bị báo cáo.
Giới hạn
VPN, forward proxy, NAT cấp nhà mạng, gateway doanh nghiệp và các kiểu định tuyến khác có thể làm thay đổi địa chỉ được quan sát. Cơ sở dữ liệu IP có thể thiếu, lỗi thời hoặc không chính xác về địa lý. Bài kiểm tra này không yêu cầu quyền GPS hoặc quyền vị trí thiết bị khác.
2. Phát hiện proxy/VPN
Những gì chúng tôi đo
Các chỉ báo phân loại về địa chỉ IP công cộng được quan sát, bao gồm proxy, VPN, Tor, hosting/datacenter, residential-proxy, loại mạng, nhà mạng, các trường độ tin cậy và rủi ro khi có sẵn.
Cách chúng tôi đo
MyLeaks kiểm tra địa chỉ IP công cộng hiện tại so với dữ liệu phân loại mạng và trình bày các chỉ số có sẵn theo định dạng nhất quán.
Kết quả có ý nghĩa gì
Phát hiện nghĩa là đã tìm thấy chỉ báo cho IP hiện tại. Không phát hiện nghĩa là không tìm thấy chỉ báo trong kiểm tra này. Không xác định nghĩa là thông tin cần thiết không có sẵn hoặc không đủ.
Giới hạn
Dữ liệu phân loại có thể không đầy đủ, chậm trễ hoặc lỗi thời. Các danh mục mạng chồng chéo và có thể xung đột, đặc biệt đối với dịch vụ lưu trữ chia sẻ, relay và các dịch vụ mới hơn.
3. WebRTC
Những gì chúng tôi đo
Loại ứng viên ICE, địa chỉ, cổng, giao thức, địa chỉ/cổng liên quan, loại TCP và việc địa chỉ đó là địa chỉ số công khai, địa chỉ số riêng tư/cục bộ hay một tên được mDNS làm mờ mang đuôi .local hoặc một hostname khác. Số lượng được hiển thị cho host, server-reflexive (srflx), relay, peer-reflexive và các ứng viên không xác định.
Cách chúng tôi đo
Trang tạo kết nối WebRTC, mở kênh dữ liệu và thu thập các ứng viên ICE cho đến khi trình duyệt kết thúc hoặc bài kiểm tra hết thời gian. Nó không yêu cầu truy cập camera hoặc micro. Các trường ứng viên có cấu trúc được ưu tiên, với phân tích ứng viên thô như phương án dự phòng.
Ứng viên máy chủ đại diện cho một địa chỉ giao diện hoặc mDNS thay thế của nó. Ứng viên phản xạ máy chủ là địa chỉ được ánh xạ học được trong quá trình thiết lập kết nối. Một ứng viên chuyển tiếp định tuyến qua TURN và được hiển thị nhưng loại trừ khỏi so sánh trực tiếp với IP công cộng. Ứng viên tư nhân/địa phương và mDNS chủ nhà được báo cáo riêng biệt.
Kết quả có ý nghĩa gì
MyLeaks so sánh các địa chỉ số công khai dạng host hoặc server-reflexive với địa chỉ HTTP công khai. Khác biệt chỉ báo rằng trình duyệt đã cung cấp một địa chỉ công khai khác. Khớp chỉ có nghĩa là bài kiểm tra này không tìm thấy địa chỉ công khai khác.
Giới hạn
Chính sách trình duyệt, tiện ích mở rộng, điều khiển doanh nghiệp, định tuyến VPN, tường lửa và phiên bản trình duyệt có thể thay đổi mức độ tiếp xúc của ứng viên. Các ứng viên chuyển tiếp bị loại khỏi so sánh trực tiếp giữa IP công cộng. Kết quả không có sẵn nghĩa là bài kiểm tra không thu được so sánh có thể sử dụng được. Đây không phải là bài kiểm tra kết nối IPv6 chuyên dụng.
4. DNS
Những gì chúng tôi đo
Các địa chỉ IP resolver-egress truy vấn tên kiểm tra duy nhất, phiên bản IP, loại truy vấn và số lượng truy vấn, số lượng đầu dò quan sát được, và thông tin quốc gia/ASN khi có sẵn.
Cách chúng tôi đo
Trình duyệt phân giải một số tên duy nhất và chờ đợi quan sát trong chốc lát. Nếu phương pháp đầu tiên không cho kết quả, một phương pháp giải quyết thứ hai được trình duyệt hỗ trợ sẽ được thử trước khi bài kiểm tra hết thời gian.
Kết quả có ý nghĩa gì
Địa chỉ được quan sát là địa chỉ của trình phân giải đệ quy hoặc đầu ra của trình phân giải đã truy vấn hạ tầng DNS có thẩm quyền của MyLeaks. Kết quả cho thấy mối quan hệ giữa mạng của trình phân giải đó và mạng HTTP.
Giới hạn
Kết quả có thể không phải là máy chủ DNS chính xác được cấu hình trên thiết bị và không xác định được cài đặt DoH/DoT của trình duyệt. Shared, forwarding, anycast và public resolver là phổ biến. Hành vi trình duyệt hoặc mạng có thể ngăn chặn các yêu cầu kiểm thử.
5. TLS JA3/JA4
Những gì chúng tôi đo
Các TLS ClientHello quan sát được: các phiên bản TLS cũ và được hỗ trợ, thứ tự bộ mã hóa, thứ tự mở rộng, thứ tự nhóm hỗ trợ, định dạng điểm EC, thuật toán chữ ký, giá trị ALPN và sự hiện diện SNI. MyLeaks rút ra các giá trị JA3 và JA4 TLS Khách hàng.
Cách chúng tôi đo
MyLeaks phân tích cú pháp ClientHello quan sát được cho kết nối thử nghiệm và lấy cả hai dấu vân tay từ cùng một trường giao thức được sắp xếp thứ tự.
Kết quả có ý nghĩa gì
JA3 và JA4 tóm tắt các đặc điểm của ClientHello đã đến với MyLeaks. Chúng có thể giúp so sánh các triển khai hoặc con đường TLS, và nhiều khách hàng có cùng giá trị.
Giới hạn
TLS chặn lại, proxy, phần mềm trung gian, cập nhật trình duyệt và các thư viện TLS có thể cấu hình có thể thay đổi quan sát. Nhiều khách hàng dùng chung dấu vân tay.
Chi tiết nâng cao: chuẩn hóa JA3 và JA4
JA3 sử dụng legacy_version,ciphers,extensions,supported_groups,ec_point_formats. GREASE được loại khỏi các bộ mã, extension và group; thứ tự còn lại được giữ nguyên. Giá trị dùng dạng thập phân và được phân tách bằng dấu gạch nối trong từng trường. Định danh của nó là MD5 viết thường của chuỗi chuẩn đó, đúng theo định dạng JA3.
JA4 dùng phiên bản được hỗ trợ cao nhất trong các phiên bản được chào không phải GREASE, và dùng phiên bản legacy nếu không có; dấu chỉ thị vận chuyển TCP; trạng thái có/không có SNI; số lượng hai chữ số có giới hạn của các cipher và extension không phải GREASE; cùng một mã từ mục ALPN đầu tiên. Mã ALPN đó dùng byte đầu và byte cuối khi cả hai là ký tự chữ-số ASCII; nếu không, nó dùng ký tự hex đầu và cuối. ID cipher được sắp xếp theo giá trị số và băm bằng SHA-256 thành tiền tố 12 ký tự hex. Extension loại bỏ SNI (0x0000) và ALPN (0x0010), sau đó sắp xếp theo giá trị số. Các thuật toán chữ ký không phải GREASE theo đúng thứ tự được nối thêm mà không sắp xếp trước tiền tố SHA-256 12 ký tự hex thứ hai. Đầu vào băm rỗng dùng mười hai số 0. MyLeaks triển khai JA4 TLS Client, không phải các phương pháp JA4+ khác.
6. HTTP/2
Những gì chúng tôi đo
Phần mở đầu của client và ALPN h2, các mục SETTINGS không phải ACK đầu tiên, chuỗi frame không phải ACK ban đầu có giới hạn, các mức tăng WINDOW_UPDATE của kết nối cùng vị trí trong chuỗi, thứ tự pseudo-header và thứ tự tên header thông thường. Các cập nhật cửa sổ luồng, dữ liệu ưu tiên và cờ của khối header được hiển thị trong phần chi tiết.
Cách chúng tôi đo
Trình duyệt mở một kết nối HTTP/2. MyLeaks phân tích các khung hình ban đầu và khối tiêu đề và trả về quan sát cho kết nối đó.
Kết quả có ý nghĩa gì
myleaks-h2-v1 là bản tóm tắt có phiên bản, dành riêng cho MyLeaks về hành vi khởi động HTTP/2 được quan sát. Nó không phải JA4H, dấu vân tay Akamai hay một tiêu chuẩn phổ quát.
Giới hạn
Một số proxy, mạng công ty, tường lửa và các cổng giới hạn có thể chặn kết nối thử nghiệm. Các bên trung gian có thể thay đổi hành vi, và nhiều khách hàng có thể có cùng kết quả.
Chi tiết nâng cao: myleaks-h2-v1
myleaks-h2-v1|SETTINGS=<id:value,id:value,...>|WINDOW=<increment@sequence-position,...|none>|FRAMES=<non-ACK-frame-name,...>|PSEUDO=<pseudo-header-name,...>|HEADERS=<regular-header-name,...>
Các mục SETTINGS, tên frame, tên pseudo-header và tên header thông thường giữ nguyên thứ tự trên đường truyền hoặc thứ tự sau giải mã đã quan sát; các mục lặp và ID setting không xác định vẫn được giữ lại. Frame không xác định dùng UNKNOWN_0xNN. Dấu vân tay là SHA-256 viết thường của chính xác chuỗi UTF-8 chuẩn. Giá trị header, địa chỉ/cổng nguồn, thông tin thời gian, dấu vân tay TLS và các giá trị băm cục bộ trong trình duyệt đều bị loại trừ.
7. QUIC/HTTP/3
Những gì chúng tôi đo
Địa chỉ IPv4 công khai của kết nối QUIC trực tiếp, phiên bản QUIC, các giá trị tham số vận chuyển ổn định được cung cấp, độ dài connection-ID nguồn/đích ban đầu, giá trị HTTP/3 SETTINGS, trạng thái có setting dành riêng, thứ tự tên header yêu cầu và việc 0-RTT có được chấp nhận hay không.
Cách chúng tôi đo
Trình duyệt cố gắng kết nối HTTP/3 qua QUIC. Chỉ có QUIC thành công và quan sát HTTP/3 được thể hiện dưới dạng dấu vân tay.
Kết quả có ý nghĩa gì
myleaks-quic-v1 và myleaks-h3-v1 là các bản tóm tắt do MyLeaks định nghĩa về những đặc điểm kết nối được cung cấp. IP HTTPS và QUIC khác nhau nghĩa là hai kết nối tới MyLeaks qua các đường đi công khai khác nhau; điều đó không cho biết địa chỉ nào là “thật”.
Giới hạn
QUIC hoặc HTTP/3 có thể bị trình duyệt hoặc mạng chặn hoặc vô hiệu hóa. Một số chi tiết vận chuyển và thứ tự đường dây không có sẵn, nên MyLeaks bỏ qua thay vì suy luận. Nhiều khách hàng có thể gặp phải kết quả giống nhau.
Chi tiết nâng cao: cách MyLeaks đưa QUIC và H3 về dạng chuẩn
myleaks-quic-v1 — đầu vào dạng chuẩn:
VER=<escaped-version>|TP=<numeric-id:value sorted by id>|GREASE=NE
Danh sách cho phép tham số vận chuyển dùng các ID 1, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12 và 14, cùng ID 32 khi max_datagram_frame_size có mặt. Văn bản phiên bản dùng escape cho % | , :. Thứ tự tham số, địa chỉ/cổng nguồn, byte CID/token thô, thông tin thời gian và dữ liệu kết nối động đều bị loại trừ. NE nghĩa là quan sát GREASE không được cung cấp.
myleaks-h3-v1 — đầu vào dạng chuẩn:
SETTINGS=<known numeric-id:value sorted by id>|GREASE=<0|1>
Danh sách cho phép V1 gồm các ID SETTINGS 1, 6, 7, 8 và 51. Các setting không dành riêng nhưng không xác định được hiển thị nhưng bị loại trừ. Các ID dành riêng khớp 0x1f*N+0x21 chỉ đóng góp bit hiện diện GREASE ổn định; ID và giá trị ngẫu nhiên của chúng không được băm. Cả hai dấu vân tay đều là SHA-256 viết thường của chính xác đầu vào UTF-8 chuẩn. 0-RTT bị vô hiệu hóa và bị loại trừ.
8. TCP
Những gì chúng tôi đo
Cửa sổ TCP thô, giá trị MSS và hệ số tỷ lệ cửa sổ hợp lệ đầu tiên, trạng thái SACK-permitted, sự hiện diện của tùy chọn timestamp và TCP Fast Open, trạng thái ECE/CWR, bit IPv4 Don’t Fragment và thứ tự tùy chọn TCP trên đường truyền. TTL quan sát được và TTL ban đầu/số hop ước tính được hiển thị riêng.
Cách chúng tôi đo
MyLeaks đọc các đặc điểm được chọn của IPv4 ban đầu TCP SYN và xây dựng bản tóm tắt có phiên bản từ các trường ổn định.
Kết quả có ý nghĩa gì
myleaks-tcp-v1 tóm tắt các đặc điểm SYN ban đầu mà MyLeaks nhận được. Đây là một định dạng riêng biệt so với JA4T.
Giới hạn
NAT, VPN, proxy, tường lửa, chuẩn hóa gói tin và các thiết bị mạng khác có thể thay đổi các trường này. Nhiều hệ thống có kết quả giống nhau.
Chi tiết nâng cao: myleaks-tcp-v1
WIN=<raw>|MSS=<value|->|WS=<value|->|SACK=<0|1>|TS=<0|1>|TFO=<0|1>|ECN=<NONE|ECE|CWR|ECE+CWR>|DF=<0|1>|OPTS=<comma-separated option tokens|->
Các tùy chọn đã biết bị lặp vẫn giữ nguyên thứ tự tùy chọn; giá trị MSS/window-scale hợp lệ đầu tiên được sử dụng. NOP và EOL được giữ lại. Các tùy chọn không xác định dùng OPT<kind>L<length>, không kèm dữ liệu tùy chọn. Độ dài sai định dạng khiến SYN bị từ chối. Dấu vân tay là SHA-256 viết thường của chính xác chuỗi chuẩn.
Giá trị băm loại trừ địa chỉ/cổng của luồng, số thứ tự và số xác nhận, IP ID, ước tính TTL/hop, giá trị timestamp TCP, byte cookie TFO, checksum và thời gian bắt gói. TTL quan sát được so sánh với giá trị ban đầu phổ biến nhỏ nhất trong 32, 64, 128 và 255; các giá trị TTL và hop thu được chỉ là ước tính.
9. Dấu vân tay trình duyệt
Những gì chúng tôi đo
Bảy bề mặt riêng biệt do trình duyệt cung cấp: Canvas, WebGL, WebGPU, Audio, Fonts, ClientRects và Canvas TextMetrics. Không có một dấu vân tay trình duyệt tổng hợp duy nhất. Mỗi bề mặt được đo hai lần để kiểm tra độ ổn định trong cùng trang.
Cách chúng tôi đo
Trang sử dụng các chức năng trình duyệt và băm SHA-256. Các khóa đối tượng được sắp xếp đệ quy trước khi nối tiếp hóa JSON; Các mảng giữ nguyên thứ tự đã định nghĩa của chúng.
Kết quả có ý nghĩa gì
Một bề mặt được đánh dấu ổn định đã tạo ra cùng một lượng băm trong hai lần chạy khi trang tải này. Trạng thái này mô tả tính lặp lại trong quá trình tải hiện tại.
Giới hạn
Tính khả dụng và các giá trị phụ thuộc vào trình duyệt, hệ điều hành, cách triển khai đồ họa và âm thanh, phông chữ, cơ chế bảo vệ quyền riêng tư, extension và trạng thái khi chạy. Kết quả bị hạn chế hoặc không ổn định tự nó không xác lập quyền riêng tư, hành vi giả mạo hay tính xác thực.
Chi tiết nâng cao: đầu vào chính xác cho từng giá trị băm của trình duyệt
- Canvas: các byte RGBA thô từ một cảnh Canvas 2D xác định kích thước 320 × 160, chứa các vùng tô cố định, compositing, hình học, gradient và văn bản. SHA-256 được áp dụng trực tiếp lên các byte pixel.
- WebGL: các byte RGBA thô được đọc từ một bản render tam giác cố định 96 × 96 bằng WebGL 2, WebGL 1 hoặc WebGL thử nghiệm. Dữ liệu khả năng được hiển thị—context/phiên bản, ngôn ngữ shading, vendor/renderer, các giá trị không che giấu tùy chọn, giới hạn được chọn, antialias và danh sách extension đã sắp xếp—không phải là một phần của giá trị băm render này.
- WebGPU: JSON dạng chuẩn chứa thông tin adapter (
vendor,architecture,device,descriptionhoặc “Không được cung cấp”), tên tính năng được sắp xếp theo thứ tự từ điển và một danh sách cố định theo thứ tự của các giới hạn WebGPU dạng số hữu hạn. Khóa đối tượng được sắp xếp trong quá trình tuần tự hóa chuẩn. - Audio: 8.192 mẫu (frame 1024–9215) từ một bản render ngoại tuyến một kênh 44.100 Hz của bộ dao động sóng tam giác 997 Hz qua bộ nén với tham số cố định. Mỗi Float32 được mã hóa theo thứ tự little-endian trước khi tính SHA-256; không tạo âm thanh nghe được và không yêu cầu quyền truy cập.
- Fonts: JSON dạng chuẩn chứa số lượng phần tử cố định trong danh sách ứng viên và các tên được phát hiện đã sắp xếp theo thứ tự từ điển. Một phông chữ được phát hiện khi chiều rộng hoặc chiều cao của văn bản probe cố định khác ít nhất hai giá trị cơ sở dự phòng trong ba loại serif, sans-serif và monospace.
- ClientRects: JSON dạng chuẩn cho bố cục ngoài màn hình cố định 320 px: các hình chữ nhật bounding/client của root, box và inline, cùng các hình chữ nhật Range của văn bản. Tọa độ tương đối với container và được cố định ở sáu chữ số thập phân; thứ tự mảng được giữ nguyên.
- TextMetrics: JSON dạng chuẩn với độ chính xác 6 và ba trường hợp phông chữ/văn bản cố định. Với mỗi trường hợp, các giá trị hữu hạn được hỗ trợ của width, bounding-box thực tế bên trái/phải/ascent/descent và bounding-box của phông chữ ascent/descent được đưa vào theo thứ tự thuộc tính cố định và được cố định ở sáu chữ số thập phân.
10. Kiểm tra tính nhất quán
Những gì chúng tôi đo
Các quy tắc so sánh: IP HTTP với ứng viên WebRTC công khai; múi giờ trình duyệt với múi giờ ước tính theo IP; ASN/quốc gia của trình phân giải với ASN/quốc gia HTTP; các quan hệ logic trong dữ liệu phân tích IP; họ/phiên bản User-Agent với Client Hints; User-Agent, Client Hints và navigator.platform; các dấu hiệu di động; độ ổn định dấu vân tay theo từng bề mặt; navigator.webdriver; và IP HTTPS với IP QUIC.
Cách chúng tôi đo
Các quy tắc nhất quán so sánh kết quả đã được trang tạo ra mà không lặp lại các bài kiểm tra. Bí danh nền tảng và các biểu diễn tương thích của họ trình duyệt được chuẩn hóa một cách thận trọng; Độ lệch múi giờ sử dụng một tham chiếu tức thời và trình duyệt Intl trong trình duyệt.
Kết quả có ý nghĩa gì
Các trạng thái như nhất quán, tương thích, không khớp, cảnh báo, thông tin và không xác định mô tả mối quan hệ thực tế cụ thể giữa các giá trị so sánh.
Giới hạn
Mở một điểm không khớp để xem các giá trị nào khác nhau. Thiếu đầu vào sẽ tạo ra kết quả không xác định, và các tín hiệu quan sát độc lập có thể khác nhau do hành vi mạng hoặc trình duyệt.