Обнаружена уязвимость, позволяющая совершить MITM-атаку

Обнаружена уязвимость, позволяющая совершить MITM-атаку

Обнаружена уязвимость, позволяющая совершить MITM-атаку

Опубликована информация об уязвимости под кодовым названием Httpoxy, которая охватывает достаточно большой пласт http-серверов, но может применяться для ограниченного набора серверных web-приложений, осуществляющих обращение к внешним Web API.

Уязвимость вызвана дублированием назначения переменной окружения HTTP_PROXY, которая может быть выставлена как для определения системных настроек прокси-сервера, так и на основе трансляции переданного клиентом HTTP-заголовка "Proxy:" в соответствии с требованиями RFC 3875.

Создание системной переменной окружения HTTP_PROXY является достаточно простым способ для организации работы http-клиентов через прокси. Суть проблемы в том, что существует пласт полагающихся на переменную окружения HTTP_PROXY библиотек, которые могут использоваться в работающих на стороне сервера web-приложениях для обращения к внешним ресурсам, например, для отправки запросов к различным Web API, загрузки файлов или выполнения проверок (проверка наличия введённого URL, обращение к внешним службам аутентификации и т.п.). В случае передачи HTTP-заголовка "Proxy:" http-сервер также создаст переменную окружения HTTP_PROXY, но уже на основании данных пользователя, что позволяет направить все сетевые запросы уязвимого web-приложения через определённый прокси-сервер, передает opennet.ru.

Предположим, что имеется CGI-скрипт, отправляющий запрос к внешнему Web API для проверки параметров аутентификации клиента и использующий для отправки этого запроса библиотеку, распознающую переменную окружения HTTP_PROXY. Обращение к этому скрипту с подставным HTTP-заголовком "Proxy:" приведёт к установке переменной окружения HTTP_PROXY и запрос будет сделан не на прямую, а через IP, указанный атакующим через заголовок "Proxy:". Направив таким способом скрипт на фиктивный обработчик API, атакующий может симулировать успешную проверку или подсмотреть приватные данные, отправляемые в составе внутреннего запроса к API.

Проблема касается только web-приложений, выполняющих внешние запросы и использующих для отправки запроса проблемные HTTP-клиенты. Например, уязвимость проявляется в программах на PHP (php-fpm, mod_php - CVE-2016-5385), использующих библиотеки Guzzle 4+и Artax, в CGI-скриптах на Python (wsgiref.handlers.CGIHandler, twisted.web.twcgi.CGIScript - CVE-2016-1000110), использующих библиотекуRequests, в Apache Tomcat (CVE-2016-5388) и в программах на языке Go (net, http, cgi - CVE-2016-5386), применяющих модуль net/http. В Curl и Perl (libwww-perl) проблема была устранена ещё в 2001 году. В Ruby аналогичная уязвимость в Net::HTTP была исправлена в 2012 году.

Наиболее простым способом устранения уязвимости является блокирование обработки HTTP-заголовка Proxy на стороне http-сервера. Например, в Apache httpd достаточно воспользоваться модулем mod_headers.so и добавить директиву "RequestHeader unset Proxy early", а вnginx принудительно очистить переменную HTTP_PROXY директивой "fastcgi_param HTTP_PROXY ''". 

Создана квантовая линия связи, передающая ключи на большие расстояния

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

Результаты исследования группа под руководством профессора Научно-технологического университета Китая в Хэфэе Паня Цзяньвэя опубликовала в журнале Science.

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

Использование такой схемы позволило увеличить соотношение сигнал/шум более чем в 1500 раз по сравнению с существующими подходами. В результате дальность передачи криптографических ключей удалось увеличить на три порядка — до сотен километров.

«Мы продемонстрировали возможность работы систем квантового распределения ключей на “междугородних” расстояниях. Это сокращает разрыв между экспериментальными разработками квантово-защищенных сетей и их практическим применением. Кроме распределения ключей, данный подход может использоваться для создания генераторов случайных чисел и проведения фундаментальных исследований в области квантовой механики», — отметили авторы работы.

В России, по данным на прошлый год, суммарная протяженность линий связи с использованием технологий квантовых коммуникаций уже превышала 7 тыс. км.

RSS: Новости на портале Anti-Malware.ru