Накрутка рейтинга на torrent tracker`ах (набросок)

Опубликовано admin в Втр, 28/09/2010 - 10:25

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


  1. Способ первый - т.к. в Linux используются открытые ПО, можно просто изменить исходный код программы - переменную которая отвечает за количество отданных данных (upload) умножить на некоторое число, скажем `x`, и таким образом на сервер будет передаваться в `x` раз больше, нежли вы в действительности отдали. Об этом способе здесь я умолчу, т.к. на вкус и цвет все фломастеры разные - кого-то удовлетворяет Transmition клиент, кому-то больше по душе Deluge, а кто-то любит rTorrent, а местоположение требуемой переменной различно у каждого клиента, как и от версии к версии т.к. код меняется. Поэтому, чтобы изменить исходники надо точно знать какой клиент и какая версия.
  2. Способ второй - это использовать протокол обмена сообщениями между трекером и клиентом. Торрент трекеры используют HTTP протокол и метод запроса GET , а потому не доставит сложностей отправить на трекер ложные данные с требуемым количеством upload`а. Этот подлог можно выполнить штатными средствами в Linux - tcpdump и telnet, но зная особо горячую любовь к командной строке я воспользуюсь анализатором трафика (сниффером) Wireshark вместо tcpdump и может на закуску объясню как это сделать и с помощью tcpdump.
  1. Перво-наперво установим Wireshark. Это очень популярный анализатор трафика, поэтому он находится в репозитории:
    sudo apt-get install wireshark
  2. Теперь запустим его от имени суперпользователя (это важно, чтобы была возможность сканировать главный сетевой интерфейс, через который происходит доступ к Интернету, в моём примере это eth0):
    sudo wireshark
    или можно в меню выбрать соответствующий запуск: ApplicationsInternetWireshark (as root)
  3. Запустится главное окно и в нём надо нажать кнопку Filter:
    Изображение#569
  4. Появится диалоговое окно со списком фильтров и выберем HTTP фильтр:
    Изображение#569
  5. Далее мы вернёмся к главному окну и выберем опцию CaptureOptions или жмакаем иконку как на снимке
    Изображение#569
  6. Советую выйти на данном этапе из торрент клиента и не пользоваться Интернет проводником для того, чтобы легче было найти требуемый запрос GET.
  7. В появившемся окне просто жмакаем Start, чтобы начать сканировать сетевой интерфейс eth0 и с этого момента
    Изображение#569
  8. Теперь запустите свой торрент клиент и стартуем одну закачку, тем временем Wireshark проанализирует трафик. Нам нужен запрос GET.
    Изображение#569
    Т.к. я только включил торрент клиент и Интернет проводником не пользовался, требуемый мне запрос появился самым первым. Проверить это можно если взглянуть на подробное описание запроса ниже, которое я обвёл в прямоугольник. Из описания этого запроса можно увидеть, что метод GET, uri с моим passkey и др. данными, версия запроса HTTP 1.0, трекер announce.x-torrents.ru, что мой клиент Deluge 1.1.6 и т.д. Значит это тот самый GET запрос, который мне нужен.
  9. Жмакаем правой кнопкой мыши на требуемом запросе и сохраняем его в виде печатного текста (см. снимок):
    Изображение#569
  10. Теперь открываем текстовый редактор и вставляем из буфера обмена скопированный текст запроса. Должно получится что-то в этом роде:
    ..t..{..GET /announce.php?passkey=3f7becaf6c146d6e114e95025e9a55o7&info_hash=%0a%e9%c4%e1%b2%11%d9T%9d%fdY%07L%db%07%c45%f0%1c%a2&peer_id=-DE1160-_d)zkmE0Q!AW&port=57282&uploaded=0&downloaded=0&left=1444937728&event=started&key=e3511864&compact=1&numwant=200&supportcrypto=1&ipv6=&no_peer_id=1 HTTP/1.0
    Host:announce.x-torrents.ru:80
    User-Agent: Deluge 1.1.6
    Connection: close
    Accept-Encoding: gzip

     
    Это то, что отсылает клиент при старте торрента трекеру (&event=started - &событие=стартовало).
  11. Убираем кракозябры до слова GET, так чтобы был вот такой результат:
    GET /announce.php?passkey=3f7becaf6c146d6e114e95025e9a55o7&info_hash=%0a%e9%c4%e1%b2%11%d9T%9d%fdY%07L%db%07%c45%f0%1c%a2&peer_id=-DE1160-_d)zkmE0Q!AW&port=57282&uploaded=0&downloaded=0&left=1444937728&event=started&key=e3511864&compact=1&numwant=200&supportcrypto=1&ipv6=&no_peer_id=1 HTTP/1.0
    Host:announce.x-torrents.ru:80
    User-Agent: Deluge 1.1.6
    Connection: close
    Accept-Encoding: gzip

     
    и сохраняем его под именем start.
  12. Теперь останавливаем закачку торрента (не выходим из торрент клиента, а именно останавливаем закачку) возвращаемся к Wireshark и таким же образом, каким сохраняем последний GET запрос, который появился под именем stop. Должно быть, что-то в этом роде:
    GET /announce.php?passkey=3f7becaf6c146d6e114e95025e9a67c9&info_hash=%0a%e9%c4%e1%b2%11%d9T%9d%fdY%07L%db%07%c45%f0%1c%a2&peer_id=-DE1160-_d)zkmE0Q!AW&port=57282&uploaded=68408&downloaded=349177&left=1444937728&event=stopped&key=e3511864&compact=1&numwant=0&supportcrypto=1&ipv6=&no_peer_id=1 HTTP/1.0
    Host:announce.x-torrents.ru:80
    User-Agent: Deluge 1.1.6
    Connection: Keep-Alive
    Accept-Encoding: gzip

     
  13. Теперь проанализируем первую строку файла start и stop. Там мы видим переменные - passkey, info_hash, port, uploaded, downloaded, left, event и т.д. и значения этих переменных. Нам в файле stop нужно изменить значение лишь одной переменной - uploaded. Меняем на нужное нам значение, скажем меняем uploaded=68408 на uploaded=136816 (с 66MB на 133.61MB) и сохраняем.
  14. Теперь открываем терминал и вводим:
    cat /путь/к/файлу/start | telnet имя_трекера 80

    Пол часа спустя в терминале вводим следующее:
    cat /путь/к/файлу/stop | telnet имя_трекера 80

    Т.е. в моём случае то выглядит следующим образом:
    START
    skwa@ubuntu:~/Documents$ cat start | telnet announce.x-torrents.ru 80
    Trying 95.168.160.214...
    Connected to announce.x-torrents.ru.
    Escape character is '^]'.
    Connection closed by foreign host.
    skwa@ubuntu:~/Documents$

    STOP
    skwa@ubuntu:~/Documents$ cat stop | telnet announce.x-torrents.ru 80
    Trying 95.168.160.214...
    Connected to announce.x-torrents.ru.
    Escape character is '^]'.
    Connection closed by foreign host.
    skwa@ubuntu:~/Documents$


PS:> Я проверил и этот метод накрутки сработал на таких трекерах: http://novafilm.tv/ (_http://novafilm.tv/); http:// (_http://x-torrents.ru)x-torrents.ru (_http://x-torrents.ru)и на http://torrents.ru/ (_http://torrents.ru/)
PPS:>Советую накрутку использовать на уже скачанных торрентах, а иначе вас быстро поймают и забанять, либо мудро меняйте значения переменных - uploaded, downloaded и left.
PPPS:>Этот метод накрутки "ручной", но в нём есть большое преимущество: 1) кол-во накрутки можно каждый раз менять 2) можно написать скрипт, который каждый раз будет использовать случайные числа в определённом диапазоне и умножать закачку на это число 3) такую задачу можно повесить на craontab, чтобы регулярно отсылать информацию трекеру, что полностью автоматизирует накрутку.

Добавлено спустя 12 минут 35 секунд:
Вот пример накрутки :
Изображение#569
Изображение#569
Как видите, я скачал файл в 1.4GB, а в статистике учтено только 860МВ. Это я опыты проводил над download, с upload тоже всё работает, только это сложно показать, поэтому я специально решил показать на примере download.