Захват HTTP / S трафика для приложения, использующего libcurl

#c #windows #curl #libcurl #fiddler

#c #Windows #curl #libcurl #скрипач

Вопрос:

У меня есть приложение UWP, которое использует libcurl для выполнения HTTPS-вызовов на мой сервер, я пытаюсь просмотреть трафик с помощью fiddler.

Что я пробовал:

  • Определяю fiddler как обратный прокси, и я могу, по крайней мере, видеть трафик из Firefox.

  • Установка в ReverseProxyForPort разделе реестра обоих 80 и 443 .

  • Установка переменной окружения all_proxy в localhost:8888 (проверено, что она была частью среды приложения).

Я использую libcurl 7.61 с OpenSSL в качестве серверной части TLS, это версия из репозитория vcpkg.

Комментарии:

1. Весь смысл TLS в том, что трафик не поддается декодированию или перехвату.

2. Вы смотрели на это? acodersjourney.com/capture-cpp-libcurl-traffic-in-fiddler

3. @AshleyTharp да, но это означает, что я должен жестко закодировать это в приложении, я ищу что-то более универсальное (например, с другими приложениями, такими как браузеры или приложения, использующие WinInet, я могу просто настроить Fiddler для работы довольно плавно). Предопределенное может вызвать проблемы в общем случае (вариант использования без отладки).

4. @SamVarshavchik Но я говорю о сценарии разработки, в котором у меня есть доступ как к серверу, так и к клиенту. И сначала я хочу захватить его и просмотреть основную информацию (расшифровка — следующий шаг, опять же при условии, что у меня есть вся необходимая информация, а не попытки «взломать» TLS)

5. Не имеет значения. Если прокси-сервер не имеет сертификата сервера, основные законы физики нашей общей вселенной не позволят прокси-серверу расшифровывать трафик (при отсутствии изобретения квантовых компьютеров или недостатка в реализации TLS). Вы, конечно, можете захватывать весь зашифрованный трафик, который хотите, но это будет просто случайная тарабарщина.