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


Автор: stab 20.3.2004, 12:00
Надо перехватить cookie (возможно подменить), которые бросает сайт открытый в IE или, для простоты, в TWebBrowser. Незнаю что и делать, даже идей нет. Помогите кто чем может, пожалста.

Автор: p0s0l 21.3.2004, 15:45
Я в этом не спец, но т.к. никто из спецов не высказался, то у меня есть "идея" в кавычках:
надо юзать IdHTTP и IdHTTPServer, и настроить TWebBrowser или IE (хотя это делается через свойства подключения) так, чтобы он использовал IdHTTPServer как прокси-сервер, а тот в свою очередь через IdHTTP отправлял запросы далее куда надо. Ну а в заголовках запросов можно выцепить/изменить cookies-ы.

Автор: stab 22.3.2004, 12:36
А если сам ИЕ должен через прокси рабоатать? тогда как?

Автор: p0s0l 22.3.2004, 15:11
Неважно. Твой прокси будет общаться с тем проксей, с которым ИЕ должен был работать. А сам ИЕ будет с твоим проксей работать.

Автор: stab 22.3.2004, 20:47
Ясна. Может быть у кого-либо есть еще идеи?

Автор: <Spawn> 22.3.2004, 22:16
А как идет вообще их отправка? Может какие АПИ используются? Или как всегда все сводится к WinSock? Просто если знать АПИшки то их можно довольно просто подменить на свои прототипы и спокойно читать\менять кукие.

Автор: Cheba 22.3.2004, 22:48
<Spawn>, по-подробнее пожалуйста. Давно искаю инфу подобного содержания. Но что-то не очень получается sad.gif Так как не знаю с чего начинать. И дай чего-нить почитать в тему.

Автор: <Spawn> 23.3.2004, 05:08
если знаешь Си, то можешь почитать на rsdn.ru(поищи тему Перехват API), если не знаешь, то попозже смогу примерчик дать

Автор: stab 28.3.2004, 13:13
Цитата
Может какие АПИ используются?


ИЕ используется WinInet АПИ, а там куки автоматом обрабатываются, т.е. перехват функций ни чего не даст sad.gif Есть там четыри функции представляющие интерес:

InternetSetCookie
InternetSetCookieEx
InternetGetCookie
InternetGetCookieEx

но вызваются они только при установке куков с помощью ява-скриптов. Функции типа InternetOpenUrl, InternetReadFile автоматом прицепляют\получают куки и складируют их на винт.

Автор: p0s0l 28.3.2004, 14:02
А если send/sendto перехватывать ?

Автор: RA 28.3.2004, 14:20
cully а что если заставить браузер работать через прокси?
ну и через него фильтровать инфу.

Автор: stab 28.3.2004, 14:45
Цитата
А если send/sendto перехватывать ?

похоже это единственный вариант, но уж слишком низкоуровневый...

Цитата
cully а что если заставить браузер работать через прокси?

обсуждалось выше



идеальным вариантом было бы что-то вроде хука или уведомления о приеме\передаче куков, но похоже MS такой возможности не предусмотрела sad.gif

Автор: p0s0l 30.3.2004, 13:32
Попробуй из WinInet еще какие-нибудь функции поцеплять, например, InternetOpenUrl, HttpAddRequestHeaders, HttpSendRequest(Ex).
В параметре lpszHeaders у них можно узазать дополнительные заголовки, посылаемые в запросе, и если вписать строку типа "Cookie: UserName=p0s0l Password=Parol" и будет тебе кук.

Автор: RA 31.3.2004, 17:01
cully Если у тебя все получится с перехватом куков свисни мне wink.gif

Автор: p0s0l 31.3.2004, 19:15
Вообще, когда задал кто-то вопрос, а потом вдруг нашел ответ, надо об этом сообщать...

Автор: stab 31.3.2004, 19:37
пока что ни чего не получается...

Автор: Fantasist 31.3.2004, 22:32
Может это поможет:

http://www.sources.ru/cpp/cpp_ie_under_the_hood.shtml


Еще есть такая вещь как HTTPWatch (http://www.simtec.ltd.uk/). Это плагин к браузеру, но он каким-то образом умудряется мониторить все запросы. Возможно, конечно, тоже какой-нибудь прокси очень ловко инсталлирует, но не похоже. Может все-таки есть какие-то интерфейсы, позволяющие это осуществить. А может быть только как в выше приведенной ссылке - перехват API. Тормознутость, короче.

Автор: RA 31.3.2004, 23:02
Цитата(Fantasist @ 31.3.2004, 19:32)
Это плагин к браузеру, но он каким-то образом умудряется мониторить все запросы. Возможно, конечно, тоже какой-нибудь прокси очень ловко инсталлирует, но не похоже.

А Может он туннелирует запросы от браузера в свой прокси.


Кстати вспомнил что на sourceforge.net есть такая вещь как "owns".

Автор: stab 1.4.2004, 11:09
Цитата
Кстати вспомнил что на sourceforge.net есть такая вещь как "owns".


не могу найти...


Fantasist, сенкс, пригодится

Автор: RA 1.4.2004, 12:55
http://sourceforge.net/projects/owns/

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