URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 108798
[ Назад ]

Исходное сообщение
"Уязвимость, позволяющая вклиниться в стороннее TCP-соединение"

Отправлено opennews , 11-Авг-16 10:24 
На конференции Usenix Security Symposium группа исследователей из Калифорнийского университета в Риверсайде и исследовательской лаборатории армии США обнародовали (https://ucrtoday.ucr.edu/39030) сведения о возможности совершения пассивных атак на TCP (http://www.cs.ucr.edu/~zhiyunq/pub/sec16_TCP_pure_offpath.pdf), позволяющих удалённо инициировать разрыв сетевого соединения или осуществить подстановку своих пакетов в TCP-поток к клиенту или серверу.


В отличие от MITM-атак, новый метод не требует контроля за коммуникациями - для атаки достаточно знать IP-адрес сервера, IP-адрес клиента и сетевой порт сервера. В рамках доклада был продемонстрирован рабочий пример атаки, в результате которой в запрошенную одним из пользователей web-страницу с известного новостного сайта была осуществлена подстановка стороннего блока данных.

Суть проблемы в недоработке механизмов ограничения интенсивности обработки ACK-пакетов, описанных в спецификации RFC 5961 (https://tools.ietf.org/html/rfc5961), что позволяет вычислить информацию о номере последовательности, идентифицирующей поток в TCP-соединении, и со стороны отправить подставные пакеты, которые будут обработаны как часть атакуемого TCP-соединения.


Представленный метод не специфичен для конкретных TCP-стеков и проявляется при наличии расширений ограничения интенсивности обработки пакетов (RFC 5961 (https://tools.ietf.org/html/rfc5961)), реализованных для борьбы с подбором номера последовательности TCP. Атакующий может создать "шумовую завесу" для обхода защиты от наводнения ACK-пакетами и применить типовые методы подбора номера последовательности.

Проблема уже подтверждена (https://bugzilla.redhat.com/show_bug.cgi?id=CVE-2016-5696) в Linux (CVE-2016-5696 (https://security-tracker.debian.org/tracker/CVE-2016-5696)) и проявляется c 2012 года в выпусках ядра Linux c 3.6 по 4.7. В качестве обходного метода защиты рекомендуется (https://github.com/torvalds/linux/commit/75ff39ccc1bd5d3c455...) увеличить лимит на число одновременно обрабатываемых ACK-пакетов, установив переменную  /proc/sys/net/ipv4/tcp_challenge_ack_limit в значение 1000 вместо ранее принятого по умолчанию 100.

URL: http://arstechnica.com/security/2016/08/linux-bug-leaves-usa.../
Новость: http://www.opennet.me/opennews/art.shtml?num=44945


Содержание

Сообщения в этом обсуждении
"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 10:24 
Проверил у себя...

@sidbox:~$ cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
1000


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено AS , 11-Авг-16 10:29 
Fedora21 -
[root@sef21 ~]# cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
100
[root@sef21 ~]#

Fedora24server -
[root@asterisk001 filter.d]# cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
1000
[root@asterisk001 filter.d]#

они знали !


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено eRIC , 11-Авг-16 10:50 
> Fedora24server -
> [root@asterisk001 filter.d]# cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
> 1000

1000 vs 999999999

1- Open /etc/sysctl.conf, append a command “net.ipv4.tcp_challenge_ack_limit = 999999999”.
2- Use “sysctl -p” to update the configuration.



"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 19:27 
В Linux Mint не пашет. Все-равно 100 определяет.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 00:42 
Ой! :)) Теперь так:
cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
999999999

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 21:25 
> Ой! :)) Теперь так:
> cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
> 999999999

Как ты думаешь, твоя система реально прожует 999 миллионов записей в очереди? Мысль налить тебе таких пакетов побольше, чтобы проверить это - тоже вариант атаки :)


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 23:47 
Ладно, уговорили. Оставил 1000. :)

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Нанобот , 11-Авг-16 10:33 
судя по последней ссылке, там не просто увеличение tcp_challenge_ack_limit со 100 до 1000, а ещё какие-то изменения в коде

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 22:29 
Да, я б даже сказал само собой или очевидно.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено parad , 13-Авг-16 04:13 
ну так в новости написано и про изменения в коде.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено t28 , 11-Авг-16 10:54 
> проявляется c 2012 года в выпусках ядра Linux c 3.6 по 4.7

Всё ясно.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 21:10 
>> проявляется c 2012 года в выпусках ядра Linux c 3.6 по 4.7
> Всё ясно.

Новость не читал, но Linux осуждаешь? Казалось бы, при чем тут RFC...


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Ващенаглухо , 11-Авг-16 11:10 
А в grsecurity давным давно есть фича Truly random TCP ISN.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Moomintroll , 11-Авг-16 11:28 
Напомнило дедушкины страшилки про Кевина Митника...

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 12:03 
root@www01:/# cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.1 LTS"
root@www01:/# cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
100

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено freehck , 11-Авг-16 12:08 
% cat /etc/debian_version
8.3
% cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
100

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено _KUL , 12-Авг-16 04:33 
Это'ж Вам не винда, что бы версию оси смотреть ... Нужно сразу ядро!

# apt-cache policy linux-image-4.6.0-1-amd64
linux-image-4.6.0-1-amd64:
  Установлен: 4.6.4-1
  Кандидат:   4.6.4-1
  Таблица версий:
*** 4.6.4-1 990
        990 http://ftp.debian.org/debian testing/main amd64 Packages
        100 /var/lib/dpkg/status
# cat /proc/sys/net/ipv4/tcp_challenge_ack_limit
100


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено freehck , 12-Авг-16 11:49 
> Это'ж Вам не винда, что бы версию оси смотреть ... Нужно сразу ядро!

Тогда уж "uname -a". А то мало ли какие ядра у вас там стоят в системе... :)

Но вернее всё же версию дистрибутива, поскольку речь идёт о его дефолтах. По версии дистра, к тому же, можно в некотором роде и о ядре. Вот например в Debian 8 сейчас 3.16.7.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено _KUL , 13-Авг-16 09:22 
Иногда на бизнес-критичных узлах, админы собирают ручками ядро, с тонкой настройкой под специальные драйвера или стевой стек, и жить такое ядро может отдельно от дистрибутива долгое время ... Но да, вы правы, для чистоты нужно было сделать сначала dpkg -l | linux-image и ll /boot

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено snmp agent , 15-Авг-16 17:36 
% cat /etc/debian_version
8.3

Обновляться? Зачем?


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 12:16 
# cat /etc/centos-release
CentOS Linux release 7.2.1511 (Core)

# uname -r
3.10.0-327.28.2.el7.x86_64

# cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
100


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено слакварявод , 11-Авг-16 12:18 
bash-4.3# cat /etc/slackware-version
Slackware 14.2
bash-4.3#  cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
1000

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено слакварявод , 11-Авг-16 12:22 
и довесок:
bash-4.3# uname -a
Linux 7-21a-226-o1182 4.7.0 #1 SMP PREEMPT Wed Jul 27 12:41:05 SAMT 2016 x86_64 Intel(R) Core(TM) i5-3330 CPU @ 3.00GHz GenuineIntel GNU/Linux


а вот на дефолтных серверах:
root@serslack:~# uname -a
Linux serslack 4.4.14 #2 SMP Fri Jun 24 13:38:27 CDT 2016 x86_64 Intel(R) Xeon(R) CPU E5-2609 0 @ 2.40GHz GenuineIntel GNU/Linux

root@serslack:~# cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
100

вот так что...


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено angra , 11-Авг-16 12:29 
Уязвимость конечно серьезная, но надо по дефолту исходить, что интернет не является безопасной средой передачи и tcp пакеты могут быть подменены или просто прочитаны сторонними лицами. Собственно ssh, https и прочая придуманы именно ради этого и на тех, кто их применяет, данная уязвимость не скажется.

P.S. даешь еще сотню сообщений о том, у кого какое значение в net.ipv4.tcp_challenge_ack_limit


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено aurved , 11-Авг-16 12:41 
А как насчет FreeBSD?

Пишут что вроде ни OSX, ни Windows, ни FreeBSD не подвержены этой уязвимости,
так как в них не реализован RFC 5961. Хотя в тоже время пишут что чувак разрабатывавший этот RFC -- Randal Stewart, is a FreeBSD source committer.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 12:43 
> чувак разрабатывавший этот RFC -- Randal Stewart, is a FreeBSD source committer

Красиво уделал конкурентов, те готовы кушать все эксперементы на собственной шкуре.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено aurved , 11-Авг-16 12:45 
))) ну все-таки линукс и фрюха не совсем конкуренты, линукс уже давно в другой весовой категории...



"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено parad , 13-Авг-16 04:20 
> ))) ну все-таки линукс и фрюха не совсем конкуренты, линукс уже давно
> в другой весовой категории...

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


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено zanswer , 11-Авг-16 13:54 
Мы с вами можем говорить о том, что FreeBSD имеет частичную поддержку: https://wiki.freebsd.org/TransportProtocols/tcp_rfc_compliance

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 14:02 
>  Randal Stewart, is a
> FreeBSD source committer.

Угу. Упоминание в каммитах 2010, поддержка мипсов в 2008,
а потом


Date:   Tue Dec 20 09:24:04 2005 +0000

    Add protocol number for SCTP.
    
    Submitted by:   Randall Stewart rrs at cisco.com


И все.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено rvs2016 , 24-Сен-16 19:15 
> А как насчет FreeBSD?
> Пишут что вроде ни OSX, ни Windows, ни FreeBSD не подвержены этой
> уязвимости

Да-да. Но интересует только FreeBSD. Остальные винды там всякие сидят у меня внутри локальной сети после своего шлюза, работающего на FreeBSD.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 13:42 
Ничоси бывает :)
Рандумность - не рандумна!

Еще можно подключить фургончик начиненный ФСБ'шниками и следить за генерацией случайности помех на клавиатуре жертв


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Ъ , 11-Авг-16 14:11 
> следить за генерацией случайности помех на клавиатуре жертв

Излучения то вовсе не случайные и вполне неплохо декодируются.

Compromising electromagnetic emanations of wired and wireless keyboards
http://lasecwww.epfl.ch/keyboard/

Оборудование для этого по сути доступно любому (при условии, что есть несколько десятков тысяч $ на него), а не только спецслужбам.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 13:51 
> и проявляется c 2012 года в выпусках ядра Linux c 3.6 по 4.7

Почему по? В 4.7 устранена же.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено pkdr , 11-Авг-16 14:34 
Вообще-то с "3.6 по 4.7" означает "больше, чем 3.6, меньше чем 4.7, но не включая их". Так что правильно, иначе там должно стоять слово "включительно".
Этому учат на уроках математики даже в школе.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Sluggard , 11-Авг-16 15:00 
Как раз включая 3.6, но не включая 4.7, математик.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено fx , 22-Авг-16 09:30 
"по 4.7" = "включая 4.7", гуманитарий. это "до" обычно не включая.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 14:40 
Linux (≥  3.6 || < 4.7)

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 14:41 
> Linux (≥  3.6 || < 4.7)

Спасибо капитан!


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Evolve32 , 11-Авг-16 16:48 
Капитан вообще-то прокапитанил
(≥  3.6 && < 4.7)

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 17:11 
Спасибо граммар-капитан я вас ждал, редактировать нельзя!

С любовью ваш искренний поклонник #22 #27


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено MPEG LA , 11-Авг-16 18:48 
ты снова попутал, он буль-капитан, а не граммар

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 19:35 
> Linux (≥  3.6 || < 4.7)

[3.6..4.7)
Или вообще
{x € Linuxversion| Linuxversion <: R, x >= 3.6,  x<4.7}
Как-то так.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено freehck , 12-Авг-16 11:58 
Евро. Евро, блин. :)

> {x € Linuxversion| Linuxversion <: R, x >= 3.6,  x<4.7}

s/€/∈/


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 14:48 
rhel6 подвержен, 5 - нет.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 11-Авг-16 15:17 
offtop: @gOldfisk и @rancidbacon открыли для мира анальные зонды, в прямом и переносном смысле

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединение"
Отправлено Аноним , 11-Авг-16 16:10 
> в выпусках ядра Linux c 3.6 по 4.7

Тогда почему RHEL 5 и 6 подвержены? Там ядра 2.6.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединение"
Отправлено Аноним , 11-Авг-16 19:54 
Бэкпортов много.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединение"
Отправлено angra , 12-Авг-16 00:32 
Во-первых, только RHEL6, но не RHEL5
Во-вторых, номер ядра у RHEL показывает только от какой версии был изначальный fork, но никак не из каких версий в нем бекпорты. Там в 2.6.32 могут быть фичи и драйверы хоть из 4.x.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено j3qq4 , 11-Авг-16 17:27 
интересно, уязвим ли ТОР за НАТ-ом...

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено h31 , 11-Авг-16 23:17 
Смотря где. Соединение между узлами Tor-сети - там должна быть защита от инъекции пакетов, так что по идее нет. Между exit node-ой и сервером - уязвимо, если не используешь TLS или другое шифрование.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединение"
Отправлено Анончик , 11-Авг-16 21:28 
# uname -r
4.7.0-gentoo

# cat  /proc/sys/net/ipv4/tcp_challenge_ack_limit
1000


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 19:17 
Сайт может сбрасывать суммы страницы браузеру через Тор.
2 соединения: Прямое и Через Тор - работают как одно.

Можно попытаться заменить Тор чем-то более лёгким и быстрым, да хотя бы VPN-switcher cо случайными из списка адресами.


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 19:23 
Суммы не совпадают - браузер не показывает пользователю сайт и временно блочит до решения пользователя: "Попробовать снова" "Уходим Отсюда" "Добавить в личный фаервол" "Добавить комментарий"

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 19:25 
Ну и разумеется: "Отправить Жалобу"

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 21:21 
> Можно попытаться заменить Тор чем-то более лёгким и быстрым, да хотя бы
> VPN-switcher cо случайными из списка адресами.

Это еще что за левый софт? Алсо, приватность VPN ниже, т.к. нет цепочки хостов, а справиться с dns leak и пр может не каждый. А главное толку мало: атакующие могут с тем же успехом атаковать траффик выходящий с vpn серверов (а также траффик с проксей и проч).


"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 13-Авг-16 16:17 
Они должны знать, что именно им нужно атаковать, в этом и фишка.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 13-Авг-16 16:22 
Я вот тут подумал, а ведь список всех Tor nodes открыт и всем известен.
Почему бы не атаковать их постоянно. И это не говоря о том, что треть или больше уже принадлежат спецлужбам.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 12-Авг-16 19:21 
Я думаю в нашем любимом Интернете ещё море фундаментальных уязвимостей, о которых пока никто или хотя бы массы уж точно не знают.

"Уязвимость, позволяющая вклиниться в стороннее TCP-соединени..."
Отправлено Аноним , 13-Авг-16 05:40 
та-же фигня с SynCookie, который при должной вычислительной мощи и что важнее физической близости к цели - вполне эксплоитируем в сетевом оборудовании. вот для чего заказывают корпорациям строить дата-центры их стран "ведомства" по всему миру, с гротескнуым опережением и фактических и перспективных потребностей, ибо под своей крышей - оно тяжко а так - запросто )