информационная безопасность
без паники и всерьез
 подробно о проекте
Rambler's Top100Страшный баг в WindowsSpanning Tree Protocol: недокументированное применениеГде водятся OGRы
BugTraq.Ru
Русский BugTraq
 Модель надежности двухузлового... 
 Специальные марковские модели надежности... 
 Модель надежности отказоустойчивой... 
 Facebook хранил часть пользовательских... 
 NSA выпустило Гидру 
 Неприятная уязвимость во всех WinRAR,... 
главная обзор RSN блог библиотека закон бред форум dnet о проекте
bugtraq.ru / обзор / избранное
ОБЗОР
главная
архив
избранное
2019
2018
2017
2016
2015
2014
2013
2012
2011
2010
2009
2008
2007
2006
2005
2004
2003
2002
2001
2000
1999
1998
1997




The Bat!

Подписка:
BuqTraq: Обзор
RSN
РВС
БСК



The Bat!

Кручу, верчу, накрутить хочу...
#64
Опубликовано: dl, 02.03.99 21:37

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

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

Борьба с накруткой - едва ли не основная головная боль баннерных сетей. Это же, впрочем, относится и ко всевозможным рейтингам, голосованиям и т.п. Вы будет смеяться, но все опять упирается в идентификацию пользователя, о которой я тут распинался три последних выпуска. Правда тогда она рассматривалась под другим углом зрения: речь шла о ситуации, когда пользователю выгодно быть правильно идентифицированным - тогда ему не понадобится повторно вводить пароль, заполнять анкету и т.п. В случае с накруткой игра идет в разные ворота. Сеть стремится отслеживать ситуацию значительного количества показов счетчика, баннера и т.п. одним и тем же пользователем в течение ограниченного промежутка времени, накрутчик стремится ее скрыть.

Основная информация, которую пользователь оставляет о себе на web, сводится к следующему.

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

Вся эта информация, кроме REMOTE_ADDR и REMOTE_HOST, передается клиентом непосредственно в заголовке http-запроса, а следовательно, может быть подделана. Подделка же обратного адреса - штука более сложная, а в Win-системах - гораздо более сложная из-за особенностей реализации winsock, не допускающей непосредственной модификации заголовков пакетов. Однако существует второй, гораздо более легкий путь - воспользоваться proxy-сервером, адрес которого и получит сервер в качестве обратного адреса. Однако далеко не все прокси позволяют так просто скрыть адрес клиента - в конце концов, их основная задача - вовсе не обеспечение анонимности. Они честно передают адрес клиента с заголовком X-Forwarded-For, что дает возможность cgi-приложению получить его из переменной окружения HTTP_X_FORWARDED_FOR, что вы и могли наблюдать в приведенном примере.

Итак, алгоритм понятен. Собираем список прокси и пишем программу, позволяющую формировать заголовки запроса вручную (несколько строчек на Perl'е), и начинаем работать через каждый раз случайно выбираемый прокси.

А дальше начинается шаманство, то есть статистика. К примеру, суточный график посещаемости российских сайтов носит, как правило, вполне определенный характер - ночной спад, дневной подъем, падение посещаемости по выходным и т.п. Для ресурсов, носящих более интернациональный характер, разница сглажена, но постоянство графика все равно имеет место быть. Впрочем, можно попробовать изобразить и такое поведение. Далее, необходимо учитывать активность посетителей разных регионов - такая статистика ведется, по крайней мере, баннерными сетями, и всплеск посещаемости с какого-то тьмутараканского прокси не может не привлечь внимания. Наконец, в случае баннерных сетей придется имитировать и клики по баннерам - иначе привлечет внимание резко упавший CTR сайта (отношение количества кликов на баннерах к количеству показов). Тут мы упираемся в cookie, которые, как правило, выставляют сети, используя модель идентификации cookie+IP. Придется заниматься и ими. Далее нам придется имитировать статистику возвратов одних и тех же посетителей, потом - имитировать их прогулки по другим сайтам, потому как сложно объяснить внезапный всплеск интереса нескольких сотен посетителей к одному-единственному ресурсу, и т.п. В итоге мы получаем, что создание идеального накрутчика - задача весьма нетривиальная и требующая значительных усилий.

До сих пор была теория, теперь переходим к практике - к нашей конкретной программе-накрутчице. Документация к ней достаточно подробная, демонстрируются примеры накрутки Rambler'а, баннерных показов и кликов, приводится рекомендация придерживаться естественного графика суточной посещаемости. Единственное, с чем не могу согласиться, так это с утверждением, что "все знаменитые сервера Рунета начинали путь к известности с использования этого или такого же способа". По крайней мере, один сервер, этим не занимавшийся, я знаю :) То же можно сказать и о большинстве крупных серверов - уж поверьте, разработка интересной идеи гораздо плодотворее эпизодической накрутки и гораздо интереснее накрутки постоянной.

Что касается реализации, чуда не произошло. Программа действительно использует прокси (причем этот режим по умолчанию отключен), коих в комплекте предлагается 787 штук. Большинство честно возвращает HTTP_X_FORWARDED_FOR. Правда для заметания следов используется любопытный трюк - программа формирует и свой левый X-Forwarded-For (из еще одного списка на тысячу адресов), так что реальный адрес в этом случае (на Apache, по крайне мере) приходит в HTTP_X_FORWARDED_FOR вторым, после запятой. С куками программа не работает, плюс всегда формируется HTTP_CACHE_CONTROL: max-age=2592000 - насколько я понимаю, обычно прокси пишут там на один ноль меньше. Это значение прописано в файле настроек и легко меняется, но это еще надо проделать. Таким образом, ее использование можно отловить, даже не особенно занимаясь статистическими исследованиями. Но если этим не заниматься, Рунет ждут веселые деньки.

P.S. от 2003 года.

Как вы заметили, этот текст писался еще в 1999 году, когда волна накруток еще только поднималась. С тех пор классические технические накрутки понегу теряли свою популярность - число анонимных прокси все же довольно ограничено, и их списки, как правило, есть у большинства участников этих игр - с обеих сторон. Да и статистика зачастую получается слишком неправдоподобная. Гораздо более популярным, эффективным и трудно отлавливаемым оказался спосооб, условно называемый "порнотрафик". Рецепт простой. Берем сервер с большой посещаемостью и вставляем где-то в уголок страницы скромный незаметный iframe минимальных размеров, в котором открываем накручиваемую страницу. Получаем массу вполне нормальных заходов от разных людей и отсутствие головной боли по имитации IP, разных броузеров и т.п. В роли серверов-доноров очень часто выступают многочисленные порносайты, поскольку и раскрутить их просто, и найти страницу-донора среди их огромной массы можно разве что случайно.

Частично с этим научились бороться, используя баннеры с яваскриптом, позволяющим вытащить адрес страницы верхнего уровня. Но и это не столь непреодолимое препятствие. Константин Тимашков прислал пример кода, успешно преодолеваюшего эту защиту. Ключевым моментом является то, что во многих случаях IE не отдает адрес предыдущей страницы (referer), если переход осуществлялся с помощью яваскрипта. Т.е. элементарное открытие popup-окна очень часто приводит к утере реферера. Минимальный размер этого попапа, отсутствие возможности сменить размер, позиционирование где-нибудь за границами монитора - это уже дело техники.

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

Проверить, что происходит с реферером в вашем броузере, можно на этой странице.

обсудить  |  все отзывы (0)  

[29481; 12; 6.16]

анонимность клоуны конференции спам уязвимости .net acrobat activex adobe android apple beta bgp bitcoin blaster borland botnet chrome cisco crypto ctf ddos dmca dnet dns dos dropbox eclipse ecurrency eeye elcomsoft excel facebook firefox flash freebsd gnome google gpl hp https ibm icq ie intel ios iphone java javascript l0pht leak linux livejournal mac mcafee meltdown microsoft mozilla mysql netware nginx novell ny open source opera oracle os/2 outlook password patch php powerpoint pwn2own quicktime rc5 redhat retro rip router rsa safari sco secunia server service pack shopping skype smb solaris sony spyware sql injection ssl stuff sun symantec torrents unix virus vista vmware vpn wikipedia windows word xp xss yahoo yandex youtube




мини-реклама
Интернет-бизнесменам мы предлагаем недорогие прокси листы с которыми у них не будет проблем. . Решил себе приобрести прокси лист рабочий, так как он почти каждый день мне нужен.

Rambler's Top100
Рейтинг@Mail.ru





  Copyright © 2001-2019 Dmitry Leonov   Page build time: 0 s   Design: Vadim Derkach