LINUX.ORG.RU

Пять уязвимостей в стеке Wi-Fi ядра Linux

 , , , ,


0

1

Исследователь Sönke Huster из Технического университета Дармштадта опубликовал подробности о 5 уязвимостях в стеке Wi-Fi ядра Linux (mac80211), эксплуатируемых «по воздуху». Три из уязвимостей гипотетически позволяют удалённое исполнение кода (RCE); две другие представляют собой атаки типа «отказ в обслуживании» (DoS).

В основе всех пяти уязвимостей лежит неправильная работа с памятью (переполнения буфера, use-after-free или разыменование нулевых указателей). Для эксплуатации уязвимостей достаточно отправить специальным образом сформированные фреймы Wi-Fi.

Уязвимостям присвоены номера CVE-2022-41674, CVE-2022-42719, CVE-2022-42720, CVE-2022-42721, CVE-2022-42722.

Утверждается, что уязвимости (по крайней мере, некоторые из них) были добавлены в первом квартале 2019 года. Уязвимы все версии Linux, начиная с 5.1 или 5.2.

>>> Подробности

★★★★★

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

mac

Плёхо переписали со Swift на Си?

perl5_guy ★★★★★
()

переполнения буфера, use-after-free или разыменование нулевых указателей

Нужно было писать на расте… Ничего, надеюсь, скоро перепишут.

Xi_Jingping
()
Ответ на: комментарий от GREAT-DNG

Оставайтесь там где вы есть. За вами прибудут.

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

Настало время переписать этот код на Rust.

unsafe как я понял тоже прекрасно зевает использование памяти. А без unsafe драйвер не напишите.

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

Это очень большое передёргивание, если можно так выразиться (то есть искажение фактов).

Смысл unsafe в том, что с его помощью нужно строить безопасные абстракции и дальше пользоваться только ими. А если так рассуждать, то «без unsafe» вообще ничего не напишешь, потому что стандартная библиотека сделана во многом через unsafe.

intelfx ★★★★★
() автор топика
Ответ на: комментарий от GREAT-DNG

Если про сабж, то всё равно никуда не бежать, а ждать спокойно обновлений, как делает всегда неуловимый Джо.

unDEFER ★★★★★
()

А про шестую он не сказал, потому что она самая вкусная.

splinter ★★★★★
()

Сеть через кабель рулит.

th3m3 ★★★★★
()

Три года не латать дыры.. Плохо(

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

Ага. Главное построить эти абстракции чтобы они были безопаснее сишных, да и в коде ошибок не допускать. Ой, а кажется всё тоже самое если и в си делать, то всё норм будет.

ЗЫ

Лучше всё тестами обмазать и нанять нормального безопасника который ломать вашу софтину будет всеми способами (правда таких днём с огнём не найдёшь, на всю Москву может человек 20 со скрипом наберётся), программу багхантинга объявить и т.д..

peregrine ★★★★★
()
Последнее исправление: peregrine (всего исправлений: 1)

Ура! Калиюзеры наконец-то смогут похачить свой openwrt-роутер!

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

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

firkax ★★★★★
()

переполнения буфера
use-after-free
разыменование нулевых указателей

Классика Си-шечки. И после этого кто-то утверждает, что программисты не те, а язык прекрасен.

Xintrea ★★★★★
()
Ответ на: комментарий от GREAT-DNG

А что делать теперь? Куда бежать?

Теперь только кровью сможешь смыть позор. Кстати, сейчас это можно без проблем сделать, если ты гражданин РФ.

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

а как по-другому рассуждать? Все правильно, на расте ничего не напишешь без unsafe через unsafe и unwrap через unwrap.

Больше того, эти unsafe - не какая-то супер-умная автоматически выводящаяся ракетная наука, а тупо метки, вручную расставленные такими же валерами как ты. Цена такой «безопасности» - грош, что собственно и подтверждается кучами уязвимостей user after free и double free в проектах на расте.

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

Как думают эксперты, помог бы gcov+KASAN? Имеем ли мы здесь ситуацию «можно было выяснить только в проде» или «программист недостaточно протестировал свой говнокод»?

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

что программисты не те

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

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

unsafe можно применять буквально к отдельным строкам или даже частям выражений. Что ограничивает места где проблема может возникнуть.

rekket
()

Все, теперь в каждом треде о дыре в ядре будет растосрач.

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

Если заранее знать где может возникнуть проблема, то может и проблемы не будет в итоге

Но вообще опыт интересный: будут ли нормальные драйвера и прочая низкоуровневщина на Rust и будет ли она без подобных багов.

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

Классика Си-шечки. И после этого кто-то утверждает, что программисты не те, а язык прекрасен.

Погромисты не те, а язык - быстр, удобен, прекрасен!

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

Проблема C/C++ в том что проблема может быть в любом месте кода, там где не ждёшь. А не в специально отмеченных как небезопасные. Прямо сейчас пишут драйвер для M1 GPU на расте, всё стримится на ютубах от и до, говорят что опыт исключительно положительный - мол, типичных драйверных проблем почти нет, баги в основном логические, с момента как стало понятно что и как делать до рабочего гнома прошли считанные дни.

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

А если негражданин РФ, то проблем еще меньше, только вход со стороны Польши.

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

Когда повалят толпами уязвимости в Rust-коде, хайперы будут съезжать по теме «вы не понимаете, это другое!». Впрочем, как всегда. Плохому танцору язык программирования мешает.

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

Плохому танцору язык программирования мешает.

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

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

Я в шоке почему gsm и прочие 5G не експлуатируют во все щели. Там же просто ахтунг в коде 100%.

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

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

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

Как обычно, вместо того чтобы орать «решето» порадуюсь, что уязвимости были найдены и исправлены.

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

Это, с большой вероятностью, будет не кривое использование памяти.

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

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

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

А как это делаете?

Qubes? Или что-то другое?

Harliff ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.