Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Delphi: Сети > SSL вход на сайт с помощью idhttp1.get


Автор: illia 7.11.2009, 17:13
Создал форму добавил на нее TIdSSLIOHandlerSocketOpenSSL, TIdCookieManager, TIdHTTP.

Подключил к TIdHTTP - TIdSSLIOHandlerSocketOpenSSL и  TIdCookieManager.

Пытаюсь войти на login.live.com  и вижу что программа передает в открытом виде логин и пароль.


Код

procedure TForm1.Button1Click(Sender: TObject);
const
URL = 'http://login.live.com/u?ver=4.2.2&httpstatus=200&clid=14002&yasoft=barff&ui=';
var
Request : String;
begin
idhttp1.Request.UserAgent := ('Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.9.1.4) Gecko/20091016 Firefox/3.5.4 (.NET CLR 3.5.30729) YB/4.2.2');
Request := edit1.Text + '&r1=' + edit2.Text + '&url=https%3A%2F%2Flogin.live.com%2Fppsecure%2Fpost.srf%3Fbk%3D1257599389&show=1&post=0&referer=http%3A%2F%2Flogin.live.com';
idhttp1.Get (URL+Request);
end;


как получить серт, а затем отправить уже в нужном формате логин и пасс?

Автор: MetalFan 9.11.2009, 15:43
не понял... заходишь на http, а ждешь какой-то защиты...
или я что-то не понял)

Автор: morpheyushka 9.11.2009, 17:06
Может нужно константу URL вот так переопределить:
Код

URL = 'https://login.live.com/u?ver=4.2.2&httpstatus=200&clid=14002&yasoft=barff&ui=';

Автор: illia 10.11.2009, 01:36
Цитата(MetalFan @ 9.11.2009,  15:43)
не понял... заходишь на http, а ждешь какой-то защиты...
или я что-то не понял)

Да вроде там без разницы http или https, передается одинаковая информация. Я пробовал по разному.

Там вообще интересно form method="POST", а в снифере смотрю не передается не одного пост запроса при входе через браузер. И кому верить?

Автор: morpheyushka 10.11.2009, 10:55
Цитата(illia @  10.11.2009,  01:36 Найти цитируемый пост)
Да вроде там без разницы http или https

Ты только никому этого не говори smile

Добавлено через 2 минуты и 40 секунд
Цитата(illia @  10.11.2009,  01:36 Найти цитируемый пост)
И кому верить? 

Никому...Знаешь анекдот: "Мужик сидит на берегу речки - трусы стирает и говорит: никому верить нельзя, даже своей ж..пе, только ж пернуть хотел."

Добавлено через 4 минуты и 42 секунды
А теперь по теме...если там нужен SSL, значит используй https, если нужно отправлять методом POST - то им и отправляй, а не GETом. Ты в обще, сам пробовал сделать как тебе советуют?

Автор: illia 10.11.2009, 19:15
Цитата(morpheyushka @ 10.11.2009,  10:55)
Цитата(illia @  10.11.2009,  01:36 Найти цитируемый пост)
Да вроде там без разницы http или https

Ты только никому этого не говори smile

Добавлено @ 10:57
Цитата(illia @  10.11.2009,  01:36 Найти цитируемый пост)
И кому верить? 

Никому...Знаешь анекдот: "Мужик сидит на берегу речки - трусы стирает и говорит: никому верить нельзя, даже своей ж..пе, только ж пернуть хотел."

Добавлено @ 10:59
А теперь по теме...если там нужен SSL, значит используй https, если нужно отправлять методом POST - то им и отправляй, а не GETом. Ты в обще, сам пробовал сделать как тебе советуют?

Да вроде разобрался, там вроде post. Только после моего поста в ответ получаю страницу с ошибкой ввода данных. Через браузер такую ошибку можно получить если почистить кукисы перед входом.

Скорее всего проблема в CookieManager она меня и запутала. Не подскажите пример получения и передачи кукисов. 

Автор: MetalFan 12.11.2009, 10:10
1. http://forum.vingrad.ru/index.php?showtopic=203212
2. пользоваться нормальным бесплатным сниффером с поддержкой отслеживания ssl соединений: http://www.fiddler2.com/fiddler2/
3. Использовать подходящие под конкретную версию инди библиотеки OpenSSL

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)