{"http":{"headers":[{"name":"accept","value":"*/*"},{"name":"user-agent","value":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"},{"name":"accept-encoding","value":"gzip, br, zstd, deflate"}],"user_agent":"Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)"},"ip":"216.73.217.138","quic":{"note":"Для этой сессии не было отправлено ни одного отпечатка QUIC/HTTP-3. Чекер не терминирует QUIC и никогда не собирает это самостоятельно.","observed":{"correlation":"Сопоставление выполняется по адресу пира того соединения, которое делает этот запрос. Исходный порт QUIC невозможно узнать из TCP-запроса, поэтому связывает их именно адрес, и клиенту поэтому никогда не могут быть показаны датаграммы, отправленные не с его собственного адреса. Сопоставление делается по каждой датаграмме отдельно, по её собственному 5-кортежу, а не по записи захвата целиком. Ключ захвата — 64-битный дайджест по всему кортежу, поэтому два клиента больше не делят одну запись по построению, как это было, пока ключом был XOR; остаточная коллизия теперь не вероятнее любой другой 64-битной случайности, а податаграммное сопоставление не даёт даже ей выдать одному клиенту датаграммы другого. Этот ключ отделён от TCP fake_cookie, которого данная корреляция не касается.","note":"Этот сервер не захватил ни одной датаграммы UDP/443 с этого адреса. Это ожидаемый результат, когда клиент не пытался использовать QUIC к этому серверу, когда он пытался это сделать раньше, чем хранит захват, или когда захват не запущен.","peer":"216.73.217.138","provenance":"наблюдалось этим сервером: захвачено с провода eBPF-программой на уровне TC. Это противоположное происхождение по сравнению с полями fingerprint, identity и ja4_quic в этом объекте: все они вычислены из данных, которые клиент ретранслировал этому серверу, и не могут быть проверены.","scope":"Только заголовки IP и UDP: TTL / hop limit, биты DF и MF в IPv4, поле identification в IPv4, метка потока IPv6, класс трафика и размеры датаграмм. Уровни QUIC и TLS внутри датаграммы здесь намеренно не разбираются — именно их покрывает запись, сообщённая клиентом.","state":"not_observed"},"state":"not_submitted","trust":"сообщено клиентом: отправлено клиентом по HTTP, а не наблюдалось этим сервером"},"session":{"note":"Пригодный session_id не передан, поэтому объединять нечего. session_id — это от 1 до 128 символов [A-Za-z0-9_-]; он передаётся как ?session_id=... на каждом маршруте.","present":{"quic":false,"tcp4":false,"tcp6":false,"tls":false,"ws":false},"quic_observed_state":"not_observed","session_id":null},"tcp_packets":[{"ack":0,"flags":1,"flow_label":0,"ip_flags":2,"ip_id":24308,"ip_version":4,"mss":1460,"opts":[2,4,5,180,4,2,8,10,38,75,7,181,0,0,0,0,1,3,3,7],"opts_len":20,"payload_len":0,"port":13022,"scale":7,"seq":157246692,"tos":0,"ts":2937374729054675,"ttl":120,"wsize":62727},{"ack":2740829349,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24309,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,8,41,94,135,166,84],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157246693,"tos":0,"ts":2937374844713363,"ttl":120,"wsize":491},{"ack":2740829349,"flags":6,"flow_label":0,"ip_flags":2,"ip_id":24310,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,8,45,94,135,166,84],"opts_len":12,"payload_len":255,"port":13022,"scale":0,"seq":157246693,"tos":0,"ts":2937374848208293,"ttl":120,"wsize":491},{"ack":2740832245,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24311,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,8,161,94,135,166,203],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157246948,"tos":0,"ts":2937374964171392,"ttl":120,"wsize":631},{"ack":2740833090,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24312,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,8,161,94,135,166,203],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157246948,"tos":0,"ts":2937374964193734,"ttl":120,"wsize":651},{"ack":2740833090,"flags":6,"flow_label":0,"ip_flags":2,"ip_id":24313,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,8,168,94,135,166,203],"opts_len":12,"payload_len":329,"port":13022,"scale":0,"seq":157246948,"tos":0,"ts":2937374970870410,"ttl":120,"wsize":651},{"ack":2740833563,"flags":6,"flow_label":0,"ip_flags":2,"ip_id":24314,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,9,33,94,135,167,70],"opts_len":12,"payload_len":31,"port":13022,"scale":0,"seq":157247277,"tos":0,"ts":2937375091941743,"ttl":120,"wsize":668},{"ack":2740833607,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24315,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,9,200,94,135,167,190],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157247308,"tos":0,"ts":2937375258880980,"ttl":120,"wsize":668},{"ack":2740834653,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24316,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,10,73,94,135,168,115],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157247308,"tos":0,"ts":2937375387918848,"ttl":120,"wsize":671},{"ack":2740836101,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24317,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,10,73,94,135,168,115],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157247308,"tos":0,"ts":2937375387987883,"ttl":120,"wsize":660},{"ack":2740837549,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24318,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,10,73,94,135,168,115],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157247308,"tos":0,"ts":2937375387991839,"ttl":120,"wsize":650},{"ack":2740840445,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24319,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,10,73,94,135,168,115],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157247308,"tos":0,"ts":2937375387996350,"ttl":120,"wsize":628},{"ack":2740841829,"flags":2,"flow_label":0,"ip_flags":2,"ip_id":24320,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,10,188,94,135,168,230],"opts_len":12,"payload_len":0,"port":13022,"scale":0,"seq":157247308,"tos":0,"ts":2937375503589397,"ttl":120,"wsize":670},{"ack":2740841829,"flags":6,"flow_label":0,"ip_flags":2,"ip_id":24321,"ip_version":4,"mss":0,"opts":[1,1,8,10,38,75,10,201,94,135,168,230],"opts_len":12,"payload_len":48,"port":13022,"scale":0,"seq":157247308,"tos":0,"ts":2937375516637217,"ttl":120,"wsize":671}],"tcp_signature":"ittl=128;wsize=62727;scale=7;olayout=mss,sack,ts,nop,wscale;quirks=df","tls":{"akamai_h2":{"hash":"9b5dcd077a77c5e324b91d8cc306fd5a","raw":"2:0;4:2097152;5:16384;6:16384|5177345|0|m,s,a,p"},"client_hello":{"alpn":["h2","http/1.1"],"cert_compression":null,"cipher_suites":[4866,4865,4867,49196,49195,52393,49200,49199,52392,255],"delegated_credentials":null,"extensions":[51,0,5,43,13,11,16,35,23,10,45],"protocol_version":771,"record_size_limit":null,"signature_algorithms":[1283,1027,2055,2054,2053,2052,1537,1281,1025],"supported_groups":[29,23,24],"supported_versions":[772,771]},"ja3":{"hash":"5fc9c0164767cb88d3157fa538b69f13","raw":"772,4866-4865-4867-49196-49195-52393-49200-49199-52392-255,51-0-5-43-13-11-16-35-23-10-45,29-23-24,0"},"ja4":{"hash":"t13d1011h2_61a7ad8aa9b6_3fcd1a44f3e3","raw":"t13d1011h2_00ff,1301,1302,1303,c02b,c02c,c02f,c030,cca8,cca9_0005,000a,000b,000d,0017,0023,002b,002d,0033_0503,0403,0807,0806,0805,0804,0601,0501,0401"},"ja4h":{"hash":"ge20nn030000_80b089f68b8e_000000000000_000000000000","raw":"ge20nn030000_accept,user-agent,accept-encoding_[скрыто]_[скрыто]","raw_note":"hash вычислен по запросу как он пришёл, включая Cookie: четвёртая часть JA4H — это хеш пар cookie, и без них это был бы не JA4H. В raw обе связанные с cookie части заменены на метку: нехешированная форма несёт имена и значения cookie посетителя дословно, а их отдаёт любой, кто знает session_id. Список заголовков и префикс в raw настоящие."},"peetprint":{"hash":"1d1426cb11a5bb40062c771241c4543a","raw":"772-771|2-1.1|29-23-24|1283-1027-2055-2054-2053-2052-1537-1281-1025|1||4866-4865-4867-49196-49195-52393-49200-49199-52392-255|0-10-11-13-16-23-35-43-45-5-51"}}}