Карта сайта Хакер в RSS Энциклопедия Хакера PDA версия сайта Почтовые рассылки Хакера    Хакер в Twitter Хакер в ВКонтакте Приложение Хакер для Facebook Хакер на Formspring.me
Журнал Новости Форум Видео Life Xakep Live (блоги)
Bugtrack Статьи Блог Поиск English
Взлом как образ мысли Взлом как образ мысли
Интервью с человеком, который, как оказалось, является не только талантливым пентестером в одной из крупных ИБ-компании, но и хакером-ветераном, который уверенными шагами вышел на свет и прикоснулся к истории российской хак-сцены....
Полный гид по накрутке онлайн-голосований Полный гид по накрутке онлайн-голосований
Конкурсы с голосованием привлекают большое количество посетителей, а трафик, как известно, — это деньги. Особый интерес вызывают конкурсы, где за победу предлагаются лакомые призы....

Полный гид по накрутке онлайн-голосований

Bookmark and Share

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

Предыстория

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

Разведка

Сразу предупрежу, что в подобных голосованиях отслеживается IP-адрес каждого запроса, но подробно рассматривать это проблему мы не будем. Существует довольно много способов добыть свежие прокси, а с технической точки зрения смена прокси для выполнения нового запроса решается всего одной строкой c cURL:

curl_setopt($c, CURLOPT_PROXY, $proxy_address);

Разработку накрутчика всегда стоит начинать с разведки. Я решил не изменять этому правилу и, прежде чем голосовать, запустил свой снифер. Для идентификации нас как уникального посетителя сайт сначала ставил в куки банальную сессию. Затем ресурс предлагал указать возраст для подтверждения совершеннолетия (скорее всего, потому, что некоторые фильмы были «для взрослых»). Посмотрим на это с точки зрения накрутки: скрипт каждый раз проверяет дату рождения, поэтому было бы глупо производить накрутку с тысяч IP-адресов с одинаковой датой рождения. А значит, первое, что мы должны предусмотреть, — это граббинг сессии и рандомную генерацию даты рождения в cookie. Для этого в самом начале нашего скрипта мы объявим глобальную переменную с ранее сгенерированной датой в кукисах:

$cookie_session = array(
'BIRTHDAY='.rand(1, 29).'-'.rand(1, 12).'-'.rand(1960, 1985),
'IS_18OLDER=1',
'LANG=en'
);

Теперь, после того как мы подтвердили, что уже взрослые дядьки, нам следует зарегистрироваться. Переходим на страницу регистрации и видим, что нас просят ввести имя, фамилию, e-mail, на который придет активационный код, и текст с капчи. Данные для первых двух полей, а именно фамилию и имя, мы тоже должны генерировать каждый раз разные, так как 20 тысяч голосов от Петра Сидорова немного насторожат администратора. :) Имена и фамилии легко достать в интернете или спарсить самому с какого-нибудь сайта имен и фамилий. А вот с активационным кодом и капчей придется повозиться. Хорошо, заполняем форму, нажимаем «Зарегистрироваться» и топаем на мыло. Там нас ждет письмо со ссылкой на подтверждение регистрации. После активации аккаунта нам следует авторизоваться, то есть зайти на страницу авторизации и отправить логин и пароль. При этом мы получаем в кукисах вторую сессию, отвечающую за доступ к аккаунту. Затем нужно перейти на страничку видеоролика, который мы накручиваем, и нажать кнопочку «Голосовать». Запрос передается через Ajax, что немного ускоряет процесс накрутки. В принципе, это все. Но не забываем, что на кону целый миллион, поэтому нам нужно учесть все детали и мелочи, чтобы накрутку нельзя было заметить.



Уникальность заголовков

В любой накрутчик сразу же хочется добавить многопоточность. Но данный случай, скорее, представляет собой исключение из правил, и многопоточность нам только помешает. Если проголосовать в одну секунду тысячу раз, а потом весь день не голосовать вообще, это будет слишком подозрительно. Поэтому мы прибегнем к поочередному голосованию, во время которого к тому же будем делать паузы. Вдобавок следует отметить, что браузер (заголовок User-Agent) тоже нужно генерировать всегда рандомно, так как для пущей достоверности у всех ботов должны быть разные «браузеры». Для этого у меня давно подготовлен скрипт с большим количеством юзер-агентов, который ждет тебя на нашем диске. Достаточно просто добавить две строки:

include('./useragents.lib.php');
$chosen_useragent = chooseBrowser();

Таким образом, мы получим рандомный браузер из 150 возможных. Идем дальше. Сайт сразу устанавливает сессию, которая потом передается в каждом запросе через cookie. Поэтому первое, что нам нужно сделать при работе с сайтом, — это придумать, под какой браузер мы будем маскироваться (User-Agent), и получить сессию, чтобы потом вставлять ее в каждый запрос. В cURL есть возможность манипулировать cookie-записями, но я не люблю этот способ и сохраняю куки в глобальной переменной, которая доступна из всех функций. Для этого просто составляем запрос с предустановленным юзер-агентом к главной странице сайта, получаем куки, которые возвращает сервер, и сохраняем их в переменной для дальнейшего использования.

Загрузка всей страницы

Еще один момент, который может показаться излишним, — это выполнение абсолютно всех запросов, которые выполняет браузер. Возникает соблазн отправить минимум запросов с данными. Но это было бы ошибкой. Почему? Потому, что на сайте может действовать такой способ выявления накрутки, как, скажем, учет хитов по картинке. Это означает, что количество загрузок, например, картинки видеоролика должно приблизительно равняться количеству просмотров этого видео. Количество посещений всегда должно превышать (раза в два-четыре) количество голосов. Таким образом, мы будем не только накручивать голоса с помощью левых аккаунтов, но и эмулировать «ботов», просматривающих видео. Лично я взял соотношение 1 : 3, чтобы на три просмотра приходился один голос. Но если грузить только страницу просмотра видео (накручивать количество просмотров), то нужно также не забывать загружать и весь остальной контент, то есть картинки, JavaScript-файлы, таблицы стилей и всё-всё-всё, вплоть до иконки сайта. А как иначе? Для 100 голосов нужно 1000 посещений, а если при 1000 посещений картинка видеоролика будет загружена всего 20 раз, то это вызовет явные подозрения.

Каким же образом можно эмулировать абсолютно всю загрузку? Ведь для этого необходимо парсить страницу, скрипты, таблицы стилей и все остальное. Нет, парсить мы ничего не будем, точнее, будем, но не страницу. Все можно сделать проще. Достаточно лишь воспользоваться плагином LiveHTTPHeaders в браузере Mozilla Firefox (или же сервисом Opera Dragonfly из могучей Оперы) и открыть с его помощью страницу, загрузку которой мы хотим эмулировать. На выходе мы получим длинный лог всех обращений ко всем файлам, которые загрузил браузер. Сохраним этот лог в файле и напишем две функции. Первая будет парсить этот лог-файл и возвращать нам массив из значений, где адресом загружаемого файла служит ключ, а значением — хидер текущей загрузки, причем с предустановленными куки (сессией) и браузером, так как куки и браузер должны меняться при каждом голосовании (поскольку объем журнала крайне ограничен, советую прямо сейчас найти на нашем диске соответствующую функцию и изучить ее). После сохранения лога в файле и вызова вышеупомянутой функции в виде

$list = parseRequests(file_get_contents('./index_map.txt'),$chosen_useragent, $cookie);

мы получим массив из всех запросов, которые выполнил браузер при загрузке страницы. Вторая функция называется curlMulti() и отвечает за выполнение этих запросов. Здесь мы как раз вполне можем использовать многопоточность, поскольку браузер умеет загружать файлы многопоточно (снова смотри диск). Эта функция принимает массив ссылок и массив шапок (headers), которые впоследствии загружаются многопоточно, что ускоряет процесс. Также можно опционально выключить/включить загрузку самих файлов, оставив только загрузку шапки, либо просто посылать запросы, ничего не загружая. Последний параметр функции позволяет загрузить только определенный элемент, если нам не нужны все остальные. Открою тебе небольшую тайну: это пригодится при загрузке страницы регистрации, а именно при загрузке файла капчи.



Извлекаем CAPTCHA

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

function loadIndex()
{
global $chosen_useragent, $cookie_session;
$list = parseRequests(file_get_contents('./index_map.txt'),
$chosen_useragent, 'Cookie: ' . implode('; ', $cookie_session));
$links = array(); $heads = array();
foreach ($list as $link => $head){$links[] = $link; $heads[] = $head;}
$paged = cM($links, $heads, 1, 1);
}

Как видно по вышеприведенной функции, файл index_map.txt как раз и представляет собой лог, созданный с помощью аддона к Firefox при загрузке всей страницы. Этот лог, кстати, также следует немного обработать вручную, так как загружать, например, рекламу Гугла или файлы, размещаемые на других сайтах, не имеет смысла. С главной страницы перейдем на страницу регистрации. За некоторыми отличиями функция для захода на страницу регистрации будет похожа на предыдущую. Нам нужно подготовить еще один лог-файл с помощью LiveHTTPHeaders и поправить его, а также заменить строку

$paged = cM($links, $heads, 1, 1);

на

$paged = cM($links, $heads, 1, 1, 'captcha.php');
list($c_url, $sid) = explode('captcha_sid=', $links[11]);
return array('sid' => $sid, 'image' => base64_encode($paged[11]));


В данном случае будет эмулироваться загрузка всех элементов, а картинка капчи даже вполне успешно вернется. $links[11] и $paged[11] — это ссылка и значение запроса для 12-го элемента загрузки, а именно капчи, соответственно (рассчитывается на основе порядка следования файлов в логе снифера). Из ссылки выдирается sid, к которому привязано значение текста с капчи. Далее нужно разгадать капчу. В этом нам поможет известный сервис antigate.com, который за символическую плату ($1 за 1000 изображений) предлагает решить капчи вручную с помощью армии китайцев. В моем случае API-функция распознавания, представленная на официальном сайте, немного модифицирована. В ней я указал только путь к сохраненному файлу капчи и ключ доступа:

$captcha = loadReg();
$local = md5($captcha['image']);
$write_c = fopen('./captchas/'.$local.'.jpg', 'wb');
fputs($write_c, base64_decode($captcha['image']));
fclose($write_c);
$cresult = recognize('./captchas/'.$local.'.jpg', 'e12dc4858bac1f4ee338c577f9d300');

Теперь у нас есть ответ капчи в переменной $cresult.



Проблема с почтой

Далее мы сталкиваемся с необходимостью как-то зарегистрировать почту, чтобы позже использовать ее для активации аккаунта. Само собой, мыло каждый раз должно быть разное. Проблему можно решить тремя способами: 1. Зарегистрировать аккаунты на бесплатных почтовых серверах, например Яндексе или Рамблере. Конечно, если нужно большое количество мейлов, то придется использовать крутой автореггер или купить кем-то зарегистрированные (опять же с помощью автореггера) аккаунты. 2. Купить домен, схожий по названию с известными почтовиками, и настроить скрипт, собирающий в один ящик почту, отправляемую на все адреса. Таким образом, почта, отправленная на 123@домен.ру и 234@домен.ру, попадет в один ящик, а значит, можно смело генерировать тысячи адресов. Здесь снова нужны деньги и знания. 3. Самый простой и бесплатный способ — использовать скрипт, который любезно подготовлен автором этой статьи. Скрипт использует бесплатный сервис mailinator.net для проверки любого адреса, уже зарегистрированного в системе. Нам нужно просто указать произвольный адрес на доменах этого сервиса, а потом зайти (без авторизации!) в соответствующий аккаунт через веб-интерфейс и проверить почту. Всего доступно 11 доменов. Скрипт с подробными комментариями по использованию ждет тебя на диске.

Какой же из способов мы применим? К сожалению, нам придется потратиться на первый вариант, так как важность момента требует жертв. Мы не будем писать автореггер, а просто найдем на любом из хакерских форумов продавца аккаунтов, у которого можно купить адреса электронной почты, подходящие для проверки через расширение PHP IMAP. Да, доступ к серверам почтовых сервисов осуществляется по-разному, поэтому нужно заранее узнать, какой из них нам подойдет, и лишь только потом закупаться аккаунтами. Лично мне подходит аккуант на Рамблере, так как никаких проблем с проверкой почты я там никогда не испытывал. Далее пишем вот такую вот функцию для получения тела последнего письма:

function getMessage($login, $password)
{
$imap = imap_open('{mail.rambler.ru:110/pop3/notls}INBOX',
$login, $password);
if ($imap){$body = imap_qprint(imap_body($imap,
(imap_num_msg($imap) - 1)));}
else{return false;}
return $body;
}

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

$password = substr(md5(time()), 0, rand(6, 10)).rand(10,99);



Регистрация

Теперь все готово, и мы можем написать саму функцию регистрации, в чем нам снова поможет плагин LiveHTTPHeaders. В данном случае у нас имеются POST-данные, отправленные в виде multipart/form-data. Достаточно просто подставить в лог со снифера свои значения и послать их в POST-запросе курла (CURLOPT_POST, CURLOPT_POSTFIELDS). Не забываем также о меняющемся значении заголовка Content-Type и о том, что при запросе через multipart/form-data нужно генерировать boundaries. Отправляемые пакеты целесообразно сохранить где-нибудь, например в базе MySQL, для использования в дальнейшем. Сохранить необходимо логин и пароль от почты, пароль от аккаунта на сайте, юзер-агент, куки. Почему именно в дальнейшем? Потому, что сначала следует подождать, пока к нам на мейл придет активационное письмо. Но не стоит тратить время впустую, лучше заняться регистрацией аккаунтов, чтобы их было как можно больше. Таким образом, разумно разделить весь процесс на регистрацию аккаунтов и накрутку и выполнять их, например, ночью и днем соответственно. Через некоторое время мы открываем сохраненные данные и ищем там логин и пароль от почты. Далее проверяем, нет ли в ящике письма:

$activation = getMessage($email_login, $email_passw);

Если письмо пришло, то выдираем ссылку активации простой регуляркой. Тут никаких особых проблем возникнуть не должно — просто формируем запрос на подтверждение регистрации (обязательно вставляем referer и добавляем куки и user-agent, выбранные ранее). Опять же, не забываем про загрузку всех элементов: создаем лог-файл со всеми запросами, парсим его и повторяем действия браузера. После получения всех данных и подтверждения регистрации нам остается только авторизоваться. Снова делаем запрос, эмулируя браузер и сохраняем полученные куки в глобальной переменной. Таким же образом переходим на страницу видеоролика, который надо накрутить, и смотрим, куда Ajax отправляет запрос после нажатия на кнопку голосования. Последний шаг — отправка этого запроса через cURL. Все запросы желательно делать с трех-пятисекундной паузой. Как же автоматизировать процесс накрутки? Можно, конечно, использовать циклы, sleep() и прочее непотребство, но я поступил проще и сделал так, чтобы после прохода скрипта (без циклов, один голос за один запуск скрипта) в браузер выкидывался код JavaScript, обновляющий страницу через одну-две минуты. С автоматизацией тебе точно так же поможет и cron на каком-нибудь платном хостинге.

Получилось или нет?

Что мы получили в результате? Видеоролик постепенно набирал голоса посетителей и «лайки». Все шло гладко, посетителей прибавлялось в три раза больше, чем лайков. Ночью голосование я отключал, так как иначе все это было бы подозрительно. Накрутив пару тысяч голосов, мой заказчик все-таки выиграл тот самый миллион, ну и я тоже получил небольшой пряник. Без награды не остались и еще одни участники этой истории — инсайдеры. Да, ради миллиона в компанию, проводившую это голосование, был заслан «Штирлиц», который информировал заказчика о некоторых важных деталях. Как оказалось, кроме меня, были и другие накрутчики, причем таких претендентов специально не снимали с конкурса и не обнуляли их голоса — инсайдер доложил, что их выкинут в самом конце. Насчет нас, конечно же, изначально не возникло никаких подозрений. :) Занимаясь накруткой, всегда смотри на этот процесс глазами администратора. Следует обратить внимание на всё, к чему можно прикопаться: время, заголовки, сессии, куки, IP-адрес, мыло, скорость. Эти слова сразу же наводят на мысль, что учет всех мелочей очень замедляет процесс. Но сроки в данном случае как раз не поджимают, Советую тебе внимательно изучить все прилагающиеся к статье скрипты, чтобы получить полное представление о том, как работает разработанный накрутчик.

Что можно накручивать?

  • Партнерки
    Накрутка партнерок по трафику пользуется очень большим спросом, но здесь далеко не всё так просто, как кажется. Во-первых, придется проанализировать множество JavaScript'ов, встраиваемых в страницу, во-вторых, ты, скорее всего, столкнешься с проблемой привязки некоторых посылаемых данных к параметрам браузера, которые не так-то просто подделать.
  • Популярные социальные сервисы
    Вконтакте, Facebook, YouTube и прочие знаменитые сайты часто используют разные голосования, «лайки» и другие средства для увеличения популярности разных объектов. Здесь также придется возиться с JavaScript'ами и анализировать привязки к браузерам, а вдобавок разбираться с авторизацией, капчей и другими методами защиты от ботов.
  • Голосования с призами
    В статье как раз идет речь о таком голосовании. Многие сайты с радостью проводят всевозможные голосования, которые, как правило, не составляет труда накрутить. Но даже в самом простом случае предварительно необходимо провести разведку, чтобы учесть все параметры, которые могут использоваться для оценки уникальности каждого голоса.


Теги: накрутка





ПРЕДЫДУЩИЕ СТАТЬИ
Трюки с phpinfo
Интервью с создателем NGINX Игорем Сысоевым
IPv6: здесь и сейчас
WWW2
Чертовски хороший LAMP: Пошаговое руководство по установке стека (L)AMP на FreeBSD
Потрогай CISCO: Популярные решения в области безопасности
Прокачай свой ноутбук! «Must have»-софт для владельцев ноутбуков
Как работают винлокеры? Чтобы узнать больше, отправь весь текст этой статьи на короткий номер
0day своими руками: Ищем уязвимость и пишем эксплойт для Music Maker 16
7 трендов веб-разработки 2011: Инструменты прогрессивных девелоперов
ОБСУЖДЕНИЕ СТАТЬИ
Логин:
Пароль:
Если у вас есть форумный логин - вы можете использовать его, иначе анонимный гостевой доступ.

Для оставления комментария вы можете зарегистрироваться по упрощенной процедуре.

Обсуждение этой статьи на forum.xakep.ru
Для отправки сообщения введите код, указанный на картинке
Сообщение

UserГость
17.02.2012 21:07:10
Ответить Ссылка
Интересно, спасибо :)
UserГость
17.02.2012 21:35:16
Ответить Ссылка
Превосходная статья!
UserPiSuNiShkA_xD
17.02.2012 21:40:42
Ответить Ссылка
Большое спасибо автору за статью, я действительно многое узнал! ;)
UserГость
18.02.2012 12:41:40
Ответить Ссылка
Пупер супер!!!
Надо будет написать к своей системе детектор.
Автору респект и уважуха!!!
UserJoolernG
19.02.2012 2:04:47
Ответить Ссылка
Статья Я бы сказал очень полезная.
Спасибо Автору.
UserГость
20.02.2012 16:09:21
Ответить Ссылка
Очень хорошая статья, почерпнул много хороших идей. Спасибо.
UserГость
21.02.2012 1:55:27
Ответить Ссылка
bratan,a kak mojno razbiti bankovuiu sistemu???esli mojno pi6i mne na mail dj_den@abv.bg
UserГость
22.02.2012 15:26:49
Ответить Ссылка
Шикарно!
На самом деле я далек до этой темы, но все настолько толково расписано и грамотно проделано, что остается лишь высказать свое уважение к создателю сего шедевра!!!

Молодчина!!!
UserГость
25.02.2012 19:56:22
Ответить Ссылка
интересно, а если приделать javasсriрt - защиту с рандомным в определённой степени кодом,причём кодом, который будет работать корректно только в реальном браузере, да ещё управляемом человеком.
что ты тогда будешь делать?
UserГость
28.02.2012 10:50:44
Ответить Ссылка
кардинг карты
ОБНАЛИЧИВАНИЕ ПЛАСТИКОВЫХ КАРТ

http://xakepc.in/
UserГость
01.03.2012 20:30:31
Ответить Ссылка
Скажите, пожалуйста,где раздобыть 1-2к свежих прокси?
UserГость
05.03.2012 12:06:51
Ответить Ссылка
quote:

Скажите, пожалуйста,где раздобыть 1-2к свежих прокси?
купить
UserГость
19.03.2012 4:05:39
Ответить Ссылка
quote:

Скажите, пожалуйста,где раздобыть 1-2к свежих прокси?

ну я брал на freeproxylist.org
UserГость
02.03.2012 18:53:29
Ответить Ссылка
Неплохо. В теории. Но посмотрел скрипты с диска и немного под...задумался.
Думаю, что автору стоит выучить регулярные выражения и избавиться от монструозно-каскадных explode.
А, ну еще просто принять к сведению, что в ПХП есть ф-ция array_fill
UserГость
03.03.2012 21:52:33
Ответить Ссылка
а как скачать такую програмку ?
UserГость
11.03.2012 13:00:08
Ответить Ссылка
Все очень интересно. Хотелось бы добавить 4-ый способ регистрации ящиков. Яндекс Почта для доменов. Среди настроек есть возможность переадресовывать все несуществуещие адреса домена, на твой личный
UserГость
16.03.2012 22:35:25
Ответить Ссылка
накрутите плз участника номер 21 тут http://nesocompetition.cruelpixels.com/index.html
UserГость
17.03.2012 1:01:50
Ответить Ссылка
Статья вполне сносная. На "полный гид" не претендует, конечно, но неплохо. Добавлю немного про почту. Автору на заметку. Может еще кому пригодится.

Недавно свалился довольно серьезный заказ на написание бота. С самого начала использовал mailinator.com для почтовых адресов. Плюшки сервиса были довольно приятные: легкие html странички для парсинга писем, проверка по rss(!), возможность подключения своих доменов(!). Но один недостаток испортил всю малину: при интенсивной регистрации mailinator начинал блочить входящие письма с нужного домена (~30 регистраций за 3 мин). Что вполне логично: сервис предназначен для безопасной регистрации на мутных сайтах.

В итоге было зарегистрировано 20 своих доменов (я не опечатался, именно 20: результат был важнее затрат), арендован VDS с фряхой за 10$/мес и настроен exim на перенаправление всех писем от нужного отправителя на питоновский скрипт. В качестве бонуса - ассинхронность: не нужно было постоянно проверять ящик на наличие почты.

К слову: бот был разбит на несколько независимых частей (генерация данных пользователя, регистрация, "выдирание" линка подтверждения, подтверждение, полезная нагрузка) с общей базой пользователей и полем статуса в таблице. + возможность работы и дублирования отдельных элементов на разных хостах.

А вообще я поражаюсь лени писателей всяких разных опросов: можно придумать тучу способов проверки на "человечность": от банальной проверки переходов по сайту и времени заполнения опроса, до реализации простенького теста Тьюринга.
UserГость
17.03.2012 13:29:48
Ответить Ссылка
http://im.about.com/gi/pages/poll.htm?poll_id=9883074058 - рай для накрутчика))))

http://www.aif.ru/society/article/48045 - голосование внизу)))
UserГость
18.03.2012 18:11:05
Ответить Ссылка
Вот тут интереснее. Но сложнее))) Правда, ненамного)))))
http://my.opera.com/community/forums/topic.dml?id=19444
UserГость
19.03.2012 4:07:01
Ответить Ссылка
народ выложите кто ни будь этот файл или где найти этот диск?

include('./useragents.lib.php');
$chosen_useragent = chooseBrowser();
UserГость
21.03.2012 18:50:32
Ответить Ссылка
Со стороны кажется что все это очень просто, но хоть я и не Хакер, но с HTML кодами тоже возился немало. Но это очевидно небо и земля :)
UserГость
23.03.2012 8:06:43
Ответить Ссылка
Очень познавательно! Спасибо!
UserГость
26.03.2012 22:00:16
Ответить Ссылка
Уважаемый автор, скажите где купить много прокси?
Начиная от 2к?
Ведь все так хорошо описано, а самого основного в этой проблеме нет.
Дайте ссылку или хотя бы укажите, где реально купить много IP.
UserГость
27.03.2012 14:54:06
Ответить Ссылка
А ещё статья навеяла идею, как отключать конкурентов.
Накручивать главному голоса, не предусматривая ничего. И кто знает, в конце его может "разоблачат" и исключат из конкурса.
UserГость
07.04.2012 10:18:57
Ответить Ссылка
статья норм. помню в свое время писали прогу на php для распознования капчи в nuke по маскам. но там было все просто.
UserГость
08.04.2012 21:29:28
Ответить Ссылка
Скачать софт бесплатно: http://www.softolab.net/news/news_soft/
Отлично подрочить можно тут: http://www.erolab.org
Скачать шансон бесплатно: http://www.shansonbest.com
UserГость
20.04.2012 23:01:39
Ответить Ссылка
и что это было за голосование? какая марка проводила?
UserГость
22.04.2012 6:39:21
Ответить Ссылка
Ребят контакты автора статьи нужны срочно...
UserГость
24.04.2012 4:22:54
Ответить Ссылка
quote:

Ребят контакты автора статьи нужны срочно...

icq 772553
UserГость
23.04.2012 19:02:56
Ответить Ссылка
Для этого у меня давно подготовлен скрипт с большим количеством юзер-агентов, который ждет тебя на нашем диске. Достаточно просто добавить две строки:
include('./useragents.lib.php');
$chosen_useragent = chooseBrowser();
Уважаемый автор, можно вылодить здесь, я обошёл все магазины нашего города, но журнала за этот месяц не нашёл. Или сюда: mihail-dmoz@mail.ru
UserГость
23.04.2012 19:06:41
Ответить Ссылка
Инфа о прокси здесь.

http://www.xakep.ru//magazine/xa/031/028/1.asp
UserГость
23.04.2012 21:06:03
Ответить Ссылка
>Таким образом, мы получим рандомный браузер из 150 возможных.<
Вот тут мы и попались...
Рандом должен зависеть от популярности браузеров.
UserГость
03.05.2012 20:17:38
Ответить Ссылка
Зачем?
UserГость
27.04.2012 4:34:25
Ответить Ссылка
отлично накрутили голосования на http://itmonstr.ru
UserГость
28.04.2012 21:58:32
Ответить Ссылка
как по мне статья придумана и ни о чем, все до боли очень просто, лучше бы написали как накрутить лайки вконтакте или фейсбука - но это уже совсем другой уровень до которого автору статьи еще очень далеко
UserГость
30.04.2012 20:31:17
Ответить Ссылка
Скажите, кто может написать скрипт или еще что-то для голосования без регистрации, но можно 1 раз с одного ip, через прокси-долго, стоимость и условия прошу на почту скинуть: dd78k@yandex.ru




Keywords: zPOSTz zHOMEz, zMAGAZINEz z58304z
Для Авторов: edit Lock delete Lock



    Rambler's Top100