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

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   [В]контакте авторизация (https://forum.antichat.xyz/showthread.php?t=196788)

Sunstrider 16.04.2010 22:08

[В]контакте авторизация
 
http://vkontakte.ru/login.php?m=1&email=
народ где здесь значение входа,е мейл и пароль подстовляет а про вход даже незнаю где подцепить(подобие чекера пишу)

RedFern.89 16.04.2010 22:14

опять эту тему подняли! ищите в поиске по ачату) тут есть))

Sunstrider 16.04.2010 22:16

там через id http а я так
procedure TForm1.Button2Click(Sender: TObject);
var
i:integer;
s:string;
html_tag: variant;
begin
html_tag:=WebBrowser1.OleObject.Document.forms.ite m(0).elements;
for i:=0 to (html_tag.length-1) do
begin
if (html_tag.item(i).name='email') then
html_tag.item(i).value:=edit1.text;

if (html_tag.item(i).name='pass') then
html_tag.item(i).value:=edit2.text ;

if (html_tag.item(i).value='quick_login()') then
html_tag.item(i).click;
подругому не умею(

_LeADeR_WTF_ 16.04.2010 22:36

пробуй тaк vkontakte.ru/login.php?email=имейл&pass=пароль

Sunstrider 16.04.2010 22:37

софт в поля подстовляет как имено войти нажатие реализовать

[stranger] 16.04.2010 22:37

Код:

function re(wHost, wRequest: string):string;
var
hSocket: TSocket;
hHost: PHostEnt;
hAddr: TSockAddrIn;
hTimeout: TTimeVal;
iRead: integer;
hBuffer: array[0..1024] of char;
hData:string;
begin

 hSocket := socket(AF_INET, SOCK_STREAM, IPPROTO_TCP);
 hHost := gethostbyname(PChar(wHost));
 hAddr.sin_family := AF_INET;
 hAddr.sin_port := htons(80);
 hAddr.sin_addr := pinaddr(hHost^.h_addr^)^;
 hTimeout.tv_usec := 0;
 hTimeout.tv_sec := 2000;
 setsockopt(hSocket, SOL_SOCKET, SO_RCVTIMEO, @hTimeout, sizeof(ttimeval));
 connect(hSocket, hAddr, SizeOf(hAddr));

 Send(hSocket, wRequest[1], length(wRequest), 0);
 while (TRUE) do
 begin
  FillChar(hBuffer, SizeOf(hBuffer), 0);
  iRead := Recv(hSocket, hBuffer, length(hBuffer), 0);
  hData := hData + copy(hBuffer, 0, iRead);
  if (iRead <= 0) then break;
 end;
 CloseSocket(hSocket);
result := hData;
end;

Код:

re('login.vk.com','POST /?act=login HTTP/1.1'#13#10+
  'Host: login.vk.com'#13#10+
  'Referer: http://vkontakte.ru/index.php'#13#10+
  'Content-Type: application/x-www-form-urlencoded'#13#10+
  'Content-Length: ' + cl + #13#10#13#10+
  'email=' + e-mail + '&pass=' + password + '&expire=&vk='));

из ответа надо вытащить ключ s и передавать его в следующем запросе:
Код:

re('vkontakte.ru','POST /login.php HTTP/1.1'#13#10+
  'Host: vkontakte.ru'#13#10+
  'Referer: http://login.vk.com/?act=login'#13#10+
  'Content-Type: application/x-www-form-urlencoded'#13#10+
  'Content-Length: ' + cl + #13#10#13#10+
  's=' + s +'&op=slogin&redirect=1&expire=0&to='));

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

Sunstrider 16.04.2010 22:38

эмм для меня это тупо код в которым я не мыслю) расстолкуйте

M_script_ 17.04.2010 06:12

http://forum.antichat.ru/thread151017.html

1n0y 17.04.2010 14:15

WebBrowser1.navigate('vkontakte.ru/login.php?email=имейл&pass=пароль');

RedFern.89 17.04.2010 16:11

[быдло_оффтоп_коммент]TWebBrowser - это кошмарнейшее уныние, с которым вы прое6ете кучу трафика и веремени. [/быдло_оффтоп_коммент]

как минимум idHTTP используйте а лучше всего сокеты или вининет

Sunstrider 17.04.2010 16:14

а где почитать (изучить) их

admink1 17.04.2010 16:40

а есть ли пример раскодировки хэша?

RedFern.89 18.04.2010 01:26

admink1, есть))) сам лично писал))) могу скинуть в лс)) тебе wallhash или просто hash? оО их же 2 там))) а авторизацию надо делать на сокетах а не через этот ацтой))) быдлокодеры мля))) я пое6авшись 2 дня понял - что idHTTP полная хрень)))

M_script_ 18.04.2010 08:34

Цитата:

Сообщение от admink1
а есть ли пример раскодировки хэша?

Одна строка кода:
#define DecodeHash(s) ReverseString(s.SubString(s.Length() - 4, 5) + s.SubString(5, s.Length() - 12));

Sunstrider 18.04.2010 09:55

я даж незнаю что такое сокет,дайте полный фак плз

warkk 18.04.2010 11:53

Так ты не авторизируешся, сначала ты посылаешь на сервер логин и пароль, параметры запроса вроде (email,pass,expire,vk) в ответ тебе придет параметр s, его надо спарсить с ответа, там 56 символов хэш. Ну и после того как спрасил ключ, посылаешь на сервер ещё 1 пост запрос, параметры вроде (s,op,redirect). Параметры смотри снифером

Sunstrider 18.04.2010 11:55

Варк спасиб я забил на делфи,изучаю С++

M_script_ 18.04.2010 12:21

Цитата:

Сообщение от warkk
Так ты не авторизируешся

Сначала проверь, а потом пиши ;)
vkontakte.ru/login.php?email=имейл&pass=пароль

stepashka_ 18.04.2010 12:56

Цитата:

Сообщение от Sunstrider
Варк спасиб я забил на делфи,изучаю С++

а смысл?
одно и тоже считай :rolleyes:

Sunstrider 18.04.2010 13:15

Цитата:

Сообщение от stepashka_
а смысл?
одно и тоже считай :rolleyes:

Да ешки матрешки,народ какой ЯП больше подходит для написание чекеров Спамеров

M_script_ 18.04.2010 14:20

Цитата:

Сообщение от Sunstrider
Да ешки матрешки,народ какой ЯП больше подходит для написание чекеров Спамеров

Любой современный ЯП.

RedFern.89 18.04.2010 16:58

Цитата:

Сообщение от Sunstrider
Да ешки матрешки,народ какой ЯП больше подходит для написание чекеров Спамеров


ваще самый простой вариант - Delphi, C++, C#

:) :) :)

Sunstrider 18.04.2010 16:59

я шяс убьюсь ((( Один вариант самый актуальный

RedFern.89 18.04.2010 17:12

Sunstrider, я вот что тебе скажу. Delphi - ругается на каждую мелочь. т.е. на не соответствие типов и тд. Все же языки типа c++ (кроме builder) им пофигу на это. В общем каждому свое)) я лично отдаю свое предпочтение Delphi ))

еще скажу. Если же ты делаешь чекер - то я бы не советовал юзать TWebBrowser. Как бэ подумай, что случится с компом, если ты запустишь проверку в 100 потоков. Тут даже инди не совсем актуальны. В общем изучай нужный тебе язык программирования и вперед! :) :)

Sunstrider 18.04.2010 17:13

а софт мошнее на с++?

RedFern.89 18.04.2010 17:16

возможно. Я точно не знаю ничего про компилятор и возможности у C++, C#. Думаю - местные напишут)))

warkk 18.04.2010 17:29

Цитата:

Сообщение от M_script_
Сначала проверь, а потом пиши ;)
vkontakte.ru/login.php?email=имейл&pass=пароль

Ну попробуй программно так авторизироватся)

M_script_ 18.04.2010 17:48

Цитата:

Сообщение от warkk
Ну попробуй программно так авторизироватся)

Пробовал не раз. Все нормально.
Для спамеров, чекеров и т.п. данный способ не подходит по некоторым причинам.

Цитата:

Сообщение от RedFern.89
Delphi - ругается на каждую мелочь. т.е. на не соответствие типов и тд. Все же языки типа c++ (кроме builder) им пофигу на это

Странное мнение. В c++ без разницы, какой тип переменных использовать? И почему "кроме builder"?

Zombi **** 18.04.2010 18:00

Цитата:

Сообщение от Sunstrider
http://vkontakte.ru/login.php?m=1&email=
народ где здесь значение входа,е мейл и пароль подстовляет а про вход даже незнаю где подцепить(подобие чекера пишу)

а на php кто подскажет где почитать??

warkk 19.04.2010 10:18

Цитата:

Сообщение от M_script_
Пробовал не раз. Все нормально.
Для спамеров, чекеров и т.п. данный способ не подходит по некоторым причинам.

Я не знаю как ты там "пробывал" но так сейчас программно не авторизируешся.

keen6 19.04.2010 10:34

Цитата:

Delphi - ругается на каждую мелочь. т.е. на не соответствие типов и тд. Все же языки типа c++ (кроме builder) им пофигу на это.
Прежде чем писать, подучите теорию. И С++ и Delphi - языки со строгой типизацией. С++ больше подходит для системного программирования, на Delphi будет проще писать несложное прикладное ПО.

M_script_ 19.04.2010 11:18

Цитата:

Сообщение от warkk
Я не знаю как ты там "пробывал" но так сейчас программно не авторизируешся.

То есть, по твоему, вручную через браузер можно авторизоваться, а программно нельзя? :confused:

warkk 19.04.2010 14:49

Ага, с такими параметрами не авторизируешся, включи снифер и посмотри.

M_script_ 19.04.2010 16:17

Цитата:

Сообщение от warkk
Ага, с такими параметрами не авторизируешся, включи снифер и посмотри.

В ответе приходит remixsid, больше ничего и не нужно для авторизации.

warkk 19.04.2010 16:29

Хех... Смотри снифером. Там 2 пост запроса.

Sunstrider 19.04.2010 17:03

Я сейчас изучаю С++ ,посложнее но софт выходит более качественный.И лучше работает думаю начать изучать шарп

warkk 19.04.2010 17:09

Попробуй что то одно нормально выучить)

RedFern.89 19.04.2010 17:11

на любом языке можно все это написать))) главное знать основы работы того, над чем работаешь))

M_script_ 19.04.2010 19:00

Цитата:

Сообщение от warkk
Хех... Смотри снифером. Там 2 пост запроса.

Специально для самых упертых пример на инди... (warkk, найди в примере хотя бы один пост-запрос ;))
На форму кидаем 2 TEdit, TButton, TIdHTTP, TIdAntiFreeze (не обязательно)
В обработчике нажатия на кнопку пишем следующий код:
PHP код:

TMemoryStreamms = new TMemoryStream;

try
{
    
IdHTTP1->Get(    "http://vkontakte.ru/login.php?email=" +
                    
Edit1->Text +
                    
"&pass=" +
                    
Edit2->Text);
}
catch(...){}

String sRemixsid IdHTTP1->Response->RawHeaders->GetText();
sRemixsid.Delete(1sRemixsid.Pos("remixsid=") + 1);
sRemixsid.SetLength(sRemixsid.Pos(";") - 1);

IdHTTP1->Request->CustomHeaders->Add("Cookie: remixsid=" sRemixsid);
IdHTTP1->Get(IdHTTP1->Response->Locationms);
ms->SaveToFile("page.htm");

delete ms

Программа авторизуется и сохраняет страницу юзера в файл page.htm
Скачать программу

Sunstrider 19.04.2010 19:13

Цитата:

Сообщение от M_script_
Специально для самых упертых пример на инди... (warkk, найди в примере хотя бы один пост-запрос ;))
На форму кидаем 2 TEdit, TButton, TIdHTTP, TIdAntiFreeze (не обязательно)
В обработчике нажатия на кнопку пишем следующий код:
PHP код:

TMemoryStreamms = new TMemoryStream;

try
{
    
IdHTTP1->Get(    "http://vkontakte.ru/login.php?email=" +
                    
Edit1->Text +
                    
"&pass=" +
                    
Edit2->Text);
}
catch(...){}

String sRemixsid IdHTTP1->Response->RawHeaders->GetText();
sRemixsid.Delete(1sRemixsid.Pos("remixsid=") + 1);
sRemixsid.SetLength(sRemixsid.Pos(";") - 1);

IdHTTP1->Request->CustomHeaders->Add("Cookie: remixsid=" sRemixsid);
IdHTTP1->Get(IdHTTP1->Response->Locationms);
ms->SaveToFile("page.htm");

delete ms

Программа авторизуется и сохраняет страницу юзера в файл page.htm
Скачать программу

эт авторизация на вк ?


Время: 20:50