2

У меня есть проприетарное приложение только для Windows, которое использует HTTPS для общения с (также проприетарным, недокументированным) веб-сервисом.

Чтобы в конечном итоге иметь возможность использовать функциональные возможности веб-службы на моих Linux-машинах, я хочу провести обратный инжиниринг API веб-службы, проанализировав запросы, отправленные приложением.

Теперь вопрос: как я могу расшифровать и записать трафик HTTPS?


Я знаю несколько решений, которые не применимы в моем случае:

  • Fiddler - это посредник HTTPS-посредника, который я не могу использовать, поскольку приложение не поддерживает прокси-серверы. Кроме того, я (пока) не знаю, работает ли он с самозаверяющими серверными сертификатами, в чем я сомневаюсь.
  • Wireshark может дешифровать потоки SSL, если у вас есть личный сертификат сервера, которого у меня нет.
  • любое расширение браузера, так как приложение не является браузером

Если я правильно помню, были некоторые трояны, которые собирают информацию онлайн-банкинга, подключая / заменяя крипто API окна. Так как машина моя, возможны изменения низкого уровня. Может быть, существует не-троянское (white-hat) приложение сетевого журнала, которое делает то же самое?

Существует презентация блэкхата с некоторыми подробностями, доступными для чтения. Они ссылаются на Microsoft Research Detours для простоты перехвата API. Смотрите пример подключения Detours.


Смежные вопросы:

4 ответа4

4

Если приложение поставляется со своей собственной статически связанной реализацией HTTPS, вы не сможете взломать что-либо так легко, поскольку сможете наблюдать только зашифрованный трафик. Человек в середине - ваш лучший выбор, но вам лучше молиться, чтобы приложение не проверяло сертификат.

О "не может использовать": обычно вам не нужно, чтобы приложение было "активировано посредником", чтобы смонтировать MITM-атаку. Весь смысл такой атаки заключается в том, что вы настраиваете сетевую среду таким образом, что ваш прокси-сервер занимает место, в котором приложение ожидает своего партнера. Так как вы контролируете окружающую среду, это должно быть довольно легко.

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

1

Как ни странно, именно этот день я был чтение глава руткитов Грег Хогланд, что упомянутые регистрации и дешифрования SSL с Ettercap.

0

ospy - это инструмент, специально созданный для обратного проектирования проприетарных коммуникаций приложений Windows с поддержкой SSL/HTTPS. Кажется, это самый простой инструмент для моей задачи. Найдено через список инструментов API мониторинга.

Существует также скрипт визуализации для анализа дампов на машине с Linux :)

Обновление: я пытался использовать ospy, но он работал только на одной виртуальной машине WindowsXP, а не на другой, которую я хотел использовать для тестирования. Ошибка известна и должна быть исправлена, но ospy кажется мертвым с 2009 года, и нет надежды, что ошибки будут исправлены. Я в принципе не мог использовать это вообще.

-1

Если вы загружаете SSLStrip, вы можете настроить переадресацию портов (например, HTTP-трафик с порта 80 на порт 10000, где полоса SSL берет его, расшифровывает и запускает), который будет расшифровывать зашифрованные пакеты SSL перед остальной частью вашей системы. получает их (как Ettercap).

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .