В «Яндексе» официально прокомментировали первые результаты расследования утечки почти 45 ГБ исходных кодов её сервисов, о которой стало известно на прошлой неделе. Компания подтвердила, что исходные коды действительно взяты из внутреннего репозитория, но они соответствуют решениям из устаревшей версии репозитория. Другими словами, данные исходные коды отличаются от тех, которые используются сервисами «Яндекса» сейчас. В компании также извинились за случившееся.

Утечка кода «Яндекса» вскрыла ряд недекларируемых функций и уязвимостей.

«Яндекс» опубликовал первые результаты внутреннего расследования утечки 44,7 Гбайт данных исходного кода сервисов компании. Представители разработчика отметили, что утечка не стала результатом взлома — сработал человеческий фактор. Предполагается, что из локального репозитория данные украл бывший сотрудник компании. Впрочем, в «Яндексе» заявили, что не видят угрозы производительности платформы и пользовательским данным.

Тем не менее, в коде обнаружилось очень много интересного. В частности, нашёлся фрагмент, который скрытно включает микрофон устройства с голосовым ассистентом «Алиса». Компания заверяет, что это тестовая версия алгоритма, и публичной она не была. Однако существует как минимум возможность включения такой функции на любом, в том числе пользовательском устройстве.

 «Опубликованные фрагменты кода содержат в том числе и тестовые алгоритмы, которые использовались только внутри "Яндекса" для проверки корректности работы сервисов. Например, для улучшения качества активации ассистента и уменьшения количества ложных срабатываний в бета-версии для сотрудников применяется настройка, которая включает микрофон устройства на несколько секунд в случайный момент без упоминания Алисы», - заявили представители ИТ-компании.

Кроме того, в рамках изучения утекшего кода выяснилось, что в нём имеются крайне важные данные, включая факторы поискового ранжирования. Зная их, можно искусственно выводить те или иные сайты на верхние строки выдачи, что скажется на её качестве.

В числе учитываемых при поисковой выдаче алгоритмов указывается «вес» страницы PageRank с учётом ссылок на неё, возраст ссылок, релевантность текста, свежесть контента, надёжность хоста и другие факторы, некоторые сайты вроде «Википедии» получают приоритет. Имеется и масса других значимых факторов, включая, например, число уникальных посетителей и процент «органического» трафика.

Как заявил один из специалистов по поисковой SEO-оптимизации, говоря об утечке, это «возможно, самая интересная вещь, которая случалась в SEO за последние годы». Эксперты подчёркивают, что сотрудники Google и «Яндекса» посещали одни и те же мероприятия, активно общались, а сотни из них успели поработать и в «Яндексе», и в Google. Вполне вероятно, что в Google используются многие из алгоритмов, аналогичных решениям «Яндекса», а значение утечки для русскоязычного рынка SEO трудно переоценить. Кроме того, утечка позволяет лучше понять, как работают поисковые системы вообще.

Кроме того, в коде нашлись контактные данные некоторых партнёров, в том числе водителей: контакты и номера водительских удостоверений передавались из одного таксопарка в другой. В сервисе «Яндекс Лавка» обнаружилась возможность ручной настройки рекомендаций любых товаров без добавления пометки о том, что данные рекомендации являются рекламными. А в сервисах Такси и Еда у отдельных групп пользователей оказалась приоритетная поддержка.

Ещё выяснилось, что разработчики «Яндекса» грешили использованием «костылей» — временных неоптимальных решений — для изменения логики работы сервисов вместо алгоритмов. Через такие временные решения исправляли отдельные проблемы в системе, отвечающей за дополнительные элементы поисковой выдачи, и регулировали настройки поиска по картинкам и видео.

Компания отметила, что теперь изменит подход к разработке своих продуктов таким образом, чтобы сократить использование «костылей». Ещё компания пообещала сформировать новые стандарты и принципы технологической этики, и исправит фрагменты кода, которые будут им противоречить. Ещё было отмечено, что внутренняя среда разработки останется открытой и сохранится единый репозиторий. Также часть данных, которые не имеют отношения к алгоритмам и настройкам сервисов, получат дополнительную защиту.