Специалисты из Калифорнийского университета в Риверсайде и Научно-исследовательской лаборатории армии США обнаружили в имплементации Transmission Control Protocol (TCP) в системах Linux опасную уязвимость.

Об этом сообщает интернет-издание “Хакер”.

Речь идет лишь о системах, выпущенных после 2012 года (Linux kernel 3.6 и выше). Обнаруженная проблема получила идентификатор CVE-2016-5696. Данный баг позволяет атакующему без особых проблем внедряться в чужой трафик в том случае, если он не зашифрован. Кроме того, атакующий может принудительно разрывать соединения HTTPS и Tor. Корень проблемы был обнаружен в RFC 5961 – стандарте, созданном в 2010 году и призванном сделать TCP более устойчивым в случае спуфинговых атак. Отмечается, что RFC 5961 почти не нашлось применения в Windows, FreeBSD и macOS, однако в 2012 году его добавили в ядро Linux.

Исследователи продемонстрировали proof-of-concept эксплоит, помогающий определить, сообщаются ли два два хоста друг с другом через TCP, и совершить атаку.

tcp flaw in linux servers allows web traffic hijacking 507182 3

Когда пакеты с данными передаются между хостами, их идентификация осуществляется посредством уникальной последовательности чисел. В связи с тем, что возможных комбинаций насчитывается около 4 млрд, предсказать что ассоциируется с конкретным соединением, казалось бы, слишком сложно. Впрочем, баг CVE-2016-5696 позволяет вычислить такую уникальную последовательность за 10 секунд. Для этого атакующему достаточно лишь знать IP-адреса обеих сторон, связывающихся друг с другом посредством TCP. В случае такой атаки, злоумышленнику даже не потребуется внедряться в соединение, ему достаточно знать IP-адреса обеих сторон и направлять им правильные пакеты, что позволит скомпрометировать легитимный обмен. Благодаря этой проблеме можно отслеживать активность пользователей и внедрять в незащищенное соединение посторонние данные.

“Как мы продемонстрировали, уникальным отличием данной атаки являются очень низкие требования, необходимые для ее реализации. По сути, атаку может осуществить кто угодно, главное, чтобы в сети можно было реализовать спуфинг IP-адресов. Единственное, что необходимо знать: пару IP-адресов (клиента жертвы и сервера), заполучить которые совсем нетрудно”, – поясняют исследователи.

Кроме того, исследователи представили видео, которое демонстрирует данную атаку. В экспериментальных целях исследователи внедряют фишинговую форму на сайт USA Today. Они пояснили, что в среднем на атаку у них уходило 40-60 секунд, а вероятность успеха составляла до 97 %.

По словам исследователей, несмотря на то, что HTTPS-соединения защищены от инъекций посторонних данных, используя CVE-2016-5696 можно спровоцировать обрыв защищенных соединений. В частности, разорвать Secure Shell (SSH) соединения исследователи попробовали и для пользователей Tor.

ЧИТАЙТЕ ТАКЖЕ: В США презентовали технику перехвата нажатий клавиш на беспроводных клавиатурах

“В сущности, мы убеждены, что DoS атака против Tor-соединений может пагубно сказаться как на доступности сервиса, так и на приватности, которую тот гарантирует своим пользователям”, — отмечают они.

Tor устроен таким образом, что после обрыва соединения между двумя узлами сети (к примеру, между промежуточным узлом и выходным узлом), в следующий раз промежуточный узел выберет другой выходной узел для установки соединения. Специалисты считают, что если производить обрывы связи намеренно, вынуждая жертву каждый раз подключаться к новым узлам сети, в конечном счете, ее можно вынудить подключиться к определенному выходному узлу, что несет угрозу анонимности и приватности.

Как отмечает издание, исследователи провели испытание: проверили 40 узлов Tor в различных странах. Стало известно, что 16 из них отразили атаки, но 88,8% поддались и разорвали соединение. В среднем на каждую атаку было затрачено 51,1 секунды.

Нейтрализовать баг CVE-2016-5696 системные администраторы и пользователи могут самостоятельно. Для этого требуется отредактировать /etc/sysctl.conf, добавив в него строку:

net.ipv4.tcp_challenge_ack_limit = 999999999

После это необходимо выполнить команду sysctl –p для обновления конфигурации.

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

Напомним, ранее компания Exodus предложила 500 тыс. долларов вознаграждения за выявление уязвимых мест.

Также сообщалось, что хакерам удалось настроить систему обновлений против ОС Windows.