Пользователь
0,0
рейтинг
17 сентября 2012 в 12:39

Разработка → Хитрый способ слива мобильного трафика

Вебмастера — владельцы сайтов с мало-мальски приличной посещаемостью наверняка неоднократно получали сообщения наподобие этого:
Здравствуйте!

Предлагаем дополнительно заработать на вашем сайте *****.ru.
По статистике от 5% до 20% посещаемости любого сайта составляет мобильный трафик. 
Эти посетители вам бесполезны. Установите наш код и зарабатывайте на каждом мобильном посетителе!
Выкупаем 100% вашего WAP трафика. Средняя цена по системе 25$ за 1000 мобильных хостов.
...
P.S. Вы ничем не рискуете. Для поисковиков наш код не заметен. Просто будете получать дополнительный доход!


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

Получал такое предложение и я, тоже неоднократно. Поначалу отвечал вежливым отказом, а затем и просто стал оставлять без ответа.

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

Но я в первый момент подвоха не заподозрил и JS-код на сайте решил разместить. Ну, разместил и забыл об этом. А спустя некоторое время получил сообщение от одного из пользователей сайта, что у него перестал открываться сайт с мобильного телефона. В ходе переписки с ним выяснилось, что вместо сайта открывалась некая заглушка, предлагающая обновить версию Flash. Сначала я решил, что Flash действительно требуется для отображения какого-нибудь баннера, но решил уточнить, с какого аппарата пользователь пытается зайти на сайт. И выяснилось, что это даже не смартфон, то есть ни о каком Flash и речи быть не могло.

Уже в тот момент у меня стали зарождаться смутные сомнения. И я, вооружившись плагином User Agent Switcher для FireFox, выставив в его настройках «iPhone 3.0» захожу на свой сайт и обнаруживаю редирект на ту самую заглушку, предлагающую обновить версию Flash-плеера. Далее уже путём научного тыка, то есть попеременным отключением рекламных блоков на сайте, удалось выяснить, какой из кодов вызывал такое поведение.

Чисто с технической точки зрения всё было сделано очень примитивно. Для «обычных» браузеров отдавалась симпатичная картинка со ссылкой на вполне приличный партнёрский сайт, а для всех мобильных браузеров в конце добавлялся вот такой нехитрый JavaScript-код:
setTimeout(function(){window.location='http://*****.net/?a=t2d4w294z215y2w4u2w423m254l2u266r2z274w2e423d413e4y2'},1000);

Вебмастера, будьте бдительны и учитесь на чужих ошибках! Если у кого-то после прочтения статьи возникли подозрения, рекомендую воспользоваться упомянутым выше плагином и проверить работу ваших сайтов с выставленным в нём мобильным User-agent.
@Robin_Bad
карма
12,2
рейтинг 0,0
Реклама помогает поддерживать и развивать наши сервисы

Подробнее
Реклама

Самое читаемое Разработка

Комментарии (65)

  • +93
    Странно, что вы готовы чужой js код от кого попало ставить на свой сайт.
    • +18
      Поддерживаю это замечание. Хороший вебмастер даже jQuery берёт не из чужого CDN, а с собственного сайта — а тут эвона что…
      • +1
        Вы имеете виду, что если я беру jQuery с Гугла или Яндекса, злоумышленник может подменить dns (или что-то вроде того) и направить запросы на свой сервер, а там уже подменять код?
        • +6
          Яндекс может банально упасть и ваш сайт перестанет работать.
          • +22
            <script src="//ajax.googleapis.com/ajax/libs/jquery/1.8.1/jquery.min.js"></script> <script>window.jQuery || document.write('<script src="js/vendor/jquery-1.8.1.min.js"><\/script>')</script>
            
            • +6
              правда немножко подтормаживает, но если гугл упадет, то вообще многое будет подтормаживать.
              • +2
                3 лишних минуты на страницу, это немного?

                Вот что мне выдавал ФФ на некоторых сайтах, когда у нас неаккуратно порезали вконтактик на работе.
                GET vkontakte.ru/js/api/share.js?10 [HTTP/1.0 504 Gateway Time-out 180297мс]
            • +6
              Спасибо за код без пояснений, в вас сразу видно профессионала.

              Для тех кому интересно, этот код пытается скачать код с гугла, а если не удается, то грузит со своего сайта.

              У меня для вас печальная новость, код не асинхронный и дойдя до процесса загрузки скрипта с гугла браузер будет некоторое время втыкать, у ФФ это время 120 секунд. Только через 2 минуты сработает таймаут, код пойдет дальше и загрузит jquery с собственного сервера.
              • +1
                jquery нет смысла грузить асинхронно, иначе другие скрипты у вас будут падать на первой же строке

                $(function() { ... });

                вообще говоря, мало что есть смысл грузить асинхронно таким образом, т.к. атрибут async сейчас понимают только самые свежие хромы и фаерфоксы. нужно грузить через defer (setTimeout(..., 0)), а про это на хабре уже рассказывалось десятки раз
                • +2
                  Про загрузку jquery асинхронно сказали вы, я только указал на причину, почему предыдущий код практически бесполезен. В случае падения чужого cdn страница будет открываться на 3 минуты дольше. Разница только в том, что в чистом случае jquery не будет вовсе.

                  Мой подход: все критически важное на своем сервере, все остальное асинхронно.
                  • 0
                    Мы с вами разные вещи подразумеваем. Вы — высоконагруженный проект с критически важной производительностью, я — обычный сферический сайт в вакууме, где и сервак может быть не самый сильный и канал не самый толстый. Вот тут то простое решение из boilerplate себя оправдывает.
            • 0
              А смысл?
              Ваш способ работает только если у вас уже лежит jquery — какой смысл тогда тянуть с внешки?
              • +1
                Если вкратце, то: 1. меньше запросов к серверу, 2. у большинства юзеров он уже закеширован.
                • +1
                  По статистике, у многию юзеров, несмотря на многомегабайтные дисковые кеши, кеш постоянно переполняется и потому бесполезен. Тяжелые нынче сайты :(

                  Более того, тем, кому кеш наиболее полезен (смартфоны, планшеты) он меньше всего и помогает, т.к. банально мал для всего медийного контента, что потребляется нынче.

                  Посмотрите сами (на своей машине) статистику, как часто ваша машина делает запрос на jQuery с серверов Гугла. И какая задержка при этом.
          • +8
            Думаю и Гугл и Яндекс падают реже, чем любой ваш сайт ;)
            • +1
              Конечно реже, но зачем плодить риски на ровном месте?
              • +6
                Ну я им как-то доверяю — плюс грузиться должно быстрее с их серверов, особенно, если посетитель моего сайта уже был на сайте, на котором подключен скрипт тоже с гугла. (Мелочь, но все же).
                • 0
                  Как правило, внешние скрипты почему-то быстрее не грузятся. Для них одна секунда бывает нормой, даже хорошей. К тому же они дают это не за просто так, а за отслеживание действий ваших посетителей.
                  • 0
                    Ну что ж, пожалуйста — они это делают, чтобы сделать поиск лучше. Я не верю во всемирный заговор.
                    • +1
                      Нет, они делают это, чтобы заработать больше. Это может совпасть с лучшим поиском, а может и не совпасть.
            • 0
              оно-то наверное да, но не всем понятно потом, откуда глюки загрузки сайта, он же ведь работает. Оказывается что это какой-то из чужих сайтов навернулся (баннерная система или статистика).

              В такие моменты понимаешь, что не асинхронная загрузка js кода — злейшее зло.
              • 0
                Я говорю именно про гугл и яндекс. Не о других
                • 0
                  Не так давно падало пару сервисов яндекса, включая яндекс.метрику. Вот это ора по интернету было (и тут, кстати, тоже).

                  А ведь можно было этого всего избежать, сделав всего-лишь асинхронные вызовы.
                • 0
                  За последний год только на моей памяти jquery с серверов яндекса не был доступен 3 раза в течении минимум минуты. Так же несколько раз был недоступен код директа и яндекс карт, что значительно тормозило загрузку половины рунета.

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

                  Использование cdn имеет смысл только для действительно сильно нагруженных сервисов, которым раздавать тяжелую статику становится проблематично.
            • +1
              Бывает какой-нибудь части сети временно обрубают иностранный трафик из-за технических проблем.
              И тогда у этой части пользователей нет вашего сайта.
              На графике просто падение трафика. Понять что к чему — сложно.
            • 0
              У провайдера, например, могут быть проблемы с DNS, или просто может не пускать на сайт. По своему опыту скажу, что это не такая уж и редкость.
            • 0
              Тут я могу с Вами поспорить. У меня при загрузке сайта стабильно 1 раз в месяц отваливается по таймауту mc.yandex.ru. При этом сам сайт за последние 4 месяца ни разу не падал.
            • –1
              Согласен, но есть один, неприятный, но таки минус, если найдутся какие то методы в API как deprecated, как было в недавних релизах, конкретнее вспомнить не могу, извиняйте, то понятно, старые проекты рухнут при таком подходе и вам придется либо переписывать, либо искать версию, которая была актуальна, что проблем в принципе тоже не много доставит.
              • +1
                Если я правильно вас понял, то подключая jQuery в url вы явно указываете какую версию хотите получить: yandex.st/jquery/1.7.1/jquery.min.js тому пример.
                • 0
                  Нет, я кстати не знал об этом, спасибо. Просто если честно один раз пользовался этим методом и не обратил внимания на то что версия указывается явно. Предыдущий камент в топку.
        • +3
          В некоторых частных случаях (в частности, в политическом сайтостроении) нельзя исключать даже и того, что у администраторов Гугла или Яндекса могут быть собственные интересы, не совпадающие с политическим направлением Вашего сайта.

          Google, например, давно и деятельно ведёт политическую и практическую борьбу за права гомосеков.

          Сегалович, например, входит в Центральный выборный комитет Координационного совета российской оппозиции.

          И так далее.

          Впрочем, я ограничусь упоминанием этого обстоятельства без дальнейшего обсуждения, потому что правила Хабрахабра предполагают внеполитическую его сущность.
          • +5
            Всё же приведу, для наглядности, ещё один пример из жизни: позавчера я сообщил на Хабрахабре о появлении бесплатного и свободного шрифта «Сталин», а сегодня узнал, что администрация Google Web Fonts (это своего рода CDN, только для шрифтов, а не для джаваскриптов) в лице одного из своих менеджеров по политическим соображениям принуждает авторов к переименованию шрифта (что приведёт, в частности, к издыханию этого шрифта на всех сайтах, которые успели его подключить из CDN — до тех пор, пока не узнают о переименовании и не переменят код соответствующим образом).

            В письме, полученном авторами шрифта, Сталина косвенно сравнивают с Гитлером, Гёббельсом, Пол Потом и организаторами двойного авиационного тарана Всемирного торгового центра в Нью-Йорке 11 сентября.
            • +1
              Ну, к примеру для меня Сталин действительно стоит на одной доске с Гитлером и Пол Потом. И еще для значительной массы украинцев. Предлагаете запилить заодно шрифт Пол Пот?
          • +3
            Всегда радовался вашему языку, а тут — такое. В русском языке есть слово «гомосек»?
            • +2
              Как в анекдоте про Вовочку: жoпа есть, а слова нет!
            • +4
              Мужеложец будет труЪ.
    • 0
      изначально код проверялся в браузере, ничего как бы не предвещало. хотя в целом согласен — косяк мой, впредь буду умнее.
    • +10
      На ошибках учатся, а тут человек ещё и поделился опытом. Молодым может быть полезно.
      • 0
        «Обновление flash» на мобильных устройствах — это, почему-то, самый популярный развод.
        • 0
          да они на самом деле могли написать там и «обновление Java» или вообще чего угодно, вплоть до установки антивируса на Nokia 3310. мне кажется, это не принципиально.
        • +7
          Обновление оперы тоже популярно.
  • 0
    Я подумал речь пойдет о подобном сайте как (wappixel.com) там дают код изображения,
    которое в прямом смысле сливает трафик пользователя.
    • 0
      сливали…
      Несколько лет как закрыт указанный вами сервис. Так же премиум трафик уже давно не актуален.
  • +3
    Зря затёрли адрес, хотел блок-лист в смартфоне пополнить.
    • +1
      я вам в личку отписал. но если хабрасообщество сочтёт нужным выложить все явки и пароли в паблик — сделаю это. просто есть ведь ещё и призрачный шанс, что кто-то поломал вполне себе белую и пушистую рекламную сеть, а я её тем самым дискредитирую.
      • 0
        Тогда тем более надо до ее владельцев донести. Не читают почту — так хоть так внимание обратят. Я за паблик.
  • +6
    Не понятно чего тут хитрого. Эти методы используются уже много много времени, я заколебался репортить о фишинге несколько раз в день. Дошло до того, что магазин моего провайдера при заходе с Android перенаправляет на «Ваш %что-нибудь% устарел» и тут за скачивается троян в apk.
    • 0
      А в поддержку провайдера написать? Вряд ли они самостоятельно поставили редирект.
      • +1
        Прошло всего полтора месяца с момента отправки письма. Специально писал с рабочего ящика @kaspersky.com. Я все еще жду реакции.
        Сарказм инсайд.
        Забили они, деньги, видимо, поступают.
        • 0
          А провадер-то крупный?
          • 0
            Для Химок — да. Думаю самый крупный в Химках.
            Но я плохо выразился. Это магазин, который рекомендует мой провайдер. Типа, там карточки, роутеры под прова и все такое. При чем и для Химкинского отделения и для Уральского. Не думаю, что магазин является частью провайдера.
            Впрочем, чего это я «не думаю». Ща гляну whois хотя бы.
            Глянул. Это одна и та же организация, либо магазин — дочернее предприятие.

            И как еще тогда заставить провайдера убрать с сайта своего магазина редирект на троянов?
            • 0
              Написать не в техподдержку, а директору?
              • 0
                Попытаюсь.
  • 0
    На большинство сайтов укоза со смартов тоже лучше не ходить — сразу перенаправляет на всякие «обновители» оперы и флеша.
    Ради интереса нажал «Обновить» на айпаде, оказалось все скучно и банально — попросило отправить SMS
  • +1
    Да сейчас в баннерных мобильных сетях та еще помойка. Часть баннеров с перенаправлениями, 80% от оставшихся — с сообщениями ваш браузер/андроид/флеш устарел и по ссылкам скачивается «обновление» с трояном.
    Причем в самой приличной программе/игре/сайте это встречается. Там надо чистку проводить радикальную
  • +1
    «По статистике от 5% до 20% посещаемости любого сайта составляет мобильный трафик.
    Эти посетители вам бесполезны.» — когда я увидел в метрике, что некоторые посетители заходят на сайт с мобильного — в первую очередь озадачился мобильным интерфейсом (не самым навороченным, но для наладонника более удобным, чем «типовая» версия). После этого процент таких посетителей (закономерно) увеличился, да и самому стало удобнее мониторить изменения в дальних поездках.
    Странно, что Вас не насторожила эта фраза, как могут быть не нужны посетители?
    • 0
      +1

      я лично, с одной стороны умею делать мобильные интерфейсы, с другой — занимаюсь «скорой компьютерной помощью» для нескольких, условно говоря VIP'ов по старой памяти

      так вот:

      пару недель назад эти партнёрки по агрегации мобильного трафика активизировались

      пошли косяками люди, которые никуда не нажимали и заходили только на привычные и проверенные сайты
      и там сразу был редирект (js) на загрузку этой заразы

      я тоже поставил себе мобильный UserAgent (при явно не мобильном разрешениии экрана) и обнаружил, что трафик сливают и весьма респектабельные сайты

      собрал небольшую коллекцию .apk-вирусов, кстати — все они определяются как трояны обычными «настольными» антивирусами

      пока выход такой:

      1) включить запрет на установку приложений не из маркета (не из канала Google Play)
      2) всячески понижать карму сайтам, сливающим трафик, в частности, жалуясь на них в поисковики
      www.google.com/safebrowsing/report_badware/
  • –1
    Угу, а потом на автомате подписывают на какой-нить посуточный сервис тех, кто с мобилы зашёл на сайт…
  • +4
    Получал один раз подобное, предлагали вставить код для «обновления» оперы-мини. Были посланы очень грубо и далеко, а также получили предложение затолкать своё «обновление» себе же туда, где ему самое место.
  • 0
    Судя по тому, что даже на весьма посещаемых сайтах рунета полным-полно баннеров «с душком» (начиная от «жми, и узнай дату смерти», и да «обнови свой скайп»), чистоплотность присуща далеко не всем.

    Тем рунет, похоже, отличается убеждением, что деньги не пахнут, а посетители «пахучих» (вывешивающих такие баннеры) сайтов — невероятной лояльностью, не уходя с ресурсов.

    О чем тут говорить?
  • 0
    Не пойму ЗАЧЕМ сливать трафик по 25$ за 1000хостов и еще на партнерки…
    Лично сам бы выкупил для своих белых проектов мобильный трафик по таким ценам!

    А по теме, автор молодец что заметил. Очень часто рекламодатели ставят фильтры со своей стороны и владельцы сайтов даже не подозревают на что они продают рекламу…
    • 0
      Ну так вы-то предлагаете рекламу или баннер, по которому еще неизвестно сколько перейдут. А с редиректом хосты=мобильные посетители.
      • +2
        За такую цену я согласен скупать редиректы )))
        +Гарантия что ваши пользователи не будут «кинуты» на лохотронах.
  • 0
    Будучи нубасом в android, зайдя на какой-то сайт, скачал и установил это «обновление» Flash. После чего со счета телефона сняли все деньги, а когда их не осталось пришли пара смс, о невозможности выполнения операции.
  • +1
    Вот оно как, оказывается, эти ребята напрямую предлагают установить редирект. Надо признаться, что обнаружив значительное количество вроде нормальных сайтов с редиректом мобильных юзерагентов на эти tds, я предполагал взлом, а не добровольную установку… Совсем обнаглели.
    Замечу, что антивирусные компании вынуждены вносить весь домен в список, распрстраняющих опасное ПО, т.е. даже если редирект идет только для мобильных.
    P.S. интересно, владельцу roman-abromovich.com тоже денег не хватает? ) осторожно, вредоносный редирект!

Только зарегистрированные пользователи могут оставлять комментарии. Войдите, пожалуйста.