Я только что понял, что атаки типа «человек посередине» SSL встречаются гораздо чаще, чем я думал, особенно в корпоративных средах. Я слышал и видел несколько предприятий, которые имеют прозрачный прокси-сервер SSL. Все клиенты настроены на доверие к сертификату этого прокси. Это в основном означает, что работодатель теоретически может перехватывать даже зашифрованный трафик SSL без каких-либо предупреждений в браузере. Как упомянуто выше, клиенты идут с доверенным сертификатом. Это может быть выявлено только путем ручной проверки используемого сертификата.
Мне кажется, что работодатель использует свое превосходящее положение, чтобы шпионить за SSL-трафиком сотрудника. Для меня это делает всю концепцию SSL ненадежной. Я успешно протестировал подобную настройку, используя mitmproxy, и смог прочитать связь между клиентом и моим сервером электронного банкинга. Это информация, которая никому не должна раскрываться.
Таким образом, мой вопрос довольно прост: как я могу проверить цепочку доверия на стороне сервера? Я хочу убедиться, что клиент использует сертификат моего сервера и только одну цепочку доверия. Интересно, может ли это быть достигнуто конфигурацией SSL Apache? Это было бы удобно, так как его можно легко применить ко многим приложениям. Если это невозможно, кто-нибудь знает способ сделать это на PHP? Или у вас есть другие предложения?