
Прозрачный прокси-сервер man-in-the-middle с поддержкой STARTTLS
starttls-mitm — это mitm-прокси, который прозрачно проксирует и сохраняет как обычный (plaintext), так и TLS-трафик. Он использует предоставленные пользователем файл ключа и файл сертификата для подмены удалённых серверов. Пользователь должен явно указать устройству, за которым ведётся перехват (man-in-the-middle), чтобы оно доверяло этому центру сертификации — так что это не нарушение безопасности.
Прокси начинает работу, ретранслируя трафик в открытом виде, просматривая каждый пакет в поисках заголовка ClientHello, после чего переводит сокеты на TLS. Это делает его подходящим для проксирования протоколов, использующих STARTTLS (рукопожатие в открытом виде + переход на SSL). Пока он тестировался только на XMPP, но теоретически должен работать и с IMAP, и с другими протоколами.