+7 (800) 333-17-63

DDG-Connecting-Country: как безопасно определить страну пользователя

Заголовок HTTP-запроса позволяет получить больше информации о пользователе, запрашиваемом ресурс, в частности, его геолокацию. При этом важно, чтобы такой заголовок был защищен от подмены, что в случае использования стандартного заголовка X-Forwarded-For потенциально чревато спуфингом (подмена адреса, практика маскировки под конкретного пользователя или подключенное к сети устройство для хищения данных).

DDoS-Guard разработали два новых типа заголовков запроса для наших клиентов, которые являются безопасными. DDG-Connecting-Country помогает определить страну нахождения пользователя, возвращая ее ISO-код, а DDG-Connecting-IP позволяет идентифицировать IP-адрес клиента, который подключается к веб-серверу через HTTP-прокси или балансировщик нагрузки. Если ваше приложение опирается на георасположение клиента, то вы можете упростить и ускорить ваш код, получив данные напрямую из заголовка DDG-Connecting-Country.

Как это работает

  • При обработке HTTP-запроса, к нему добавляется заголовок (DDG-Connecting-IP) и значение IP-адреса. Аналогично и с заголовком DDG-Connecting-Country: IP сверяется с GeoIP базой данных сервера, который производит обработку сообщения и помещает ISO код страны в значение.
  • Если пользователь использует прокси-сервер, то DDG-Connecting-IP выдаст не реальный физический IP пользователя, а именно адрес, откуда пришел запрос. DDG-Connecting-Country может возвращать как реальный ISO код страны, где находится пользователь, так и местонахождение прокси-сервера (настраивается в личном кабинете клиента). В случае невозможности определить страну, в заголовке задается специальное значение XX.

 

Почему новый заголовок безопаснее

В настоящее время многие веб-разработчики используют стандартный заголовок X-Forwarded-For в качестве средства определения местонахождения пользователя, вдобавок этот заголовок может применяться, например, для предоставления повышенных привилегий или какой-либо дополнительной платной функциональности.

Однако на практике использование заголовка DDG-Connecting-IP более эффективно и безопасно, чем применение стандартного решения X-Forwarded-For, которое уязвимо для спуфинга.

Почему использование заголовка DDG-Connecting-IP предпочтительней? Дело в том, что при использовании заголовка X-Forwarded-For есть риск возврата фактически неверного IP-адреса, если их в списке несколько (например, если есть балансировщик нагрузки или прокси между платформой облачной доступности и вашими серверами), а веб-приложение сконфигурировано захватывать только первый адрес в списке.

Также пользователь может подменить адрес на произвольный при отправке запроса, в результате эта информация в лучшем случае будет бессмысленной, в худшем, таким образом пользователь сможет выдать себя за другого для получения несанкционированных привилегий.

Заголовок DDG-Connecting-IP, напротив, невозможно подменить, так как он генерируется каждый раз автоматически, и у пользователя нет возможности его отредактировать.


Наш опыт

Сервисами DDoS-GUARD по защите от кибератак пользуются сотни российских и зарубежных компаний. Технические специалисты DDoS-GUARD на постоянной основе мониторят новые типы информационных угроз, формируют и разрабатывают собственными силами технические решения по их предотвращению, а также поддерживают и улучшают существующие продукты компании. Уникальный многолетний опыт продуктивного взаимодействия с крупным бизнесом и государством позволяет DDoS-GUARD гарантировать своим клиентам безопасность, профессионализм и индивидуальное решение для каждой конкретной ситуации с учетом особенностей инфраструктуры и пожеланий со стороны заказчика.

Читайте в телеграм-канале DDoS-Guard

Анонсы, статьи, истории и советы по кибербезопасности. Каждый месяц собираем дайджест о самых громких событиях

Подписаться