1.1, Аноним (-), 16:38, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| –9 +/– |
> Проблема вызвана переполнением буфера, возникающем при
> обработке специально сформированных образов ФС.
> позволяющей получить root-привилегии в системе
Ha-ha, classic.
> Проблема проявляется только в ядрах Linux до версии 6.12.
"До" это отлично. А "от" какой версии?
Некродеб как всегда дыряв - Bookworm 6.1
| |
|
2.24, Аноним (-), 17:47, 28/03/2025 [^] [^^] [^^^] [ответить]
| –2 +/– |
> "До" это отлично. А "от" какой версии?
Там ниже анон пишет что уже 20 лет дырени 🥹
Аж с ядра 2.6.
Интересно, этот код написали те самые непогрешимые диды, на которых местные апологеты дыряшки так яростно наяривают?
Или как обычно "это не настоящий сишник, вот настоящий никогда бы такую ошибку не допустил бы!"?
| |
2.49, Аноним (49), 21:03, 28/03/2025 [^] [^^] [^^^] [ответить]
| –3 +/– |
> А "от" какой версии?
Какая разница... Вот таблетка:
sudo find /lib/modules -name 'hfs*.ko' -delete
| |
|
1.2, Аноним (2), 16:40, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +9 +/– |
Расскажите что это случайность, а не специально сделано для специальных людей.
| |
|
2.7, Аноним (-), 16:58, 28/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Расскажите что это случайность, а не специально сделано для специальных людей.
Рассказывать можно что угодно, а вот доказать не получится.
К сожалению оно так сейчас работает - пекаря за антисанитарию вздрючат, а программер скажет "ну ошибся, с кем не бывает"
| |
|
3.29, Аноним (29), 17:53, 28/03/2025 [^] [^^] [^^^] [ответить]
| +2 +/– |
Сейчас куча всяких низкокачественных товаров продаётся и никто никог не трогает.
| |
|
|
1.5, Аноним (5), 16:52, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Как показывает практика 22.04 всё покоя не даёт , чё на новых не ковыряются и не делают эксплоитов или темплейтов остаётся загадкой
| |
|
2.23, bdrbt (ok), 17:46, 28/03/2025 [^] [^^] [^^^] [ответить]
| +4 +/– |
Ковыряются, просто пока эти уязвимости - кого надо уязвимости.
| |
2.41, Аноним (41), 19:35, 28/03/2025 [^] [^^] [^^^] [ответить]
| +2 +/– |
>чё на новых не ковыряются и не делают эксплоитов или темплейтов остаётся загадкой
Тоже мне бином Ньютона! На новых и ковыряются, и эсплоиты делают, но не публично и за хорошие деньги.
| |
|
1.8, Аноним (8), 16:59, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
>Создание "user namespace" с привилегированным доступом внутри контейнера представляет угрозу только если в системе не установлены все доступные обновления и в ядре присутствует известная неисправленная уязвимость
Вы же сами сказали - В ЯДРЕ ПРИСУТСТВУЕТ НЕИСПРАВЛЕННАЯ УЯЗВИМОСТЬ. Чтобы она не присутствовала - надо ядро переписать.
Все эти usernsы ... они были бы полезны, если бы не давали рута или capabilities внутри userns-а. То есть если бы были чисто для фейкинга uisd, gid и имени пользователя, и home.
Но монтирование произвольных ФСов с ядерными драйверами - это бездонная бочка эксплоитов. Пофиксить это - это только ядро и ФСы с нуля переписать, приоритезируя безопасность и полностью забивая болт на производительность и эффективность.
| |
|
2.44, Аноним (43), 20:32, 28/03/2025 [^] [^^] [^^^] [ответить]
| –1 +/– |
Если бы не давали рута или capabilities внутри userns-а, они бы были, как раз, бесполезны. Дистр, запущенный в контейнере абсолютно без внутреннего рута? Что-то совсем фантастическое. Как там, хотя бы, инициализация гостя происходить будет без рута?
| |
|
3.83, Аноним (83), 17:49, 29/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Очень просто - запускайте всё то, чему нужен рут, в виртуальной машине. Она для этого и предназначена: чтобы гость хозяина не ломал - ему выделена отдельная камера. А рут в контейнере - запустите один процесс, дающий фейковый образ ФС через fuse, далее примонтируйте этот образ ядерным драйвером, и определённым образом нарушьте предположения, сделанные Тедом Тсо или авторами BRFS... И будет вам не просто рут на хотсе, а kernel mode.
| |
|
|
1.9, Анонимусс (-), 17:00, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Лучшие погромисты современности забыли проверить размер перед работой с буфером.
+ if (key_len > sizeof(hfs_btree_key) || key_len < 1) {
+ memset(key, 0, sizeof(hfs_btree_key));
+ pr_err("hfs: Invalid key length: %d\n", key_len);
+ return;
+ }
Никогда такого не было и вот опять!
| |
1.10, Аноним (10), 17:01, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Уровень защиты: Убунту. Самый бессмысленный дистриб на свете, постоянно втюхивают свои сомнительные решения. На кой черт вообще на уровне дистра ограничивать доступ к userns? Те, кому он мешает сидеть на стуле ровно, отключают его полностью, а не ограничиваются полумерами с какими-то стремными белыми списками.
| |
|
2.42, Аноним (42), 20:22, 28/03/2025 [^] [^^] [^^^] [ответить]
| +7 +/– |
Только вот они это отключить никак не могут так как у нихвесь софт сейчас в snap который без этого не работает. А все нормальные сборки софта они выкинули.
| |
|
3.80, Аноним (80), 14:36, 29/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Mint, Arch, Fedora. Что угодно из этого будет лучше всяких астр.
| |
|
|
1.11, Аноним (8), 17:02, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
>Для блокирования найденных лазеек разработчики Ubuntu рекомендуют отключить возможность изменения профилей AppArmor утилитой aa-exec, выставив настройку "sysctl kernel.apparmor_restrict_unprivileged_unconfined=1".
Там просто в половине профилев написано, что они на самом деле unconfined. то есть используются исключительно для обхода того патча, который применён. Кстати, патч не только у Ubuntu, но и у Debian.
| |
1.13, Анонимусс (-), 17:04, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Cтало интересно, зачем они проверяют key_len < 1, а не просто с нулем, это же длина, как она вообще может быть отрицательной??
int key_len;
У ядерщиков все возможно...
| |
|
2.15, 11 (?), 17:14, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
А в чем проблема? если длина больше нуля или равна нулю в зависимости от контекста может ошибкой быть, а может не быть, а если отрицательное число, то это код ошибки. Стандартнейшая практика.
| |
|
3.16, Анонимусс (-), 17:22, 28/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
> а если отрицательное число, то это код ошибки
Там было бы если функция hfs_bnode_read_u8, которая вызывается на 66 строке не возвращала бы u8 data;
Это во-первых.
А во-вторых, если это ошибка, то где ее обработка?
| |
|
4.28, Аноним (-), 17:53, 28/03/2025 [^] [^^] [^^^] [ответить]
| +3 +/– |
> А во-вторых, если это ошибка, то где ее обработка?
- Пейн! я обработчика ошибок не чувствую...
-- Буба, а у тебя его нет!
Зачем вообще придумали такую глупость?
Настоящий програмист пишет все с первого раза и без ошибок.
Нынешние смузихлебы могут только завидовать силище предков.
| |
|
5.93, blkkid (?), 15:11, 01/04/2025 [^] [^^] [^^^] [ответить]
| +/– |
ну тут из темы в тему ходят одни и те же люди, которые с упорством баранов доказывают, что лучше молча в UB свалиться и корраптить память, чем явно крашнуться и перезапуститься по возможности
это даже не про ядро, даже в юзерспейсе не дай боже ошибки будут обработаны
| |
|
|
3.60, Аноним (60), 23:54, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
> если длина больше нуля или равна нулю в зависимости от контекста может ошибкой быть, а может не быть, а если отрицательное число, то это код ошибки.
А узнать что же значит код ошибки -39 мы не можем. Потому что программист перед тем как забыть проверить границы массива забыл про это написать в документации.
> Стандартнейшая практика.
Это и плохо. На PDP-7 действительно было необходимо экономить байты, даже ценой читаемости кода, удобства пользователей и разработчиков. Через каких-то пять лет это стало абсолютно бессмысленно, но поздно — практика уже сложилась.
| |
|
2.37, Имя (?), 19:07, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
> это же длина, как она вообще может быть отрицательной??
Прежде всего, это int - целое число со знаком, оно вполне может быть отрицателным.
А длина может получиться отрицательной, например, в результате signed integer overflow.
| |
|
3.38, Аноним (-), 19:19, 28/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Прежде всего, это int
Прежде всего это длина, а отрицательная длина это уже не длина, а какая-то дельта.
> А длина может получиться отрицательной, например, в результате signed integer overflow.
Если ты допустил integer overflow - то у тебя уже проблема.
А signed integer overflow для сишки это вообще UB.
И вопрос скорее "а какого фига для key_len вообще использовали int, а не unsigned int?"
| |
|
4.64, Аноним (49), 01:24, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
> это уже не длина, а какая-то дельта
Вот именно! А дельту можно складывать с какой-то длиной и получать новую длину. Как складывать знаковое с беззнаком?
| |
|
5.65, Аноним (-), 01:46, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
> А дельту можно складывать с какой-то длиной
Конечно можно!
> и получать новую длину
Можно получать, а можно и не получать :)
Потому что отрицательная длина - не длина, а ошибка (которая дарит рут)))
| |
|
|
|
|
1.14, Аноним (-), 17:13, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +3 +/– |
А теперь посмотрим когда это наделали.
github.com/torvalds/linux/blame/master/fs/hfs/bnode.c#L70
github.com/torvalds/linux/blame/master/fs/hfsplus/bnode.c#L68
Linux-2.6.12-rc2 20 years ago (Apr 17, 2005)
Какая прелесть, не правда ли!
Где те люди, которые рассказывали что самое крутое ядро - 2.6?
| |
|
2.18, Аноним (18), 17:34, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Вчерась писали, что до тру кода галерных сеньеров это 2.0 версия. Так что все претензии только с чемоданом деняк принимаются.
| |
2.21, Анониссимус (?), 17:44, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Всегда поражали аноны, которым не лень посмотреть в блейме дату :D Но спасибо вам за то, что другим будет лень делать :)
| |
|
1.17, eugener (ok), 17:32, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> эксплоит, использование которого продемонстрировано в Ubuntu 22.04 с ядром 6.5.0-18-generic
Родное ядро в 22.04 — 5.15. HWE — 6.8. Из какой промежуточной стадии они вытащили 6.5?
| |
1.27, Krtek (?), 17:49, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Какое же в Линукс низкое качество разработки. Я раньше свято верил, что это самое крутое произведение инженерной мысли за всю историю компьютеров. Эх, наивная юность =)
| |
|
2.31, Аноним (29), 17:59, 28/03/2025 [^] [^^] [^^^] [ответить]
| +7 +/– |
Ты просто ещё не знаешь что творится в других произведениях.
| |
|
3.33, Krtek (?), 18:09, 28/03/2025 [^] [^^] [^^^] [ответить]
| +2 +/– |
Ну если брать именно ОС с открытым исходным кодом, то такого отстоя нет больше нигде. Но вот беда, за теми ОС не стоят богатые дяди из IBM и они сидят без драйверов, которые в линуксе хоть и ужасного качества, но они есть и кое как даже работают.
| |
|
4.46, Аноним (43), 20:38, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
>за теми ОС не стоят богатые дяди из IBM и они сидят без драйверов
Да, тут дилемма: или с дядями и драйверами, но с низким качеством кода, или без дядей и драйверов, но с заметно более высоким качеством, но гораздо более медленной разработкой.
| |
|
5.50, Аноним (-), 21:28, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
> или без дядей и драйверов, но с заметно более высоким качеством,
> но гораздо более медленной разработкой.
А вот вы уверены что "с заметно более высоким качеством"?
Или там просто особо не смотрели, но если присмотреться, то будет как та гифка про Гомера и таракан.
| |
|
6.56, Krtek (?), 23:20, 28/03/2025 [^] [^^] [^^^] [ответить]
| +2 +/– |
Если ты хоть немного шаришь в системном программировании, можешь убедиться сам. Возьми ту же фряху или ещё лучше - NetBSD. Поизучай архитектуру ОС, почитай исходники, зацени документацию, попробуй принять хотя бы минимальное участие в разработке, повзаимодействуй с комьюнити. А потом попробуй повторить всё тоже самое, только с линуксом. После этого ты больше не будешь задавать таких вопросов.
| |
|
7.62, Аноним (-), 00:04, 29/03/2025 [^] [^^] [^^^] [ответить] | +/– | Такое же peшeтo ftp netbsd org pub NetBSD security advisories NetBSD-SA2023-0... большой текст свёрнут, показать | |
|
|
|
4.82, Аноним (82), 16:50, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Фря годами падала от извлечения USB флешки, вот это промышленный стандарт качества :) Да и люди ошибаются примерно одинаково везде - не надо тут бред рассказывать, Rust не на пустом месте появился. Только у Linux есть шанс исправитьсяа у фрип.здеца без корпораций - нет.
| |
|
|
2.32, Аноним (32), 18:05, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Если бы они без конца не ломали драйвера, я бы до сих пор так думал.
| |
2.47, Аноним (47), 20:39, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Тебе повезло. Я в наивной юности ещё и печень гробил на всяких линуксфестах и сходках MLUG путем заливания в организм всякого спиртного качеством примерно как этот самый линукс на десктопе. Насчет его опенсорсности не уверен, но может рецепты в открытом доступе где-то и валялись.
| |
|
3.57, Krtek (?), 23:24, 28/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Насколько мне известно, Торвальдс страдал от алкогольной зависимости и, видимо, продвигал свой недуг в массы на линукс алкофестах.
| |
|
2.48, Аноним (48), 20:56, 28/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну твоя юность ещё не закончилась, если ты не понимаешь, что главный фактор - это не качество кода, а потенция быстро исправлять свои ошибки, подтирать за собой, если старые решения показали свою ущербность. Можно быть с бесконечно крутым качеством, но без всякого развития.
| |
|
3.58, Krtek (?), 23:36, 28/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Расскажи это программистам промышленного оборудования. Подумаешь реактор рванёт или навигация в самолёте откажет - дело-то житейское, сейчас подойдёт "профессионал" и быстро исправит свои ошибки, а может и что-то подотрёт, слюни персонала, например.
| |
|
4.91, Аноним (60), 19:06, 31/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Ох уж это мистическое промышленное оборудование, со своими закадычными друзьями — авионикой, медаппаратурой и реакторами! Добавить немного абстрактной эмбедщины и мы соберём полный сет опеннетного программиста, весь опыт которого можно просуммировать как «C:\laba1».
Всё, что ты перечислил — примитивные по своей сути системы. Цикломатическая сложность ядра Линукс (я уж молчу про всякую прикладную банальщину типа браузеров, кадов, ИДЕ и тому подобного, с чем работают люди) на порядки сложнее самых навороченных навигационных авиасистем.
| |
|
|
2.53, Ivan_83 (ok), 22:42, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
У вас не правильные критерии оценки.
Линух любят за то что с ним можно делать всё что угодно по всякому, а не за то что это завершённый продукт готовый для домохозяек.
| |
|
3.61, Krtek (?), 23:55, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Так можно сказать про абсолютно любой низкокачественный продукт.
| |
|
2.70, Аноним (70), 06:18, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Но оно лучшее после фряхи. Так что твоя вера не далека от правды.
| |
|
3.76, Krtek (?), 12:10, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
А ещё после остальных BSD, Solaris, FreeRTOS, AmigaOS, QNX, Haiku и многих других.
| |
|
|
1.35, Аноним (60), 18:31, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> Проблема в том, что изначально многие подсистемы ядра были написаны с расчётом на то, что работать с ними может только пользователь root, и проблемы в подобных подсистемах не рассматривались как уязвимость
Иными словами, Линукс (да и весь остальной UNIX-like со своим «всё файл», концепцией привилегированных портов, привилегированных UID/GID, и прочими атавизмами) — как был системой для однопользовательских локалхостов, так и остался. Plan9 намекал, что «всё урл» куда лучше подходит для распределённых систем, но слишком опередил своё время чтобы быть услышанным. А других инноваций у меня для вас нет.
| |
|
2.36, Аноним (-), 18:45, 28/03/2025 [^] [^^] [^^^] [ответить] | +/– | Обычное постепенное развитие Долепливаем сбоку то что нужно, тк переделывать вс... большой текст свёрнут, показать | |
|
3.40, Аноним (40), 19:29, 28/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
А разве у межделмаша там не что-то в духе ос фантом до сих пор? Причём не грязь, а реально в железе. Вполне себе юниксы поверх крутятся. Но тут нужно понимать, что юниксы это примитивная ОС по определению. А вот что там у вендора из полезных костылей, другой разговор.
| |
|
2.52, Ivan_83 (ok), 22:40, 28/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
В описанном в новости ничего плохого нет.
Насчёт однопользовательских локалхостов - нет.
В отличии от венды у линуха/бсд с сетью полный порядок и можно делать конфиги сложнее чем: "подключил к сети, получил настройки по DHCP".
Вендовые SID тот ещё адок.
| |
|
3.59, Аноним (60), 23:45, 28/03/2025 [^] [^^] [^^^] [ответить] | +/– | Как настройки сети связаны с тем, что любой юникс сегодня 8212 это однопользо... большой текст свёрнут, показать | |
|
4.71, Ivan_83 (ok), 07:18, 29/03/2025 [^] [^^] [^^^] [ответить]
| +1 +/– |
Да никак, просто венда такой же локалхост под одного юзера только с плохой сетью.
Вообще то, в современном мире когда даже дома легко набигает за десяток устройств подключённых к сети VLAN и прочие штуки становятся мастхэв.
Так же нужны бывают всякие тулзы для диагностики сети.
У венды с этим крайне плохо, а в линух/бсд это как два пальца.
По работе с сетями венда традиционно аутсайдер.
Вланы туда завезли где то после восьмёрки, до того только через костыли в вендорских утилитах.
Сырые сокеты - порезаны.
Доступ к ethernet фреймам отсутствует.
Топовый продукт для сетей от МС который я юзал - MS ISA2006 - даже в 2006 году сильно отставал (это если без мата) от того что есть в опенсорце рассыпухой, если не нужен фаервол клиент который по идее делал тоже самое что SOCK5 только прозрачно для приложений.
| |
|
5.92, Аноним (60), 19:21, 31/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
> Да никак, просто венда такой же локалхост под одного юзера только с плохой сетью.
Все мейнстримные ОС — однопользовательские локалхосты, без исключений. 99% немейнстримных тоже. И вне зависимости от качества локалхоста, если для работы сети надо настраивать что-то кроме фаерволла — это сеть плохая, а не локалхост. И до хороших сетей мы может быть даже когда-то дорастём, но это процесс эволюционный и многое может пойти не так, но пока что мы коллективно движемся в правильном направлении.
| |
|
|
|
|
1.54, Аноним (54), 22:46, 28/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
А kernel.apparmor_restrict_unprivileged_unconfined в ванильном ядре есть? Что-то не могу найти инфу.
| |
|
2.63, Аноним (49), 01:20, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Например, в Убунте 14 ничего из перечисленного нету: ни unshare -U -r, ни allow userns, ни мутных профилей.
| |
|
3.66, body (?), 02:15, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
>> Например, в Убунте 14 ничего из перечисленного нету: ни unshare -U -r, ни allow userns, ни мутных профилей.
Застрявший в старье , да её уже за друшлачили давно , она уязвимее самих уязвимостей
| |
|
4.68, Аноним (49), 04:09, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
Пруфов от тебя, конечно, не будет. Пруфов на уязвимости БЕЗ патчей. Ты же понимаешь, что и у ядра, и у пакетов есть исходники, которые можно изменять и компилировать.
| |
|
|
|
1.84, EmmGold (ok), 18:23, 29/03/2025 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Не совсем понял причем тут namespace. Root в системе только один.
**Например, можно применить к своему процессу профили от chrome, flatpak и trinity. ** - А какого хрена chrome, flatpak, trinity запускаются с рутовыми правами???
| |
|
2.85, Аноним (49), 19:31, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
> А какого ... с рутовыми правами???
Потому что "система-на-шнурках", особенно с вяленым на борту пошло. Сначала пытались всё обрезать, потом наткнулись, что ничего не работает, пришлось рута на все стороны раздавать.
| |
2.86, Примитив (?), 19:33, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
С рутовыми , что бы показать силу , это как с крутыми возможностями но примите большую ответственность за корову
| |
2.87, Аноним (87), 22:04, 29/03/2025 [^] [^^] [^^^] [ответить]
| +/– |
В каждом user namespace может быть свой отдельный root, который вне этого namespace никаких прав не имеет.
| |
|
|