Модераторы: Snowy, bartram, MetalFan, bems, Poseidon, Riply
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Перехват функции SSL 
:(
    Опции темы
lollollollol
Дата 23.4.2013, 16:26 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Здравствуйте, выполняю перехват функции send в моём приложении.
В программе есть компонент WebBrowser. 
При переходе на сайты http перехват работает идеально, а вот при попытке поймать данные отправляемые на https получаю крякозябры.
Верояно причина в ssl шифровании данных. 
Я хочу перехватить функцию шифрования данныых, с целью получения не зашифрованной информации которую отправляет программа.

Помогите разобраться, какую функцию следует перехватывать?
PM MAIL   Вверх
lollollollol
Дата 23.4.2013, 21:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Попытался изучить synapsовский ssl_openssl, и как я понял там используется SSL_write из libssl.dll, но это не то.

А как можно отловаить/узнать список вызываемых api функций в конкретный момент работы программы? 
PM MAIL   Вверх
Чучмек
Дата 23.4.2013, 21:45 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


НЭТ БИЛЭТ
**


Профиль
Группа: Участник
Сообщений: 841
Регистрация: 11.5.2008
Где: СССР

Репутация: 7
Всего: 41



Цитата(lollollollol @  23.4.2013,  21:02 Найти цитируемый пост)
А как можно отловаить/узнать список вызываемых api функций в конкретный момент работы программы?  

Перехватить все используемые программой функции.

Добавлено через 1 минуту и 35 секунд
Или используй отладчик.


--------------------
умную мысль держи при себе, а дурной - поделись с другими 
PM MAIL   Вверх
lollollollol
Дата 24.4.2013, 04:03 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Цитата

Или используй отладчик.

Ну я так тоже пдумал, в OllyDbg есть окно со стеком вызовов, но при переходе на https ничего кроме создания потоков и разрушения потока не ловится (как и при переходе на http)
Код

New thread 52. (ID 00000D54) created
New thread 53. (ID 000017C3) created
Thread 52. (ID 00000D54) terminated, exit code 0
Thread 53. (ID 000017C8) terminated, exit code 0


Хотя при выполнении других операций видно что OllyDbg показывает какие функции вызываются.

Такое впечатление что ssl шифрование выполняется глубже. 
Вообще моя задача получить httpS данные отправляемые на сервер до того как они будут зашифрованы в по ssl, подскажите в какую сторону копать



Это сообщение отредактировал(а) lollollollol - 24.4.2013, 04:06
PM MAIL   Вверх
lollollollol
Дата 25.4.2013, 04:11 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



А если отловить коннект на 443 порт и перенаправить трафик на мой прокси (127.0.0.1:port) он будет шифроваться?
PM MAIL   Вверх
Illusion Dolphin
Дата 25.4.2013, 09:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1198
Регистрация: 3.5.2003

Репутация: 4
Всего: 63



Цитата

А если отловить коннект на 443 порт и перенаправить трафик на мой прокси (127.0.0.1:port) он будет шифроваться? 

Да, при этом вы можете эмулировать работу прокси-сервера, при этом это будет выглядеть как атака типа man-in-the-middle на ssl соединение. Но переххват данных через сплайсинг, я думаю, будет проще. 


--------------------
В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен.
Шифрование и организация фотографий - Photo Database 4.5
PM MAIL WWW ICQ   Вверх
lollollollol
Дата 25.4.2013, 09:39 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Эх, а ведь мне нужно только получить трафик который отправляется, не нужно ничего изменять в нём, и даже не нужен ответ.
А какие функции осуществляют шифрование? Я не смог понять/найти этой информации. 

Ведь если я правильно понимаю я могу перехватить функцию шифрования, прочитать данные и всё, никаких проблем.
Помогите разобраться с вопросом

Добавлено через 14 минут и 14 секунд
А как это делает http analyzer например?
PM MAIL   Вверх
Illusion Dolphin
Дата 25.4.2013, 13:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1198
Регистрация: 3.5.2003

Репутация: 4
Всего: 63



Цитата

А как это делает http analyzer например? 

Тут я не в курсе как оно там работает, но fiddler делал так для мониторинга траффика.

Цитата

А какие функции осуществляют шифрование

Я думаю что тут это может быть зависимо от программы. Если оно использует libssl.dll, то тогда надо происследовать, что из неё вызывается, возможно доки по ней глянуть будет очень кстати на первом этапе. Посмотрите таблицу экспорта в этой библиотеке, поставьте хуки на нужные функции. Только не забудьте что эта библиотека грузится скорее всего динамически и при перехвате надо ловить момент подгрузки библиотеки и поиска в ней функций для подмены.



--------------------
В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен.
Шифрование и организация фотографий - Photo Database 4.5
PM MAIL WWW ICQ   Вверх
lollollollol
Дата 25.4.2013, 13:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Как ни странно ниодной dll где встречается ssl приложение не использует. Я читал про эти длл.
Вот попробуй на форму кинуть веббраузер, и сделать navigate на https://mail.ru например. 

Потом ollydbg использую чтобы смотреть дллки испоьзуемые, ничего такого нет.

PM MAIL   Вверх
Illusion Dolphin
Дата 25.4.2013, 15:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1198
Регистрация: 3.5.2003

Репутация: 4
Всего: 63



Цитата

 на форму кинуть веббраузер

В таком случае используется IE который установлен в системе, а он использует свои длл, а не libssl.dll


--------------------
В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен.
Шифрование и организация фотографий - Photo Database 4.5
PM MAIL WWW ICQ   Вверх
lollollollol
Дата 25.4.2013, 15:27 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



я думаю он вообще без вызова функций из длл шифрует, иначе дебагер бы отловил их. А я думал это какой-то стандартной api делается.

Есть идеи как поймать трафик до шифрования?

Это сообщение отредактировал(а) lollollollol - 25.4.2013, 15:28
PM MAIL   Вверх
Illusion Dolphin
Дата 26.4.2013, 13:31 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Участник Клуба
Сообщений: 1198
Регистрация: 3.5.2003

Репутация: 4
Всего: 63



Цитата

я думаю он вообще без вызова функций из длл шифрует

Весь IE это по сути набор разных dll. Проблема в том что их имена и структура не является публичной и может меняться компанией. В данном случае наиболее общее решение - сделать прокси с атакой man-in-the-middle, но браузер при определённых настройках может отказаться отображать сайты по https т.к. бузопасность соединения будет отсутствовать. Можно пытаться лазить в глубины IE, но это исследовательская задача и я не думаю, что тут будет какое-то общее решение.


--------------------
В мире всего две бесконечности: вселенная и человеческая глупость... На счёт вселенной я не уверен.
Шифрование и организация фотографий - Photo Database 4.5
PM MAIL WWW ICQ   Вверх
lollollollol
Дата 26.4.2013, 16:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 287
Регистрация: 12.3.2013

Репутация: нет
Всего: нет



Скажу прямо, для самообразования хочу сделать некое подобие снифера, программа с веббраузером эт лишь как вариант, для тестов. Вообще требуется снифать в любом процессе. Прокси не очень удобно в этом случае. Очень много сниферов, например http analyzer и другие бз проблем это делают, не используя драйверов. Вопрос в том Как лучьше это реализовать? Безопасность соединения не должна страдать, как в случае с атакой man-in-the-middle.


http analyzer работает лишь при запущеном процессе-сервисе, вот бы за ним понаблюдать с помощью oledbg, но ведь он как системный сервис работает. Может кто знает как ssl трафик увидеть?

Это сообщение отредактировал(а) lollollollol - 26.4.2013, 16:15
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Delphi: WinAPI и системное программирование"
Snowybartram
MetalFanbems
PoseidonRrader
Riply

Запрещено:

1. Публиковать ссылки на вскрытые компоненты

2. Обсуждать взлом компонентов и делиться вскрытыми компонентами

  • Литературу по Delphi обсуждаем здесь
  • Действия модераторов можно обсудить здесь
  • С просьбами о написании курсовой, реферата и т.п. обращаться сюда
  • Вопросы по реализации алгоритмов рассматриваются здесь
  • 90% ответов на свои вопросы можно найти в DRKB (Delphi Russian Knowledge Base) - крупнейшем в рунете сборнике материалов по Дельфи
  • 99% ответов по WinAPI можно найти в MSDN Library, оставшиеся 1% здесь

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, bartram, MetalFan, bems, Poseidon, Rrader, Riply.

 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Delphi: WinAPI и системное программирование | Следующая тема »


 




[ Время генерации скрипта: 0.0910 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.