Специалисты Университета Нью-Мексико обнаружили уязвимость, которая делает возможным для злоумышленников перехват VPN-соединений на устройствах *NIX. Баг также позволяет внедрять любые данные в TCP-потоки IPv4 и IPv6.
Разработчики ядра Linux обозначили уязвимость идентификатором CVE-2019-14899. «Уязвимость позволяет атакующему определить, подключена ли жертва к VPN, вычислить IP-адрес, присвоенный VPN-сервером, и установить факт активного соединения», — сказано в описании проблемы безопасности.
Выяснилось, что она затрагивает FreeBSD, OpenBSD, macOS, iOS и Android. На данный момент список затронутых уязвимостью систем выглядит так: Ubuntu 19.10 (systemd) Fedora (systemd) Debian 10.2 (systemd) Arch 2019.05 (systemd) Manjaro 18.1.1 (systemd) Devuan (sysV init) MX Linux 19 (Mepis+antiX) Void Linux (runit) Slackware 14.2 (rc.d) Deepin (rc.d) FreeBSD (rc.d) OpenBSD (rc.d)
См. также: «Как в линуксе подключиться к корпоративному VPN с помощью openconnect и vpn-slice»
Исследователи сообщили, что они смогли получить номера seq и ack путем подсчета зашифрованных пакетов и последующего изучения их размера. Этот эксперимент сделал возможным внедрение данных в TCP-поток и перехват самого соединения.
Отмечается, что уязвимость распространяется на все дистрибутивы Linux, которые работают с версией systemd, выпущенной после 28 ноября 2018 года.
См. также: «Большая часть суперкомпьютеров работают под управлением Linux — обсуждаем ситуацию»
«Злоумышленник может внедрить пакеты только путем атаки на соединение, когда оно не защищено (например, при настройке коммерческого провайдера VPN, когда соединение «выходит» из VPN-сервера и направляется к месту назначения в глобальной сети)», — утверждает Ноэль Кунце, консультант по ИТ-безопасности из Германии.
Однако, как выяснилось, включение фильтрации обратного пути созданием файла /etc/sysctl.d/51-rpfilter.conf с содержимым «net.ipv4.conf.all.rp_filter = 1», фильтрация маршрутных объявлений, а также использование зашифрованного размера пакета и синхронизации могут помочь в решении этой проблемы.
Комментарии (9)
iig
08.12.2019 18:15+1Я так понял, нужно какие-то правила в iptables добавлять… Если у злоумышленника есть права root на Linux системе, уже все плохо с безопасностью.
И про Kali Linux непонятно — эта система подвержена этой уязвимости, не подвержена, или это для самоцитирования?ZekaVasch
08.12.2019 23:55+7Про кали добавлено потому как так учат журналистов. В любую новость надо дописать "ранее мы писали что". И любая новость на "близкую" тему.
vp7
08.12.2019 18:33+2Почитал описание на опеннете,… а слабО было оттуда брать описание, а не этот коротыш писать? ;))
Уязвимость совсем "тепличная" — src ip/port установленной сессии выявляется перебором, seqNo также перебором ловится (там надо попасть всего-то в "плывущее" 32bit окно при том, что размер окна может быть всего 1kb, а изначальное значение — рандомизировано).
А самое главное — в туннеле не должно ходить что-либо кроме атакуемого соединения. Соединение тоже, кстати, должно быть максимально пассивным.
Ну и вишенкой на торте — атака построена на том, что админ накосячил и разрешил принимать через WAN интерфейс пакеты, которые должны приходить только через LAN.
justhabrauser
08.12.2019 21:10+11Я так понял, что если план по буквам за день не выполнен, то надо брать любое CVE-* и писать статью "Всё пропало!"
ggreminder
08.12.2019 23:13+4Мне кажется, кто-то просто забывает (ну или не задумывается), что Хабр это всё-таки не портал «всё обо всём» и тут, неожиданно, случаются люди, которые вполне разбираются в теме новости, особенно если новость из мира IT.
Metotron0
Из новости на опеннете лично я понял, что на сетевой интерфейс нужно прислать пакет, предназначенный для адреса этого хоста внутри VPN. Они смогли ещё и узнать этот адрес?
Какую роль в новости играет упоминание Kali?
withkittens
McHummer1
Похоже автор зарабатывает на жизнь написанием дипломных работ)))
YourChief
И адрес, и TCP-порты, и номера последовательностей TCP выясняются методом проб.