На YouTube вышло видео, автор которого утверждает, что сайт Sailau 2026 (election.jurttyn.kz) о выборах в Курултай сделан «специалистами ФСБ» и подаёт материал «в кремлёвской интерпретации». Доказательства три: хостинг поддомена, отсутствие комментариев в коде и библиотека core-js, написанная российским разработчиком.
Здесь разбираются только технические доводы видео. Содержание сайта, позицию канала Jurttyñ Balasy и политическую сторону вопроса я не оцениваю и ни с одной из сторон не связан. Формулировки о ФСБ и Кремле — цитаты автора видео, а не мои выводы.
Автор жалуется, что текст сайта написан «в кремлёвской интерпретации», но о самом тексте не говорит ни слова: ни одной цитаты, ни одного искажённого описания партии или кандидата. Вместо этого он уходит в технический разбор — область, в которой, судя по видео, ориентируется заметно хуже, чем в риторике.
Мне, как человеку, немного разбирающемуся в OSINT и в устройстве современного интернета, трудно было пройти мимо ошибок в этом разборе. Ниже — по порядку.
Домен и хостинг
Начнём с того, что автор плохо представляет, что именно показывают WHOIS и сервисы, которые собирают сведения о домене и IP-адресе.

В видео показан скриншот сервиса, предположительно 2ip. Такие сервисы сводят в одну таблицу данные из нескольких разных источников. К самим данным претензий нет. Претензия к тому, как их прочитали.
| Источник | Откуда данные | Что показывает | Чего не показывает |
|---|---|---|---|
| WHOIS домена | Реестр .kz (nic.kz) | Регистранта, регистратора, NS-серверы | Где стоит сервер |
| WHOIS IP-адреса | Региональный реестр (ARIN, RIPE NCC) | Организацию, которой выделен блок адресов, и её юридический адрес | Клиента этой организации и место сервера |
| Геолокация IP | Коммерческие базы (MaxMind, IP2Location и др.) | Оценку местоположения по регистрационным данным и эвристикам | Гарантированное физическое место |
«Американская деревушка»
Автор утверждает, что «сервер расположен в американской деревушке». По IP-адресу получают не адрес дата-центра, а юридический адрес организации, на которую зарегистрирован блок адресов. Блок 64.29.17.0/24 принадлежит Vercel, Inc., и в его регистрационных данных указан адрес 340 S Lemon Ave #4133, Walnut, CA. Вся «деревушка» — это строчка почтового адреса компании в реестре.
whois 64.29.17.1 | grep -iE "orgname|address|city|cidr"
CIDR: 64.29.17.0/24
OrgName: Vercel, Inc
Address: 340 S LEMON AVE #4133
City: Walnut
Физически сервера «в Уолнате» нет, и по устройству сети быть не может: 64.29.17.1 — anycast-адрес. Один и тот же IP анонсируется из многих точек присутствия Vercel, и запрос обслуживает ближайшая к пользователю. Это легко проверить замером задержки из Алматы. Для контроля возьмём дата-центр во Фремонте, Калифорния.
$ mtr -T -P 443 -rwc 20 speedtest.fremont.linode.com
Start: 2026-10-28T16:53:49+0500
HOST Loss% Snt Last Avg Best Wrst StDev
... (промежуточные хопы скрыты)
12.|-- ve353.core3.fra2.he.net 30.0% 20 5228. 2877. 93.8 7273. 3126.0
13.|-- port-channel10.core3.fra1.he.net 10.0% 20 7329. 1508. 94.0 7329. 2247.9
14.|-- be47.core4.fra1.he.net 0.0% 20 1156. 149.8 94.9 1156. 236.9
15.|-- be1.core3.par2.he.net 0.0% 20 1269. 398.2 241.0 1307. 380.2
16.|-- be10.core2.ash1.he.net 0.0% 20 245.2 348.4 243.3 1295. 316.3
17.|-- be9.core1.pao1.he.net 0.0% 20 244.0 245.7 244.0 257.0 2.8
18.|-- be9.core2.fmt2.he.net 0.0% 20 244.1 245.0 242.7 246.8 1.0
$ mtr -T -P 443 -rwc 20 64.29.17.1
Start: 2026-10-28T16:54:36+0500
HOST Loss% Snt Last Avg Best Wrst StDev
... (промежуточные хопы скрыты)
19.|-- 64.29.17.1 0.0% 20 94.7 95.4 94.0 98.4 1.2
До Фремонта пакеты идут через Франкфурт, Париж, Эшберн и Пало-Альто, и последний маршрутизатор в Калифорнии отвечает примерно за 245 мс. «Калифорнийский» 64.29.17.1 отвечает за 95 мс — столько же, сколько франкфуртские маршрутизаторы на первом маршруте. От Алматы до Калифорнии больше 10 800 км. Даже по идеальному оптоволокну по прямой это не меньше 110 мс в обе стороны. Сервер, который ответил быстрее, физически не может стоять в Калифорнии.
Пугаться потерь и задержек в тысячи миллисекунд на промежуточных хопах не стоит: маршрутизаторы отвечают на служебные ICMP-запросы по остаточному принципу. Значение имеет только последняя строка.
Где именно стоит ответивший сервер, Vercel сообщает сам, в заголовке ответа:
$ curl -sI https://election.jurttyn.kz | grep -i x-vercel-id
x-vercel-id: fra1::nrkvt-1793188992825-05b33d233b25
Первая часть значения — код точки присутствия, которая приняла запрос: fra1 — Франкфурт-на-Майне. Если ответа нет в кэше, Vercel передаёт запрос дальше, в регион, где работает серверная часть приложения, и в заголовке появляется второй код. На скриншоте ниже это fra1::iad1, где iad1 — Вашингтон. Калифорнии нет ни в одном из кодов, а задержка в 95 мс подтверждает, что из Алматы запросы принимает Франкфурт.

Поддомен выдаёт владельца лучше любого WHOIS
election.jurttyn.kz — не отдельный сайт неизвестного происхождения, а поддомен jurttyn.kz. Запись для него создаёт тот, кто управляет DNS-зоной основного домена, то есть его владелец. Автор сам показывает, что jurttyn.kz зарегистрирован открыто и данные владельца видны. Осталось посмотреть, кто и куда направил поддомен.
$ dig +short NS jurttyn.kz
ns3.ps.kz.
ns2.ps.kz.
ns1.ps.kz.
$ dig +short election.jurttyn.kz
96d1211965938eef.vercel-dns-017.com.
216.150.16.193
216.150.1.193
Зона jurttyn.kz обслуживается у казахстанского провайдера PS.kz, и именно в ней прописана CNAME-запись поддомена. Значение записи не общее для всех клиентов Vercel: у каждого проекта свой уникальный CNAME вида [хэш].vercel-dns-017.com. То есть владелец домена не «спрятал сайт в Америке», а явно привязал поддомен к одному конкретному проекту в Vercel. Искать, кто скрывается за поддоменом, бессмысленно: он подписан именем основного домена.
Для читателей, которые будут повторять проверку: IP-адрес поддомена у вас, скорее всего, окажется другим, и не тем, что в видео. Это нормально. CNAME ведёт на DNS Vercel, а тот от запроса к запросу отдаёт разные адреса из своих пулов: 64.29.17.0/24, 216.150.1.0/24, 216.150.16.0/24 и других. В видео показан лишь один из них — тот, что достался автору в момент проверки. Все эти блоки зарегистрированы на Vercel, Inc.
Анонимный хостинг, который не анонимен
Второй тезис — «хостинг искали такой, что данные не выдаст». Хостинг не анонимный. Для регистрации в Vercel нужна почта или Git-аккаунт, а для первого же проекта Git-аккаунт привязать придётся в любом случае. За каждым деплоем стоят аккаунт, репозиторий и история коммитов. Документов, как казахстанский регистратор домена, Vercel не спрашивает, но анонимным его это не делает: данные клиента у провайдера есть, их просто не публикуют в WHOIS. Так поступает любой хостинг, казахстанский в том числе.
Выбор Vercel, скорее всего, объясняется прозаичнее: бесплатный тариф и родная поддержка Next.js — Vercel сам этот фреймворк и разрабатывает. Основной сайт канала сделан на Tilda, а конструктор приложения на Next.js не запускает. Отсюда и разный хостинг у домена и поддомена.
Кто отвечает за содержимое
Ответственность за содержимое сайта несёт его владелец, и владелец здесь известен — это владелец домена. Закон «О масс-медиа» (№ 93-VIII от 19 июня 2024 года) относит интернет-ресурсы к масс-медиа (ст. 1, п. 20). Если распространение приостанавливают или прекращают по решению суда, исполнять его обязан собственник интернет-ресурса, а суд может на срок до трёх месяцев запретить использовать то же или схожее доменное имя (ст. 23). Конкретные составы нарушений вынесены в КоАП и УК, на них ссылается ст. 67. Адресат претензий во всей этой конструкции — владелец ресурса и его домена, а не хостинг-провайдер поддомена.
Хостингу можно направить требование ограничить доступ и запрос сведений о клиенте. Vercel в своей политике конфиденциальности прямо пишет, что раскрывает данные пользователей, когда этого требует закон: по решению суда, повестке или иному законному запросу. Для казахстанского госоргана американская компания напрямую не подотчётна, и запрос пойдёт через механизмы международной правовой помощи. Ограничить доступ к ресурсу внутри страны можно и вовсе без участия Vercel: это позволяет ст. 41-1 Закона «О связи».
Иными словами, у государства есть все инструменты, чтобы найти владельца сайта. Ни один из них здесь не понадобится: владелец известен — автор видео сам показывает данные регистранта основного домена.
Претензия, которую автор пропустил
Ирония в том, что у поддомена действительно есть проблема, и видна она из той же самой сводки, которую автор показывает в видео. Только это не ФСБ, а правила казнета.
Правила регистрации, пользования и распределения доменных имён в казахстанском сегменте интернета (приказ № 38/НҚ от 13 марта 2018 года) называют основанием для приостановки домена «размещение интернет-ресурсов на аппаратно-программных комплексах вне территории Республики Казахстан» (п. 16, пп. 6). Сами правила говорят об интернет-ресурсах в целом, а реестр nic.kz в памятке для владельцев уточняет прямо: хостинг должен быть в Казахстане и для основного домена, и для субдоменов. DNS- и почтовые записи при этом могут указывать на серверы в любой стране, а вот сайт — нет. Скрывать зарубежный хостинг за проксированием памятка тоже прямо называет нарушением.
На 28 октября 2026 года election.jurttyn.kz указывает на Vercel (см. вывод dig выше), а запросы из Алматы принимает точка присутствия во Франкфурте (fra1), откуда они уходят в регион iad1 в Вашингтоне. По букве правил это нарушение. Последствие тоже вполне конкретное: приостанавливается использование доменного имени, то есть jurttyn.kz целиком, вместе с основным сайтом на Tilda. Перед этим регистратор уведомляет владельца и даёт срок на исправление (п. 19).
Претензия эта регуляторная, а не шпионская: она о том, где лежит сайт, а не о том, кто его написал и по чьему заказу. Автор видео, искавший следы Кремля в полифиллах, прошёл мимо единственного нарушения, которое видно невооружённым глазом. Будь оно в видео, разговор с владельцем канала получился бы куда предметнее.
То, что видит браузер, — не исходный код
Дальше автор разбирает то, что сервер собрал и отдал браузеру, и называет это исходниками. Браузер получает HTML, CSS, JavaScript и медиаконтент, которые сервер или сборщик сгенерировали из исходного кода. Рядом с JavaScript может работать WebAssembly, но и его браузер получает уже скомпилированным.
Исходником ответ сервера можно считать, только если сайт написан на чистом HTML, CSS и JavaScript без сборки. В современном интернете это редкость. Сайт на Next.js — ровно обратный случай: код транспилирован, склеен в бандлы и минифицирован, а часть HTML сгенерирована на сервере.
По той же причине наличие или отсутствие комментариев в ответе сервера ни о чём не говорит. Комментарии живут в исходниках, то есть в репозитории разработчика. На сервере исходников может не быть вовсе: Vercel собирает проект и раздаёт результат сборки, а минификатор удаляет комментарии по умолчанию. Сервер их просто не отправит. Исключения — сайты на чистом HTML, CSS и JavaScript, комментарии, вписанные прямо в шаблон (смысла в этом немного), и лицензионные комментарии вида /*! */, которые некоторые сборщики сохраняют.
Так что «комментарии затёрли специально» (06:21–07:11 в видео) — это поведение сборщика по умолчанию, а не заметание следов.
Мы не в 90-х и не в нулевых, чтобы подписывать сайты, как художник подписывает картину. Сайт сегодня соберёт школьник за пару вечеров — криво и дыряво, но работать будет. ИИ сделает это за пять минут. Подпись в ответе сервера при таких условиях не нужна никому: её никто не увидит. Авторство фиксируется в другом месте — в истории коммитов и в профиле на GitHub, где смотрят на сам код, а не на подпись в нём.
Как определить стек за минуту
Если уж смотреть в ответ сервера, искать стоит следы, которые оставляют фреймворк и хостинг:
- пути
/_next/static/chunks/и объектself.__next_fили__NEXT_DATA__— Next.js; - хэши в именах файлов вроде
polyfills-42372ed130431b0a.js— контентное хэширование сборщика; - заголовки
server: Vercel,x-vercel-id,x-vercel-cache— хостинг Vercel; - для сравнения:
/wp-content/у WordPress,tildacdnу Tilda.
Wappalyzer или whatweb сделают то же самое быстрее.

Короткий экскурс в DevTools
- Elements показывает живой DOM после выполнения JavaScript, а не то, что прислал сервер.
- View Source (Ctrl+U) — то, что сервер отдал в ответ на запрос страницы.
- Network — все запросы, их заголовки и тела ответов. Здесь видно, куда сайт обращается: аналитика, CDN, API.
- Sources с кнопкой
{}— читаемый вид минифицированного кода. Исходник по нему восстанавливается только через source maps, а Next.js по умолчанию не публикует их в продакшене.
Если бы автор искал настоящие следы, начинать стоило с вкладки Network: запросы к российским сервисам аналитики, CDN или API были бы аргументом. В видео до этой вкладки дело не доходит.
Библиотеки и их авторы
Непонятна и претензия к core-js. Не все библиотеки подключают разработчики: многие приходят как зависимости других библиотек. Здесь именно такой случай. core-js лежит в файле polyfills-*.js в каталоге /_next/static/chunks/. Это набор полифиллов для старых браузеров, который Next.js сам добавляет в каждую сборку. Разработчики сайта этот файл не писали и, скорее всего, даже не знали о его существовании.
Убедиться в этом можно, не открывая сайт вовсе. Та же строка с той же версией лежит в пакете самого Next.js:
npm pack next@15.5.0
tar xzf next-15.5.0.tgz package/dist/build/polyfills/polyfill-nomodule.js -O \
| grep -o 'version:"3.38.1".\{0,90\}'
version:"3.38.1",mode:"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)",license:"https://github...
Ещё нагляднее — собрать пустой проект и поискать ту же строку в результате сборки:
$ npx create-next-app@latest demo && cd demo
$ npm run build
▲ Next.js 16.4.3 (Turbopack)
...
$ grep -o 'version:"[0-9.]*",mode:"global",copyright:"[^"]*"' .next/static/chunks/*.js
.next/static/chunks/0cz1d0mv5g_q7.js:version:"3.38.1",mode:"global",copyright:"© 2014-2024 Denis Pushkarev (zloirock.ru)"
Проект, в котором не написано ни строчки кода и ничего не подключено вручную, после сборки содержит ровно тот «след», который в видео предъявлен сайту о выборах: ту же библиотеку, ту же версию, то же имя. Версию 3.38.1, которую автор назвал «старой», Next.js поставляет до сих пор. Её выбрала команда Next.js, а не разработчики сайта.
Если будете повторять проверку, имя файла у вас будет другим. Свежие версии Next.js собирают проект через Turbopack, который называет чанки иначе, чем polyfills-[хэш].js из видео. Ищите по содержимому, а не по имени.
По сути претензия звучит так, будто каждый разработчик обязан прописывать всё вручную или проверять автора каждой библиотеки, включая зависимости зависимостей. У типового проекта на Next.js их сотни.
$ npx create-next-app@latest demo
...
Installing dependencies:
- next
- react
- react-dom
Installing devDependencies:
- @tailwindcss/turbopack
- @types/node
- @types/react
- @types/react-dom
- eslint
- eslint-config-next
- tailwindcss
- typescript
added 364 packages, and audited 365 packages in 22s
found 0 vulnerabilities
Пустой проект с настройками по умолчанию: разработчик явно выбрал 11 пакетов, npm установил 364. Проверять паспорт автора каждого из них никто не будет, и не должен. Зато npm сам прогнал аудит по базе известных уязвимостей, и именно так проверка зависимостей выглядит на практике.
Забавно, что core-js среди этих 364 пакетов нет вовсе: npm ls core-js возвращает пустой результат. Next.js поставляет полифиллы уже собранным файлом внутри собственного пакета. Чтобы «вычислить» Пушкарёва в таком проекте, разработчику пришлось бы читать скомпилированные файлы фреймворка.
Справедливости ради, на зависимости смотрят. Истории event-stream, node-ipc и xz-utils научили индустрию следить за цепочкой поставок. Но проверяют код, лицензии, известные уязвимости и смену мейнтейнеров — сканерами и npm audit, а не паспорт автора.
Почему имя автора пережило минификацию
Имя Дениса Пушкарёва видно в файле не потому, что его кто-то «прописал жёстко». Строка © 2014-2024 Denis Pushkarev (zloirock.ru) — не комментарий, а данные. core-js записывает в общий глобальный объект версию, режим, копирайт и ссылку на лицензию, чтобы обнаруживать несколько копий библиотеки на одной странице. Строковые значения в коде минификатор не трогает, поэтому строка и осталась.
// core-js/internals/shared-store.js (v3.38.1)
(store.versions || (store.versions = [])).push({
version: '3.38.1',
mode: IS_PURE ? 'pure' : 'global',
copyright: '© 2014-2024 Denis Pushkarev (zloirock.ru)',
license: 'https://github.com/zloirock/core-js/blob/v3.38.1/LICENSE',
source: 'https://github.com/zloirock/core-js'
});

Автор признаёт, что полифиллы подключаются автоматически, но настаивает: версия должна быть свежей, «актуальная — 53.50». Такой версии у core-js нет, как нет и 3.53.50. На момент выхода видео последней была 3.50.0, на 28 октября 2026 года — 3.51.0. Но дело не в цифре. Версию полифиллов фиксирует релиз Next.js, а не разработчик сайта, и, как показала сборка выше, даже Next.js 16.4.3 по-прежнему поставляет 3.38.1. По логике автора, «кремлёвским» придётся признать каждый сайт, собранный актуальной версией фреймворка
Зафиксированная версия — признак воспроизводимой сборки, а не умысла. Полифиллы закрывают пробелы старых браузеров, и новые версии core-js в основном добавляют поддержку свежих предложений стандарта, которые сайту о выборах вряд ли нужны. Обратный подход — чтобы библиотека «обновлялась сама», подгружаясь с внешнего CDN, — в 2024 году наглядно себя дискредитировал. Домен polyfill.io сменил владельца, и сотни тысяч сайтов, подключавших оттуда «всегда свежие» полифиллы, начали раздавать посетителям вредоносный код.
Итог
Лучший аргумент против видео автор приводит сам. В конце он вставляет фрагмент интервью Пушкарёва (~11:56), где тот рассказывает, как ему звонили американские и канадские журналисты: видим ваш код на сайте — вы русский хакер? Пушкарёв объяснял, что это его открытый код с GitHub. Видео, построенное на этой ошибке, заканчивается рассказом о ней же.
- «Сервер в американской деревушке» — юридический адрес владельца блока IP-адресов. Запросы из Алматы принимает Франкфурт.
- «Анонимный хостинг» — обычный аккаунт Vercel. Поддомен прямо указывает на владельца основного домена.
- «Комментарии затёрли» — production-сборка удаляет их по умолчанию.
- «Библиотека кремлёвского программиста» — полифиллы, которые Next.js добавляет сам.
Методология, при которой иностранный хостинг плюс фамилия автора библиотеки дают ФСБ, найдёт Кремль на изрядной доле сайтов в интернете. Открытыми остаются два вопроса. Первый — содержание сайта: его автор видео не разбирал. Второй — размещение поддомена вне Казахстана: это реальный вопрос к владельцу домена, только не шпионский. Всё остальное читатель проверит сам за десять минут: whois, dig, curl и вкладка Network.
Об использовании ИИ при подготовке статьи
Текст статьи написан автором: тезисы, структура, аргументы и выводы принадлежат ему. Claude Opus 5.5 (Anthropic) использовался как редактор: переписал черновик стилистически, предложил места для иллюстраций и проверил ряд технических фактов. Все правки, касающиеся смысла, автор проверил и утвердил. Ответственность за содержание статьи несёт автор.
Дата редактуры: 28.10.2026
Источники для самостоятельной проверки:
- ARIN RDAP: регистрационные данные блока 64.29.17.0/24
- Vercel: A-записи и anycast-адреса для пользовательских доменов
- Vercel: подключение пользовательского домена (уникальный CNAME проекта)
- Заголовок x-vercel-id и коды регионов Vercel
- Vercel: создание аккаунта
- Vercel Privacy Notice — раздел о раскрытии данных госорганам
- Next.js: core-js в nomodule-полифиллах (PR #10985)
- Репозиторий core-js на GitHub
- The Hacker News: атака через polyfill.io
- Правила регистрации, пользования и распределения доменных имён в казнете — Әділет
- Те же правила — текст на nic.kz
- Памятка nic.kz о нарушениях, ведущих к приостановке домена
- Закон РК «О масс-медиа» от 19.06.2024 № 93-VIII — Әділет
- Закон РК «О связи» — Әділет