rapture
22.06.2012 13:16 unknown
Дополнительно можно отметить обнаружение в NFC-стеке ядра Linux пяти удалённо эксплуатируемых переполнений буфера, которые можно использовать для организации выполнения кода через отправку на устройство жертвы специально оформленных пакетов с полями некорректной длины. Положительным моментом является то, что NFC-стек интегрирован в ядро Linux относительно недавно и ещё не получил распространения. Для решения проблемы представлен патч, но авторы патча предупреждают, что проблема имеет системный характер и требует для своего решения более глобальной переработки кода.
> переполнений буфера
> пакетов с полями некорректной длины
> авторы патча предупреждают, что проблема имеет системный характер
И вы говорите, что MS решето?
Ты впервые узнал о том, что в Linux есть уязвимости? Впервые услышал про переполнение буфера в сетевом стеке? MS решето не потому что там баги, а потому что там баги годы спустя после обнаружения.
я впервые услышал о том, что в код ядра красноглазики принимают стек у которого везде ПЕРЕПОЛНЕНИЯ от НЕКОРРЕКТНОЙ ДЛИННЫ ПАКЕТОВ. Единичный случай — ок. Но это былинный отказ. Который какбэ намекает, что никто там ни за чем не смотрит.
Ты так говоришь, как будто ошибка, приводящая к такого рода эксплоиту, всегда очевидна.
если в стеке сразу 5 переполнений буферов и "авторы патча предупреждают, что проблема имеет системный характер и требует для своего решения более глобальной переработки кода"
читай — ОЧЕВИДНО что таких ошибок там ДОХУЯ, т.е. стек писался в принципе левой пяткой.
Я в этом читаю лишь несовершенство архитектуры конкретной подсистемы. Кернер-девелоперы хоть и круты, но не боги, чтобы с первого раза всё правильно делать.
s/кернел-девелоперы/линукс-кернел-девелоперы
- nfcb_poll→attrib_res_len = *data++;
+ nfcb_poll→attrib_res_len = min_t(__u8, *data++, 50);
Линусу похоже пора прислать еще одну коробку с рожками и запиской ;)
Ну вот, не было проверки длины какого-то там хедера. Я считаю, что если баги впоследствии находят и фиксят, то ничего страшного в их появлении нет.
Что за рожки (also, рожки́ или ро́жки?) и записка? Не гуглится.
http://www.linux.org.ru/news/bsd/1363683...
http://blogerator.ru/page/bsd-big-scary-... (если лень читать все, ищи "Разработчики как минимум FreeBSD ответили на это Линусу, прислав ему по почте подарок-коробочку перевязанную праздничными ленточками")
Будем почитать, спасибо.