У меня есть приложение ядра приложений (стандартная среда), работающее в личном домене с сертификатом SSL. Я пытаюсь убедиться, что он защищен от атаки ЗВЕРЯ.
Сканирование SSLyze показывает, что мое приложение принимает 112 бит DES-CBC3-SHA как шифр TLS.
Есть ли способ обновить конфигурацию конечной точки TLS, чтобы разрешить только TLSv1.2 с более надежными шифрами (например, более длинные ключи, Диффи-Хеллмана и т. Д.)?
Или есть другой способ защитить мое приложение движка приложения от атаки BEAST?
Основная проблема с атакой BEAST проистекает из того, что векторы инициализации легко предсказуемо с TLS 1.0 и ниже. Чтобы эффективно смягчить это, клиент и сервер должны согласиться использовать TLS 1.1 или 1.2. Архитектура Google уже некоторое время поддерживает TLS 1.2. Оставшаяся проблема заключалась в том, что клиенты также должны обновить свои системы для поддержки версии 1.2. Как заявил @Michael Hampton, в этом сценарии наиболее эффективным способом смягчения последствий BEAST является обновление клиентов, поскольку Google уже предлагает TLS 1.2.
Другой вариант - серверы ограничивают допустимые TLS-соединения до> 1.0. Это может сработать, но имеет обратную сторону, потенциально исключающую значительную часть населения на стороне клиента. В текущей архитектуре App Engine нет способа ограничить поддержку TLS> 1.0 для конкретного приложения. Если вы хотите, чтобы эта функция была реализована для App Engine в ситуациях, когда безопасность критически важна, отправьте запрос функции на Общедоступный трекер проблем Google App Engine и разместите ссылку на него здесь, чтобы другие также могли его поддержать.
Между тем, если безопасность абсолютно критична, вы можете создать собственный интерфейс приложения с экземплярами Compute Engine (с общедоступными IP-адресами) и заставить их принудительно согласовывать TLS> 1.0. Это возможно, хотя это потребует повторной реализации значительной части существующей архитектуры App Engine, а именно конечной точки TLS и балансировщика нагрузки. Это также рискует снизить производительность в зависимости от трафика вашего приложения и вашей реализации.
Если безопасность высшего уровня не является абсолютной, лучше всего будет сообщать пользователям об уязвимостях безопасности, если вы обнаружите, что они используют системы, известные тем, что не поддерживают TLS> 1.0. Помимо приложений, безопасность по сети в целом лучше повышается с глобальным движением к более безопасным протоколам, чем с эксклюзивностью.