LINUX.ORG.RU

Уязвимость в реализации NFS-сервера FreeBSD и OpenBSD

 , , ,


0

3

В коде NFS-сервера проектов FreeBSD и OpenBSD обнаружена уязвимость CVE-2024-29937, приводящая к удаленному выполнению кода от произвольного пользователя. Проблема существует с самого первого выпуска и затрагивает актуальные релизы OpenBSD 7.4 и FreeBSD 14.0. Детали будут представлены позже в рамках доклада на конференции по безопасности t2, проходящей в Хельсинки 18-19 апреля.

>>> Демо



Проверено: hobbit ()
Последнее исправление: hobbit (всего исправлений: 9)

По ссылкам не ходил. Хотелось бы подробностей. Какие версии NFS затрагивает уязвимость? Я не особо в курсе, но насколько понимаю, все реализации NFS не особо далеки от референса (там типа RPC и всё такое).

P.S. Да вижу, что в BSD, но всё-таки.

qwe ★★★
()

на конференции по безопасности t2, проходящей в Хельсинки 18-19 апреля.

How much 1337 € + VAT 24 %

ничего так хотят за регистрацию

seiken ★★★★★
()
Ответ на: комментарий от devl547

Тео уже публично раскаялся и выпилил поддержку NFS из системы?

Не помню случаев его публичных каяний.

ssh2 ★★★★★
()

Сейчас топик наводнят специалисты по безопасности, хакеры всех цветов и векторов, после чего он будет наполнен примерами аудита, кусками безопасного кода и патчами к референсным реализациям сраказмом. :)

ssh2 ★★★★★
()

бздуны ещё живы?) на Free BSD помнится мне в закат её эпохи (≈2010) было написано немерено вирусни

avas1
()
Ответ на: комментарий от avas1

бздуны ещё живы?) на Free BSD помнится мне в закат её эпохи (≈2010) было написано немерено вирусни

Вести из параллельной вселенной. У вас там / на riserfs или refs ставят?

ssh2 ★★★★★
()

В коде NFS-сервера проектов FreeBSD и OpenBSD

Что-то уже 10 комментарием и ни одного про С/С++. Слабоватенько, уважаемые форумчане.

Ygor ★★★★★
()
Ответ на: комментарий от qwe

Какие версии NFS затрагивает уязвимость?

OpenBSD умеет только третью, так что точно она. Насчет четвертой, которую умеет FreeBSD — надо ждать апреля с раскрытием деталей.

cumvillain
() автор топика
Ответ на: комментарий от cumvillain

Авторы говорят, что дыра в логике и речь не про очередной сишный буфер.

Когда это кого-нибудь останавливало? :)

ssh2 ★★★★★
()
Ответ на: комментарий от cumvillain

Удалённое выполнение кода из-за дыры в логике? Это как, есть логика, запускающая код из сетевых буферов, но забыли добавить проверку на авторизацию?

unC0Rr ★★★★★
()
Ответ на: комментарий от unC0Rr

Подозреваю неправильную логику проверки на выход из экспортированного каталога. Тогда можно какой-нибудь crontab переписать и таким образом выполнить свой код.

AEP ★★★★★
()
Ответ на: комментарий от seiken

Дело не в деньгах, а в самом числе. Отсылка к культуре: в 90’ых и начале 00, было в хакерском сленге :) (1337, L33T, L33T speak (leet — elite))

segfault64
()
Ответ на: комментарий от Ygor

Не будем уподобляться Тсарю.

Надо смотреть код, это очередные грабли в виде выхода за пределы буфера, use after free или ещё что-то подобное. Или тупро пролюбили в логике что-то.

От логических ошибок ни один язык не спасёт.

WatchCat ★★★★★
()

Никогда не доверял никаким реализациям сетевых фс (ну кроме sshfs), что нфс что самба от обеих несёт костылями и дырами. Использовал только в доверенном окружении, где и клиент и сервер полностью подконтрольны (но уже давно не использую).

firkax ★★★★★
()
Ответ на: комментарий от gns

Видать давно туда никто не заглядывал… :)

В код NFS? Во FreeBSD в декабре прошлого года точно что-то исправляли, так что не так уж давно. Про OpenBSD ничего сказать не могу.

mord0d ★★★★★
()
Ответ на: комментарий от firkax

Во FreeBSD при использовании WebNFS, оно сервится исключительно в read-only. В остальных случаях нужно тонко настраивать права, и если админ дурак или просто ленивая жопа, он сам себе яйца отстрелит (даже если админ — девочка). Так что использовать в доверенном окружении это единственно верный путь.

С SMB ситуация чуть иная, там есть per user шары, и если хорошо настроить, оно относительно безопасно, но я бы тоже не стал вывешивать её наружу в read-write.

sshfs это тоже костыль по сути. SFTP чуть меньший костыль (благо, оно нынче по умолчанию), но парольная аутентификация всё испортит.

mord0d ★★★★★
()
Ответ на: комментарий от WatchCat

От логических ошибок ни один язык не спасёт.

В какой-нибудь высокоуровневой нотации вероятность сделать логическую ошибку – меньше, чем в руками написанном маш. коде. Не так ли?

Pwner
()
Ответ на: комментарий от devl547

Скорее всего не выключено в дефолтной установке. У опёнка хитрый подход к безопасности. Если по умолчанию ничего не включено, можно честно говорить, что в дефолтной установке нас и не ломали практически никогда.

atrus ★★★★★
()
Ответ на: комментарий от unC0Rr

В nfs RPC есть. Например, автор облажался в парсинге.

cumvillain
() автор топика
Ответ на: комментарий от segfault64

Это больше до 16 осмысленно, а для взрослых - сумма в долларах.

seiken ★★★★★
()

сколько дырок не закрытых еще скажи, лоровец, пропой

Neresar ★★
()
Ответ на: комментарий от mord0d

Ну, значит не туда заглядывали. Бывает такое. Я, помнится, заглянул в код телнета потому как мне нужно было telnet-прокси написать для файерволла. Ну и нашел там переполнение буфера. А потом, через пару месяцев, по все новостям «пронеслася весть»: в телнете дырка! Ну вот так оно бывает.

gns ★★★★★
()
Ответ на: комментарий от Pwner

В какой-нибудь высокоуровневой нотации вероятность сделать логическую ошибку – меньше, чем в руками написанном маш. коде. Не так ли?

Нашлась серебряная пуля! Надо просто переписать на питоне.

skiminok1986 ★★★★★
()
Ответ на: комментарий от mord0d

таки всё что имеет доступ в интернет имеет кастыли и уязвимости) мы живём в крайне интересное время, когда хомячок даже и не задумывается о предустановленных python 3.11/perl в linux дистрибутивах 🤠

avas1
()
Ответ на: комментарий от avas1

мы живём в крайне интересное время, когда хомячок даже и не задумывается о предустановленных python 3.11/perl в linux дистрибутивах

Никогда не задумывался. На то и хомячок.

skiminok1986 ★★★★★
()
Ответ на: комментарий от avas1

Так-то без perl и/или tcl и в середине 90-х нифига не работало.

Shadow ★★★★★
()
Ответ на: комментарий от firkax

Никогда не доверял никаким реализациям сетевых фс (ну кроме sshfs), что нфс что самба от обеих несёт костылями и дырами. Использовал только в доверенном окружении, где и клиент и сервер полностью подконтрольны (но уже давно не использую).

Отличный план, шеф! И каким образом ты предлагаешь шары организовывать?

cumvillain
() автор топика
Ответ на: комментарий от cumvillain

Уточни задачу. Потому что «шары» без уточнений это обычно какое-то виндузятство и ненужно. И даже будучи сделанными вдруг качественным ПО, там всё равно получается дыра, организованная неграмотностью юзеров, их делающих.

firkax ★★★★★
()
Ответ на: комментарий от cumvillain

Что именно? Я ж говорю, уточни задачу. Помойку устроить - дело нехитрое (и именно она получается в 99% случаев использования шар по независящим от ОС причинам), но если тебя устраивает помойка то и уязвимости не должны беспокоить.

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Ответ на: комментарий от firkax

Что именно? Я ж говорю, уточни задачу. Помойку устроить - дело нехитрое (и именно она получается в 99% случаев использования шар по независящим от ОС причинам), но если тебя устраивает помойка то и уязвимости не должны беспокоить.

Задача сделать так чтобы разные команды могли файлики хранить в разных местах.

cumvillain
() автор топика
Ответ на: комментарий от cumvillain

Ты прикалываешься? Уточни нормально что нужно. Определение nfs я и без тебя знаю (впрочем ты даже его исковеркал).

firkax ★★★★★
()
Ответ на: комментарий от firkax

Ты прикалываешься? Уточни нормально что нужно. Определение nfs я и без тебя знаю (впрочем ты даже его исковеркал).

Нет, я тебе буквально формулирую задачу: люди хотят файлики складывать и делиться друг с другом, им шара для этого нужна. На венде решается через DFS, не вызывает вопросов и работает практически идеально.

cumvillain
() автор топика
Ответ на: комментарий от cumvillain

люди хотят файлики складывать и делиться друг с другом

Вот такое без уточнений с 99% вероятностью ведёт к помойке. Если так и есть - забей на уязвимости, хуже уже не будет.

А спрашивал я о том, какая конкретно задача решается с помощью сетевой файловой системы.

Мой единственный сценарий её использования был для организации синхронного состояния файлов кластера (нагрузка на диск маленькая, на проц большая). Со временем это было заменено на другие способы (код лучше синхронизировать и выкладывать через vcs, данные лучше хранить в специально отведённом месте, ну а что в эту систему не укладывается - можно и индивидуально что-то придумать).

Могу ещё представить что офисные сотрудники через эту шару пересылают друг другу документы - такое случается. Так вот, это делать нельзя. Документы надо слать через специальную ИТ-систему, где все их передвижения будут должным образом учтены и проконтролированы. А использовать для этого шару - как раз типичный случай организации помойки.

Что ещё? Кто-то может придумать раздавать через шару какой-то статический контент. Опять мимо - для этих дел по-нормальному используются http-сервера.

Какой сценарий у тебя?

firkax ★★★★★
()
Ответ на: комментарий от firkax

Вот такое без уточнений с 99% вероятностью ведёт к помойке. Если так и есть - забей на уязвимости, хуже уже не будет.

С чего бы? DFS и ролевые модели нормально решают задачу разграничения доступа.

Мой единственный сценарий её использования был для организации синхронного состояния файлов кластера (нагрузка на диск маленькая, на проц большая). Со временем это было заменено на другие способы (код лучше синхронизировать и выкладывать через vcs, данные лучше хранить в специально отведённом месте, ну а что в эту систему не укладывается - можно и индивидуально что-то придумать).

А вот это как раз лютая наркомания.

Какой сценарий у тебя?

Я тебе уже сказал какой – люди туда файлы кладут, к которым должно иметь доступ больше чем одному человеку.

cumvillain
() автор топика
Ответ на: комментарий от mord0d

про smb смешно было. same sh*t как и NFS. причём количества удобрения там и поболе будет (с учётом предыстории).

mumpster ★★★★★
()
Ответ на: комментарий от cumvillain

Я тебе уже сказал какой – люди туда файлы кладут, к которым должно иметь доступ больше чем одному человеку.

Какие именно люди, какие именно файлы и с какой целью? Это рабочие дела или домашние? Если первое - какая у них должность и какой рабочий процесс они этим реализуют?

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

firkax ★★★★★
()
Последнее исправление: firkax (всего исправлений: 1)
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.