Почему антивирус «Яндекса» игнорирует robots.txt?

Во время нашей работы заметили, что Яндекс спокойно себе краулит закрытые в robots.txt разделы сайта.

Это все дело прикрывается так называемым "Антивирусом", т.е. в закрытые в robots.txt разделы сайта заходит вот такой робот "Mozilla/5.0 (compatible; YandexAntivirus/2.0; +http://yandex.com/bots)" описывается он тут http://help.yandex.ru/webmaster/?id=995329 как "антивирусный робот, который проверяет страницы на наличие опасного кода", но мы же понимаем, что чтобы проверить на наличие опасного кода этот код надо скачать.

Ошибок в robots.txt нет, через Яндекс.Вебмастер проверяем урл к которому идет обращение он отвечает "запрещен правилом", а на деле туда ходит антивирус.

Лучшие комментарии

  • Контекст комментария

    Just

    Проверка веб-страниц на вредоносный код не связана с индексированием для поиска. Она происходит независимо от индексирования, и проверенные страницы, запрещенные в robots.txt, никогда не попадут в результаты поиска. Проверка поисковыми системами страниц на вредоносный код подразумевает анализ всех загружающихся скриптов. Возможность закрывать от проверки вредоносные скрипты в robots.txt сделала бы antimalware-системы поисковых систем бесполезными. При этом очевидна польза для вебмастеров. Во-первых, если сайт взломали и заразили, лучше поскорее об этом узнать и вредоносный код удалить, чтобы не было проблем с законом. Во-вторых, Антивирусные продукты на компьютерах пользователей (а в продвинутых учреждениях — на общем интернет-шлюзе) часто блокируют доступ к зараженным сайтам. Из-за этого количество пользователей ресурса резко сокращается, а вебмастер может долго не понимать, в чем причина. Разметка же Яндекса предполагает оповещение вебмастера о заражении.

Добавить 29 комментариев

  • Ответить

    У меня было похожее сомнение, когда я думал в основной поток это пускать или в «Прочее». Дело в том, что от индексирования могут закрывать какие-то страницы, создающие высокую нагрузку на сервер и вообще ни для кого не предназначенные. robots.txt он, наверное, всеми приличными роботами должен использоваться, нет?

  • Ответить

    С одной стороны робот ходит на те страницы, ссылки на которые нашел публично, и ищет проблемные страницы. Вроде бы прекрасно. Но с другой стороны сказать пользователю, что страница заражена он может только в выдаче, куда такая страница через robots.txt попасть не должна. В любом случае интересно мнение представителей.

  • Ответить
    dima5ty гасконец

    Дело в том, что от индексирования могут закрывать какие-то страницы, создающие высокую нагрузку на сервер и вообще ни для кого не предназначенные. robots.txt он, наверное, всеми приличными роботами должен использоваться, нет? С тяжелыми страницами — это такой пример в вакууме, если смотреть на практику. Т.е. если человек, способен оценить нагрузку и прописать что-то в роботсе — то эта страница просто перестанет существовать раньше, чем руки дойдут до роботса. У меня, например, есть такие страницы в паблике, но отрабатывают они только для специальных клиентов. Но вот в модели, когда паук шарится исключительно по правилам роботса можно спокойно вешать сплоиты на закрытые в роботсе страницы и тогда антивирус становится фикцией. Т.е. это такая антитеррористическая особенность, если в контенте нет опасности — то не стоит и задумываться.

  • Ответить

    Проверка веб-страниц на вредоносный код не связана с индексированием для поиска. Она происходит независимо от индексирования, и проверенные страницы, запрещенные в robots.txt, никогда не попадут в результаты поиска. Проверка поисковыми системами страниц на вредоносный код подразумевает анализ всех загружающихся скриптов. Возможность закрывать от проверки вредоносные скрипты в robots.txt сделала бы antimalware-системы поисковых систем бесполезными. При этом очевидна польза для вебмастеров. Во-первых, если сайт взломали и заразили, лучше поскорее об этом узнать и вредоносный код удалить, чтобы не было проблем с законом. Во-вторых, Антивирусные продукты на компьютерах пользователей (а в продвинутых учреждениях — на общем интернет-шлюзе) часто блокируют доступ к зараженным сайтам. Из-за этого количество пользователей ресурса резко сокращается, а вебмастер может долго не понимать, в чем причина. Разметка же Яндекса предполагает оповещение вебмастера о заражении.

  • Ответить

    Monk Albino, Но с другой стороны сказать пользователю, что страница заражена он может только в выдаче, куда такая страница через robots.txt попасть не должна. Не только, еще есть SB API: http://safesearch.ya.ru/replies.xml?item_no=112 Яндекс предупреждает пользователей Firefox, Opera…

  • Ответить
    Альтер Эго

    Но сути это же не меняет, какие бы причины и бонусы не назывались. Робот Яндекса ходит туда куда директива robots.txt ему запрещает ходить.

  • Ответить

    Проверка поисковыми системами страниц на вредоносный код подразумевает анализ всех загружающихся скриптов. Возможность закрывать от проверки вредоносные скрипты в robots.txt сделала бы antimalware-системы поисковых систем бесполезными. Ну тогда ваши системы бесполезны, ибо закрыться от роботов настолько же просто через настройки веб-сервера, к примеру. Злоумышленники, получающие доступ к правке robots.txt в подавляющем большинстве случаев имеют право на правку файла .htaccess (ну если говорить о стандартном апаче, который стоит чуть менее чем у всех сайтов). Ну а если говорить о стандартных движках, то у них еще 100500 способов это сделать через правку кода. Просто злоумышленники как-то не паряться по этому поводу) Кстати, тут рушится миф о том, что Яндекс не ходит по урлам, которые получает из Я.Метрики и Я.Бара, если они закрыты в роботах.

  • Ответить
    Альтер Эго

    > Забаньте конкретный User-Agent. Так и злоумышленники ведь тоже могут так сделать. И что тогда, яндекс будет притворяться файрфоксом???

  • Ответить

    Ну и пусть делают, Вам-то что с этого? Вы своё дело сделали, запретили определённым UA ходить куда не надо. Но ведь в том-то и суть файла robots.txt, что не надо отслеживать User-Agent’ов, айпишники или смотреть обратный lookup (кстати, защититься через юзерагента навсегда трудно, т.к. поисковики нет-нет да меняют их), — все вежливые роботы читают этот файл и не ходят туда, куда нельзя. Прикрываться тем, что это несет пользу при этом ну как-то некрасиво. Завтра придумают, какую пользу для поиска несет посещение запрещенных страниц и отображение их в поиске, и полностью начнут игнорировать все запреты пользователей.

  • Ответить

    Когда же, наконец, до Яндекса дойдет, что robots.txt создавался не столько для закрытия от индексирования, сколько для снижения нагрузки на сервер со стороны не людей, т.е. любых автоматических систем, какими бы благими намерениями и заботами не объяснялось создание таких систем…

  • Ответить
    Альтер Эго

    Проверка веб-страниц на вредоносный код не связана с индексированием для поиска. Она происходит независимо от индексирования, и проверенные страницы, запрещенные в robots.txt, никогда не попадут в результаты поиска. А с чего это Яндекс вдруг для себя решил, что robots.txt теперь имеет смысл только для систем индексирования? Он вроде как для любых (хороших) роботов предназначен. Проверка поисковыми системами страниц на вредоносный код подразумевает анализ всех загружающихся скриптов. Возможность закрывать от проверки вредоносные скрипты в robots.txt сделала бы antimalware-системы поисковых систем бесполезными. Если злоумышленник подсовывает поисковику (по IP) одну страницу, безвредную, а пользователям совсем другую, то ваши antimalware системы тоже бесполезны.

  • Ответить

    Партнерки-партнерками, но Яндекс явно переходит опасную черту. Механизм robots.txt держится исключительно на честном слове и если начать делать исключения, то он развалится не успеешь глазом моргнуть. Нужно ли это Яндексу — непонятно.

  • Ответить

    да.. с одной стороны, канеш, мы понимаем, что чтобы бороться с преступностью, у силовиков должны быть полномочия более другие, чем у рядового гражданина.. с другой, полиция — это государственный институт.. положим, шерифы — не государство, но они выбираются.. а как мы знаем из истории, провозглашали себя законом выше государства всякие Махно..

  • Ответить
    dima5ty гасконец

    Механизм robots.txt держится исключительно на честном слове и если начать делать исключения, то он развалится не успеешь глазом моргнуть. Учитывая, что сами поисковики не особо справляются с правильным/полным написанием robots.txt (не говоря про подавляющее большинство вебмастеров), можно считать что это в принципе плохой механизм, хотя на вид быстрый и полезный.

  • Ответить
    Альтер Эго

    Еще кстати если забанить определенные страницы от «Яндекса», а для пользователя эти страницы оставить открытые не факт что (несомненно для удобства пользователей и повышения качества поиска) ты не получишь бан за клоакинг. Ведь это если дословно и есть клоакинг — пользователю отдается не то что отдается (ничего) роботу Яндекса. Т.е. отношения между вебмастером и Яндексом строятся на доверии, один говорит что не будет подменять определенные страницы сайта для робота, другой говорит что не будет ходить туда куда ему запретят. И эти добросердечные отношения Яндекс абузит. Хотелось бы услышать комментарии представителя Яндекса, является ли закрытие определенных страниц сайта (реальное закрытие, не через robots.txt) от Яндекса клоакингом.

  • Ответить
    dima5ty гасконец

    Какие поисковики не справляются с написанием robots.txt? Все http://www.google.com/alerts http://feedback.yandex.ru/?from=mainpage http://advertising.yandex.ru/media/banner/news.xml?from=news-ru (на этом поддомене роботс особенно смешной) http://list.mail.ru/10902/1/0_1_0_1.html?sdvsd http://maps.rambler.ru/?query=sdvsd http://www.aport.ru/search/?r=sd&That=std http://webalta.ru/sport.html?68167&sd http://ru.images.search.yahoo.com/robots.txt вощем не следит никто за чистотой своих собственных индексов

  • Ответить

    Сайт http://www.robotstxt.org/robotstxt.html посвящен robots.txt На нем можно найти There are two important considerations when using /robots.txt: robots can ignore your /robots.txt. Especially malware robots that scan the web for security vulnerabilities, and email address harvesters used by spammers will pay no attention. the /robots.txt file is a publicly available file. Anyone can see what sections of your server you don’t want robots to use. Так же на странице http://www.robotstxt.org/faq/ignore.html можно найти ответ на вопрос почему робот игнорирует robots.txt

  • Ответить

    >>Какие поисковики не справляются с написанием robots.txt? >Все Явный косяк только у Яндекса на http://advertising.yandex.ru/robots.txt >вощем не следит никто за чистотой своих собственных индексов не следить и писать неправильный robots.txt — это разные веши.

  • Ответить

    > Явные косяки у всех представленных и они не в конкретных записях в роботсе, как вам показалось. Поясните, пожалуйста, несведущим. Хотя бы на примере первой строки — google.com/alerts

  • Ответить
    dima5ty гасконец

    Поясните, пожалуйста, несведущим. Хотя бы на примере первой строки — google.com/alerts Погорячился немного, там это оказалось очень правильно. Т.е. сам сервис открыт (/alerts), а внутренние настройки закрыты (/alerts/), но зачем то открыта главная страница со списком алертов (/alerts/manage). Простительно вощем. Поменяем на http://news.google.com/news/directory?pz=1&cf=all&ned=ru_ru&hl=ru&author=13680589196117752952&sort=rated&csep=false&csed=ru_ru&asas=asascascascascasas т.е. отсутствие контроля порядка параметров и их наименований