Баг в реализации TCP в Linux позволяет перехватывать трафик
Новости Безопасность
Серьезная уязвимость в реализации TCP в системах Linux, выпущенных с 2012 года (версия 3.6 ядра Linux), открывает для хакеров возможность определить хост, использующий для коммуникации данный протокол, и перехватить передаваемый трафик, пишет Threatpost.
Исследователи из Университета Калифорнии в Риверсайде совместно с исследовательской лабораторией ВС США представили на симпозиуме USENIX Security Symposium свою работу под названием «Off-Path TCP Exploits: Global Rate Limit Considered Dangerous» («Эксплойт уязвимости TCP по «побочным каналам»: опасность ограничения АСК в TCP»), в которой объясняют природу уязвимости и способы ее устранения.
Патчи уязвимости разработаны для текущей версии ядра Linux, сообщил Цзи Юнь Киан (Zhiyun Qian), младший научный сотрудник в области компьютерных наук и консультант проекта. Соавторы отчета – Юи Цао (Yue Cao), Цзи Юнь Киян (Zhiyun Qian), Чон Чжи Ван (Zhongjie Wang), Тван Дао (Tuan Dao), Шрикант В. Кришнамурти (Srikanth V. Krishnamurthy) и Лиза М. Марвел (Lisa M. Marvel) — также работали над патчем для хостов клиента и сервера; решить проблему можно, существенно повысив номер ожидаемой последовательности (ACK), что усложняет эксплуатацию бреши.
Для эксплуатации уязвимости хакерам необязательно внедряться в поток трафика (то есть занимать позицию «человек посередине»), действий со стороны жертвы также не требуется.
«Уникальный аспект продемонстрированной нами атаки – чрезвычайно низкие требования к условиям, достаточным для эксплуатации, — заявил Киан. – Атаку может, по большому счету, провести любой человек – при условии, что его компьютер подключен к целевой сети, в которой возможен спуфинг IP-адресов. Единственное, что нужно в арсенале, — это пара IP-адресов (жертва-клиент и жертва-сервер) – а достать их вполне просто».
Уязвимая реализация TCP (CVE-2016-5696) используется в неизвестном количестве устройств под Linux, в том числе встроенных компьютерах, мобильных телефонах и других системах. Исследователи заявили, что на проведение атаки понадобится не более минуты; попытки эксплуатации завершились успехом в 88% — 97% случаев.
«В общем, уязвимость позволяет атакующему, использующему небольшой дефект в TCP («побочный канал»), выявить, какие их двух произвольных хостов сообщаются по TCP, — пишут исследователи. – Если такая связь обнаружена, хакер может выявить последовательность ACK в TCP, с обоих концов соединения; это, в свою очередь, дает хакеру возможность прервать соединение и внедрить произвольные данные в трафик».
Подобная атака может прервать или ухудшить передачу зашифрованного трафика (в том числе в сети Tor).
Исследовательская работа подвергает сомнению считавшиеся ранее справедливыми выводы о том, что хакер не сможет легко определить, сообщаются ли две точки сети по TCP путем перебора уникальных номеров последовательности, если только не займет позицию «человек посередине» — то есть, не может перехватывать или модифицировать трафик.
«Атака по побочным каналам» позволяет определить, используют ли атакуемые хосты TCP-соединение, а затем выяснить номера портов. Метод дает возможность выявить последовательность номеров TCP, а затем внедрить эксплойт или прервать передачу трафика.
«Мы хотим подчеркнуть, что подобная атака возможна по «побочным каналам», без использования MitM-позиции и заражения клиента или сервера вредоносным кодом, — пишут исследователи. – Это может иметь серьезные последствия для безопасности и приватности в масштабе всего Интернета».
По словам авторов исследования, проблема связана с низким лимитом АСК в Linux (100 в секунду), что делает возможным быстрый подбор номера сессии, передаваемого в пакете.
Если выразиться более простыми словами, хакер может послать на сервер SYN-пакет с поддельным IP-адресом на IP-адрес клиента, подставив предположительный номер сессии, и 100 SYN-пакетами со своего IP-адреса. Если он получает в ответ 99 АСК, значит, 1 ACK был успешно отправлен клиенту, и номер сессии угадан. Таким образом, можно относительно быстро подобрать четырехзначный номер сессии и выдать себя за клиента на уровне TCP, чтобы затем отправить от его имени данные на сервер или прервать сессию, отправив тот же SYN.
|
07.04.2019 19:42
Как увидеть скрытых друзей во «ВКонтакте»
Поскольку многие пользователи «ВКонтакте» искренне верят, что существует способ увидеть чужих скрытых друзей, Софтодром решил этот миф опровергнуть
29.11.2017 23:52
Как защитить файл или папку паролем в Windows
Что делать, если вы используете компьютер под управлением Windows и вдруг решили защитить какой-либо файл или папку паролем, чтобы посторонние не могли узнать, что у вас там находится
Ищете, где скачать бесплатные программы?
Скачать бесплатные программы для компьютера на Windows и смартфона на iOS или Android можно на Софтодроме. На данный момент в каталоге Софтодрома представлено более 13 000 бесплатных программ для Windows, iOS, Android и Linux.
|
|