ANTICHAT.XYZ    VIDEO.ANTICHAT.XYZ    НОВЫЕ СООБЩЕНИЯ    ФОРУМ  
Баннер 1   Баннер 2

ANTICHAT — форум по информационной безопасности, OSINT и технологиям

ANTICHAT — русскоязычное сообщество по безопасности, OSINT и программированию. Форум ранее работал на доменах antichat.ru, antichat.com и antichat.club, и теперь снова доступен на новом адресе — forum.antichat.xyz.
Форум восстановлен и продолжает развитие: доступны архивные темы, добавляются новые обсуждения и материалы.
⚠️ Старые аккаунты восстановить невозможно — необходимо зарегистрироваться заново.
Вернуться   Форум АНТИЧАТ > Программирование > С/С++, C#, Delphi, .NET, Asm
   
Ответ
 
Опции темы Поиск в этой теме Опции просмотра

Indy 10 - проблема
  #1  
Старый 24.07.2009, 19:35
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию Indy 10 - проблема

Вобщем надо авторизироваться на wap.odnoklassniki.ru. В опере все норм.

Отправляет заголовки:
Код:
POST /dk?st_id=login&tkn=1247 HTTP/1.1
User-Agent: Opera/9.52 (Windows NT 5.1; U; en)
Host: mg2.odnoklassniki.ru
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: http://wap.odnoklassniki.ru/dk?st_id=main&tkn=1321
Connection: Keep-Alive
Content-Length: 98
Content-Type: application/x-www-form-urlencoded

fr_button=on&fr_email=agakamran%40mail.ru&fr_password=7646037&fr_go=%D0%92%D0%BE%D0%B9%D1%82%D0%B8
Получает заголовки:
Код:
HTTP/1.1 302 Found
Server: Resin/2.1.16
Cache-Control: private
Location: http://mg2.odnoklassniki.ru/dk;jsessionid=a9fQlIQnP909?st_id=userMain&tkn=7251
Set-Cookie: JSESSIONID=a9fQlIQnP909; path=/
Content-Length: 116
Connection: close
Date: Fri, 24 Jul 2009 15:23:35 GMT
Дальше есс-но редиректит, отправляя заголовки:
Код:
GET /dk;jsessionid=a9fQlIQnP909?st_id=userMain&tkn=7251 HTTP/1.1
User-Agent: Opera/9.52 (Windows NT 5.1; U; en)
Host: mg2.odnoklassniki.ru
Accept: text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
Accept-Language: ru-RU,ru;q=0.9,en;q=0.8
Accept-Charset: iso-8859-1, utf-8, utf-16, *;q=0.1
Accept-Encoding: deflate, gzip, x-gzip, identity, *;q=0
Referer: http://wap.odnoklassniki.ru/dk?st_id=main&tkn=1321
Cookie: JSESSIONID=a9fQlIQnP909
Cookie2: $Version=1
Connection: Keep-Alive, TE
TE: deflate, gzip, chunked, identity, trailers
Получает заголовки:
Код:
HTTP/1.1 200 OK
Server: Resin/2.1.16
Last-Modified: Tue, 04 Dec 2050 11:03:49 GMT
Pragma: no-cache
Cache-Control: no-cache, must-revalidate
Content-Type: text/html;charset=UTF-8
Connection: close
Transfer-Encoding: chunked
Date: Fri, 24 Jul 2009 15:23:38 GMT
Ну и тело тоже...

Через инди - не хочет.

Отправляет заголовки:
Код:
POST /dk?st_id=login&tkn=7844 HTTP/1.0
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 117
Connection: Keep-Alive, TE
TE: deflate, gzip, chunked, identity, trailers
Host: wap.odnoklassniki.ru
Accept: text/html, */*
Accept-Encoding: identity
User-Agent: Mozilla/3.0 (compatible; Indy Library)

fr_button=ons&fr_email=agakamran@mail.ru&fr_password=7646037&fr_go=%25D0%2592%25D0%25BE%25D0%25B9%25D1%2582%25D0%25B8
Получает заголовки:
Код:
HTTP/1.0 302 Found
Server: Resin/2.1.16
Cache-Control: no-cache
Location: http://wap.odnoklassniki.ru/dk;jsessionid=akkkZlcCROtb?st_id=userMain&tkn=4654
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Set-Cookie: JSESSIONID=akkkZlcCROtb; path=/
Content-Length: 116
Date: Fri, 24 Jul 2009 15:32:16 GMT
Редиректит, отправляя заголовки:
Код:
POST /dk;jsessionid=akkkZlcCROtb?st_id=userMain&tkn=4654 HTTP/1.0
Connection: keep-alive
Content-Type: application/x-www-form-urlencoded
Content-Length: 117
Connection: Keep-Alive, TE
TE: deflate, gzip, chunked, identity, trailers
Host: wap.odnoklassniki.ru
Accept: text/html, */*
Accept-Encoding: identity
User-Agent: Mozilla/3.0 (compatible; Indy Library)
Cookie: JSESSIONID=akkkZlcCROtb

fr_button=ons&fr_email=agakamran@mail.ru&fr_password=7646037&fr_go=%25D0%2592%25D0%25BE%25D0%25B9%25D1%2582%25D0%25B8
Но получает ошибку №400 Bad Request.
Код:
HTTP/1.0 400 Bad Request
Server: Resin/2.1.16
Cache-Control: no-cache
Expires: Thu, 01 Dec 1994 16:00:00 GMT
Set-Cookie: JSESSIONID=; expires=Thu, 01-Dec-1994 16:00:00 GMT
Set-Cookie: AUTHCODE=; domain=.odnoklassniki.ru; path=/; expires=Thu, 01-Dec-1994 16:00:00 GMT
Content-Type: text/html
Content-Length: 135
Date: Fri, 24 Jul 2009 15:32:19 GMT
После этого еррормесадж - 400...

HandleRedirects стоит true.

Собственно, почему?
Прошу помощи...
 
Ответить с цитированием

  #2  
Старый 24.07.2009, 19:39
Kaimi
Reservists Of Antichat - Level 6
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме:
18127311

Репутация: 1676


Отправить сообщение для Kaimi с помощью ICQ
По умолчанию

А зачем через инди слать 2 раза запрос на авторизацию, причем второй раз почему то к /dk;jsessionid=akkkZlcCROtb?st_id=userMain&tkn=4654
 
Ответить с цитированием

  #3  
Старый 24.07.2009, 19:44
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию

В опере все ок - сначала отправляются заголовки, опера получает куки, с которыми гетом открывает страничку...

А вот инди почему-то постом её открывает, хотя у меня идет всего один пост-запрос, и никаких гетов:
Код:
       PostData:=TStringList.Create;
       PostData.Add('fr_button=ons');
       PostData.Add('fr_email='+RegExp1.Match[1]);
       PostData.Add('fr_password='+RegExp1.Match[2]);
       PostData.Add('fr_go=%D0%92%D0%BE%D0%B9%D1%82%D0%B8');
      IdHTTP1.Post('http://wap.odnoklassniki.ru/dk?st_id=login&tkn=7844',PostData);
 
Ответить с цитированием

  #4  
Старый 24.07.2009, 19:52
Kaimi
Reservists Of Antichat - Level 6
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме:
18127311

Репутация: 1676


Отправить сообщение для Kaimi с помощью ICQ
По умолчанию

Так убери HandleRedirects и обрабатывай редирект самостоятельно
 
Ответить с цитированием

  #5  
Старый 24.07.2009, 19:59
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию

Убираю HandleRedirects - выскакивает 302 ошибка...
 
Ответить с цитированием

  #6  
Старый 24.07.2009, 20:12
Kaimi
Reservists Of Antichat - Level 6
Регистрация: 23.08.2007
Сообщений: 1,237
Провел на форуме:
18127311

Репутация: 1676


Отправить сообщение для Kaimi с помощью ICQ
По умолчанию

Почему ошибка то, это редирект, который ты должен обработать.
Если он выскакивает в виде исключения, то пиши запрос в try catch
 
Ответить с цитированием

  #7  
Старый 24.07.2009, 20:19
mailbrush
Познавший АНТИЧАТ
Регистрация: 24.06.2008
Сообщений: 1,996
Провел на форуме:
6075534

Репутация: 2731


Отправить сообщение для mailbrush с помощью ICQ
По умолчанию

Цитата:
Почему ошибка то
А вот этого я не знаю ...
 
Ответить с цитированием

  #8  
Старый 25.07.2009, 04:46
[n]-c0der
Участник форума
Регистрация: 03.02.2009
Сообщений: 104
Провел на форуме:
270228

Репутация: 70
По умолчанию

try except, try finally, try ti_idiot
Прежде чем кодить, почитай немного литературы...
Вылетает эксепшен, и то под дебагером...а с помощью выше описанных функций ты сможешь обойти это! Ололо
 
Ответить с цитированием

  #9  
Старый 25.07.2009, 14:28
Chrome~
Постоянный
Регистрация: 13.12.2008
Сообщений: 354
Провел на форуме:
1747641

Репутация: 175
Отправить сообщение для Chrome~ с помощью ICQ
По умолчанию

Ты что то неправильно делаешь. Я с Indy не работал, поэтому сразу не могу сказать, как правильно делать.

В общем твоя программа не правильно начинает отправлять заголовки, начиная от редиректа. Опера отправляет GET-запрос, а твоя программа POST-запрос, да и еще добавляет переменные к телу от предыдущего запроса.

Выложи сюда проект, посмотрим, что можно сделать. А еще для таких программ (и вообще любых других, которые работают с сетью) советую использовать Winsock.

Последний раз редактировалось Chrome~; 25.07.2009 в 14:31..
 
Ответить с цитированием

  #10  
Старый 25.07.2009, 16:56
ZdezBilYa
Участник форума
Регистрация: 29.08.2008
Сообщений: 151
Провел на форуме:
1551582

Репутация: 107
Отправить сообщение для ZdezBilYa с помощью ICQ
По умолчанию

Цитата:
Сообщение от mailbrush  
А вот инди почему-то постом её открывает, хотя у меня идет всего один пост-запрос, и никаких гетов:
Код:
       PostData:=TStringList.Create;
       PostData.Add('fr_button=ons');
       PostData.Add('fr_email='+RegExp1.Match[1]);
       PostData.Add('fr_password='+RegExp1.Match[2]);
       PostData.Add('fr_go=%D0%92%D0%BE%D0%B9%D1%82%D0%B8');
      IdHTTP1.Post('http://wap.odnoklassniki.ru/dk?st_id=login&tkn=7844',PostData);

1.
Код:
PostData.Add('fr_go=%D0%92%D0%BE%D0%B9%D1%82%D0%B8');
можно написать просто
Код:
PostData.Add('fr_go=Войти');
Во всяком случае, у меня так нормально работает. Ну это так, совет чисто для удобства))
2.
Код:
IdHTTP1.Post('http://wap.odnoklassniki.ru/dk?st_id=login&tkn=7844',PostData);
ссылку, куда посылать POST-запрос нужно парсить с предыдущей страницы.
т.е. сначала делаем Get-запрос:
Код:
StrPage:=IdHTTP1.Get('http://wap.odnoklassniki.ru/');
затем парсим StrPage и ищем ссылку вида http://wap.odnoklassniki.ru/dk?st_id=login&tkn=7844, где число в конце меняется каждый раз (именно поэтому и надо парсить).
Затем заголовки делаю такие:
Код:
IdHTTP1.Request.UserAgent:='Opera/9.80 (Windows NT 5.1; U; ru) Presto/2.2.15 Version/10.00';
       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.ContentType: application/x-www-form-urlencoded;
Ну и POST-запрос после этого уже делаешь.

HandleRedirects включен
CookieManager подключен
Всё работает
 
Ответить с цитированием
Ответ



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Непонятная проблема с интернетом по всей локалке ZneP Администрирование 6 19.06.2009 15:27
Проблема с cd-dvd приводом SashaIV Windows 18 17.06.2009 01:42
проблема с юникодом amorphius PHP, PERL, MySQL, JavaScript 3 05.05.2009 23:00
Проблема отключения служб!!! Snap Безопасность 3 10.02.2009 15:12
Проблема со сплойтом для вхзлома ipb 2.0.0 Taylorith Форумы 8 18.02.2007 20:06



Здесь присутствуют: 1 (пользователей: 0 , гостей: 1)
 


Быстрый переход




ANTICHAT.XYZ