Перейти к материалам
разбор

«Яндекс» блокировал изображения Путина, когда пользователи искали «бункерного деда». И нацистские символы — когда они искали Z Что «Медуза» узнала из новой утечки «Яндекса». Предупреждаем: много мата 🤬

Источник: Meduza

На прошлой неделе произошла масштабная утечка исходного кода сервисов «Яндекса» (компания сама ее подтвердила). Неизвестный обнародовал архивы внутреннего репозитория «Яндекса». Изучив их, можно узнать много новых деталей о том, как устроен крупнейший российский поисковик, который в последние годы постоянно критикуют за сотрудничество с Кремлем. Из утечки, в частности, выяснилось, что «Яндекс» цензурирует поисковую выдачу картинок и видео — так, чтобы изображения Путина и символы Z не появлялись в неприятных для властей контекстах.

Утечка «Яндекса» состоит из 83 архивов, общий объем которых в сжатом виде превышает 40 гигабайт. Ссылки на конкретные файлы из утечки в этом материале «Медузы» оформлены с указанием архива и пути к файлу внутри этого архива (ищите этот адрес в сносках). Вот так:

архив.tar.bz2: путь/к/файлу.txt

Цензурирование запросов пользователей

Когда вы ищете картинки в «Яндексе», в некоторых случаях ваш поисковый запрос автоматически корректируется: компания изымает часть изображений из поисковой выдачи.

За это отвечает специальное правило внутреннего сервиса «Бегемот» под названием ImgPatch (дословно — исправление изображений). Вот такое описание этого правила можно увидеть в его коде:

Позволяет организовать быстрый бан картинок и видео при помощи правки исходных запросов. От небольших изменений до полной переформулировки.

search.tar.bz2: wizard/data/fresh/img_patch/images2.txt

В первых десяти строках текстового файла на скриншоте описана логика правил ImgPatch. «Яндекс» может переписывать запрос пользователя (rewrite) или добавлять к нему какие-то аргументы (patch): например, заминусовывать отдельные слова, чтобы наверняка изъять их из выдачи.

Эти правила можно применять ко всем запросам (*) или ограничить каким-то сегментом интернета — например, российским (tld=ru), белорусским (tld=by) или украинским (tld=ua). Некоторые правила должны срабатывать только при отсутствии конкретного уточнения в запросе (anti marker word).

Попробуем объяснить логику таких исправлений на примерах из файла с тестовыми запросами для проверки их работы.

зелёный слоник -фильм,-видео,-кино patch -«зелёный слоник» -«zeleniy slonik»

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

президент allow-exact,-медведев patch -«Медведев»

Это правило должно помочь россиянам забыть, что заместитель председателя Совбеза РФ Дмитрий Медведев тоже был президентом. Если только пользователь специально не попросит архивные фото президента Медведева.

Чаще всего исправления применяются для того, чтобы убрать из выдачи «Яндекса» порнографические фото и видео (особенно детские). На втором месте по количеству заведенных правил — изъятие изображений президента РФ Владимира Путина. Раньше других на это обратил внимание пользователь твиттера @bantg.

Защита Путина

«Яндекс» постарался, чтобы на изображение действующего российского президента нельзя было наткнуться при поиске по отдельным словам:

  • пиздабол
  • плешивый
  • хуйло / хуйла / хуйлы / хуило / хуила

А также словосочетаниям:

  • бункерный дед
  • главный вор
  • гондон всея руси
  • хуй в скафандре
  • xуйло в проруби

И целым предложениям:

  • как выглядят педофилы
  • когда он сдохнет
  • странное создание машет рукой
search.tar.bz2: wizard/data/fresh/img_patch/images2.txt
search.tar.bz2: wizard/data/fresh/img_patch/video2.txt

Все эти правила должны применяться вне зависимости от того, где находится пользователь.

Эти правила должны применяться вне зависимости от того, в какой стране находится пользователь. Мы не знаем, когда они появились и действуют ли до сих пор. Перед выходом этого материала нам удалось найти изображения российского президента в поиске «Яндекса» по всем запросам, кроме хуй в скафандре (если не уточнять, что мы ищем именно Путина).

«Медуза» в России теперь не только «иноагент», но еще и «нежелательная» организация. Этот статус гораздо хуже прежнего. Тем не менее мы продолжаем работать. Нас по-прежнему можно читать. Это безопасно. Здесь — все ответы на тревожные вопросы.

Защита символа Z

«Яндекс» оберегает от неприятных ассоциаций и букву Z, ставшую символом российской войны против Украины (и запрещенную в некоторых европейских государствах). Пользователи «Яндекса» не должны увидеть символику нацистской Германии по запросам со словами символ z или z спецоперация логотип. Для этого «Яндекс» автоматически добавляет к ним множество разных заминусованных слов:

символ z * patch -luftwaffe -знак -люфтваффе -emblems -немецкий -german -президент -германский -славянский -army -рейх -вермахт -symboly -нацисты -германия -ss -hitler -nazi -сша -us -germany -сс -postimages -калмыкия -крест -членский -гитлерюгенд -message -ww2 -symbol -фон

z спецоперация логотип * patch -азов -spartan -япония -всу -одесса -спецуха -blackwood -спецназ -фарм -сша -ссо -warface -csgo

Проверить, функционирует ли правило до сих пор, труднее. В случае с Путиным программа должна блокировать изображение президента РФ, если пользователь ищет конкретное слово, словосочетание или предложение. В случае с Z искать программе приходится «запрещенные» символы, что сложнее. Наберите в поиске символ z или z спецоперация логотип — и вы можете встретить в выдаче, например, свастику; но неизвестно, связано ли это с тем, что фильтр уже выключен или он просто плохо работает.

Два последних слова в черном списке капчи

В утечке можно найти списки запрещенных и разрешенных слов для использования в капче «Яндекса».

Запретный список начинается со слов пиндосы!, смерть, смертью, google — а заканчивается словами львов и сдаться. Он не отсортирован по алфавиту: отдельные новые запретные слова или списки, скорее всего, записывали в конец файла.

captcha.tar.bz2: data/blacklist_ru.txt

Оба последних слова, по-видимому, внесли в список после начала полномасштабного вторжения России в Украину. Слово сдаться могли забанить, чтобы его случайно не расценили как скрытый призыв; попадание в список слова львов также трудно объяснить вне военного контекста. Ни в черном, ни в белом списке нет имен собственных, но львов — это одновременно и название города на западе Украины, и родительный падеж множественного числа слова «львы». Ни в каких других формах (львы, львам, львами, львах) это слово в черном списке не встречается, а в белом, наоборот, можно найти это слово в другой форме (львам), а также несколько однокоренных (львиная, львиного и др.).

Так что, по всей вероятности, внести слово львов в запрещенный список могли только из-за его омонима — города Львова, который подвергается ракетным ударам российских войск с самого начала войны.

Обновлено. «Яндекс» 30 января опубликовал первые результаты своего расследования утечки исходного кода. В них говорится, в частности, что в некоторых случаях логику работы сервисов корректировали не алгоритмическим способом, а «костылями». «Через такие „костыли“ исправляли отдельные ошибки системы рекомендаций, которая отвечает за дополнительные элементы поисковой выдачи, и регулировали настройки поиска по картинкам и видео», — заявила компания.
Что стало с «Яндексом» после начала войны

Мы замучились бороться Как российское вторжение в Украину раскололо «Яндекс». Расследование Светланы Рейтер

Что стало с «Яндексом» после начала войны

Мы замучились бороться Как российское вторжение в Украину раскололо «Яндекс». Расследование Светланы Рейтер

Денис Дмитриев