Реальная безопасность службы Cloudflare «Доступ»

Cloudflare Access - новая привлекательная функция от Cloudflare, более или менее основанная на Google BeyondCorp (обратный прокси-сервер с логином, который должен заменить VPN при доступе к внутренним сетевым приложениям).

Меня беспокоит, насколько безопасна их реализация.

Идея BeyondCorp заключается в том, что сервер должен находиться на «краю» сети, когда защищенный сервер приложений не имеет общедоступных IP-адресов и к нему нельзя получить доступ напрямую из Интернет.

В случае реализации Cloudflare - сервер приложений должен иметь общедоступный IP-адрес (как и остальные их службы CDN), и он «скрыт» их собственными IP-адресами.

Скрытый IP-адрес может быть обнаружен по ошибке (даже с помощью некоторого JavaScript) или обнаружен другими методами. И даже если в ваших приложениях есть брандмауэр, который ограничивает трафик только с IP-адресов Cloudflare, эти IP-адреса можно подделать.

Я что-то упускаю?

Надеюсь, кто-нибудь из Cloudflare решит эти проблемы.

Спасибо

1
задан 28 April 2018 в 00:27
2 ответа

Лучший способ решить эту проблему - использовать Cloudflare Argo Tunnel для подключения вашего сервера к Cloudflare. С помощью Argo Tunnel ваш сервер подключается к Cloudflare, а не Cloudflare к вашему серверу. Следовательно, вашему серверу не обязательно иметь общедоступный IP-адрес или быть доступным в Интернет - ему нужно только иметь возможность устанавливать исходящие соединения.

Если Argo Tunnel не работает для вас, другой вариант - чтобы настроить сервер так, чтобы он принимал соединения только от Cloudflare. Вы можете сделать это, настроив брандмауэр для приема подключений только с IP-адресов Cloudflare , или включив Authenticated Origin Pulls , а затем настроив сервер так, чтобы соединения HTTPS были аутентифицированы с помощью сертификата клиента Cloudflare. . ПРЕДУПРЕЖДЕНИЕ: В любом из этих решений, не связанных с Argo-Tunnel, важно, чтобы ваш сервер принимал только HTTP-запросы, в которых заголовок Host включает ваш домен. В противном случае злоумышленник может зарегистрировать свою учетную запись Cloudflare и ввести ваш IP-адрес в свои настройки DNS, что приведет к тому, что запросы будут поступать на ваш сервер «из Cloudflare», но у них будет домен злоумышленника на хосте заголовок. Чтобы проверить заголовок Host , вы можете, например, настроить nginx в качестве обратного прокси-сервера перед своим сервером и настроить его с помощью default_server , который всегда return 404. Если вы используете Argo Tunnel, то вам не нужно беспокоиться о заголовке Host .

3
ответ дан 3 December 2019 в 17:34

Не забудьте проверить веб-токен json в заголовке запросов в ДОПОЛНЕНИИ для внесения в белый список исходных IP-адресов cloudflare, если вы выберете этот вариант. Простое включение белого списка не гарантирует безопасность, поскольку другие пользователи cloudflare могут использовать веб-воркер cloudflare для доступа к вашей открытой точке в случае, если они каким-то образом получат информацию о ваших исходных IP-адресах.

1
ответ дан 3 December 2019 в 17:34

Теги

Похожие вопросы