1.1, Аноним (1), 10:11, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +43 +/– |
Что-то решение с лимитом oops'ов, после которых следует panic, выглядит каким-то жутким костылищем.
| |
|
2.3, Аноним (3), 10:18, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Стандартная проблема. Типа если вместо этого везде напихать проверок на NULL, то производительность понизится.
| |
|
3.35, InuYasha (??), 12:15, 20/01/2023 [^] [^^] [^^^] [ответить]
| +6 +/– |
Просто обнулить refcount, как я понял, нельзя? Не понимаю проблемы с событием, которое УЖЕ ловится и спокойно предотвращается. :-/
| |
|
4.61, Аноним (61), 13:31, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Более практичный способ: отслеживать долгие чужие процессы... Ой! А откуда взялся чужой процесс? Кто принёс файл эксплоита и сделал его исполняемым?
| |
|
|
6.161, Аноним (61), 14:55, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ну смотри, есть сервер, как на него попадают программы? Либо ты сам поставил (в этом случае защищать что-то бесполезно от ССЗБ), либо кто-то как-то по сети... Отсюда и начинаем плясать: почему есть дыра для установки троянов?!
| |
|
|
|
3.160, Аноним (61), 14:51, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> везде напихать проверок на NULL
Для начала - замораживать счётчик на -1, чтобы не было переполнения.
| |
|
2.7, Аноним (7), 10:37, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Что-то подсказывает, что refcount должно сделать 64-битным...
| |
|
3.53, Аноним (61), 13:00, 20/01/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
> особенности обработки состояний "oops", в результате которых можно добиться увеличения значения счётчика
Что-то подсказывает, что копать надо ^^^туда^^^. Что значит "можно добиться"?!
| |
3.56, warlock66613 (ok), 13:11, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вот это как раз вообще не решение. И 64-битный счётчик может переполнится, просто на это нужно чуть больше времени.
| |
|
4.73, Аноним (73), 14:03, 20/01/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
ага, тока если с 32 разрядами они справились за 8 дней, то с 64 разрядами уйдёт всего лишь 2^35 дней, что займёт больше 90 миллионов лет
| |
|
|
6.102, Аноним (-), 19:11, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
А типичный компьютер проработает 90 млн лет? Вам придется землянам технологии проапгрейдить малость на более надежные.
// учитесь нубы как алиенов на технологии разводить надо!
| |
|
7.104, warlock66613 (ok), 19:58, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Хороший программист и хороший код не должен опираться на такие соображения. Дело не в том, проработает компьютер или нет. Дело в том, что если программа предполагает что не проработает, ей место в мусорке.
| |
|
8.113, Аноним (113), 22:00, 20/01/2023 [^] [^^] [^^^] [ответить] | +/– | Вот это ты щас быканул на всю криптографию, которая и опирается на то, что единс... текст свёрнут, показать | |
|
|
|
|
12.132, Аноним (-), 18:16, 21/01/2023 [^] [^^] [^^^] [ответить] | +/– | В этих допущениях можно довольно далеко зайти Осталось определиться что мы счит... большой текст свёрнут, показать | |
|
|
14.141, Аноним (-), 22:25, 21/01/2023 [^] [^^] [^^^] [ответить] | +/– | Булшит бинго Возможно бесконечное количество абстракций, а идеал недостижим По... большой текст свёрнут, показать | |
|
|
16.150, Аноним (-), 19:03, 22/01/2023 [^] [^^] [^^^] [ответить] | +1 +/– | Линукс появился, когда некий студент устал ждать когда его осчастливят академики... большой текст свёрнут, показать | |
|
|
|
|
|
|
|
|
8.118, Аноним (118), 23:02, 20/01/2023 [^] [^^] [^^^] [ответить] | +/– | Поэтому теоретиков от программирования и не любят - вечно решают какие-то теорет... текст свёрнут, показать | |
8.154, 5к (?), 01:35, 23/01/2023 [^] [^^] [^^^] [ответить] | +/– | блин, это теперь везде регексп 20 0-9 2 - 0-9 2 - 0-9 2 везде переписывать, ... текст свёрнут, показать | |
|
|
|
|
|
|
4.165, _kp (ok), 01:44, 24/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ну может и не каждый чих, а то такие ли драйвера бывают, да ещё умудряются как то работать с мешком ошибок, но ход мысли нормальный.
| |
|
|
2.11, topin89 (ok), 11:00, 20/01/2023 [^] [^^] [^^^] [ответить]
| +6 +/– |
Это он и есть. И это замена шила на мыла теперь это DoS-атака.
> После достижения лимита, который по умолчанию выставлен в 10 тысяч oops (при желании можно изменить через параметр oops_limit), ядро будет инициировать переход в состояние "panic" с последующей перезагрузкой
10000 срабатываний это примерно 2**log2(10000) ~= 2^13 срабатываний. Простая арифметика говорит, что если 2^32 делает систему уязвимой за 8 дней, то с патчем система вешается за 8 * (2^13/2^32) * 24 * 60 * 60 == 1.3 секунды. Отличное исправление, что тут скажешь. С другой стороны, хотя бы о попытке станет известно мгновенно
| |
|
3.120, Аноним (118), 23:03, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Не вешается а паникует. Ну и собственно если у вас 10K OOPSов вылезло, у вас точно что-то идет сильно не так и вы врядли хотите чтобы это продолжало работать. OOPS для начала означает ошибку ядра после которой гарантии корректной работы системы уже нет.
| |
3.124, Аноним (124), 01:09, 21/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
В новости же написано, что можно выставить кастомное количество упсов.
| |
|
2.14, Бывалый смузихлёб (?), 11:15, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
иначе слишком ресурсоёмко чужие серваки ронять
а тут - по быстрому прогнал, в лимит упёрся и система ушла в перезагрузку
причём, можно умудриться чтобы из цикла перезагрузки система практически не выходила - только загрузилась - загрузилась вирусяка - опять лимит - опять перезагрузка
| |
2.26, Аноним (26), 11:54, 20/01/2023 [^] [^^] [^^^] [ответить]
| –3 +/– |
Это костыльное решение проблемы oopsов в неподдерживаемых драйверах. Ибо нефиг деньгой поддерживать корпорации, которые проприетарные драйверы делают, но не делают их качественно. И ибо нефиг в ядре держать неподдерживаемые драйвера, делающие oopsы. С растом их станет меньше.
| |
|
3.43, Деанон (?), 12:28, 20/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ключевое слово, что станет меньше. И хакать смогут лишь те, кто может это финансово и по мощностям это себе позволять.
| |
3.62, Аноним (61), 13:32, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> С растом их станет меньше.
Естественно, меньше. Нет кода - нет проблем.
| |
3.79, Аноним (79), 14:47, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
С растом будут новые проблемы, скорее всего даже хуже
Потом не говорите что я не предупреждал.
| |
|
2.83, Admino (ok), 15:54, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Десять тысяч упсов у ядра само по себе уже достаточный повод для паники.
| |
|
1.5, аноним2 (?), 10:31, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +5 +/– |
Работал, сервер, работал и вдруг перезагрузился.
Oops it did it again, this limit system reboot this world.
| |
|
2.63, Аноним (61), 13:34, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Работал, сервер, работал
Вопрос: как на сервере оказался исполняемый эксплоит и кто его запустил?
| |
|
3.64, Аноним (61), 13:36, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
Вдогонку: а никого не будет смущать, что на сервере 8 дней вертится какой-то левый юзер?
| |
|
4.103, Аноним (-), 19:13, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Алсо с таким числом oops'ов на диске, вероятно, закончится место под логи. О том что это будет дико грузить систему даже упоминать неудобно. Перцы из гугли возвели хакеров и солонки на новый уровень.
| |
4.131, Аноним (131), 16:31, 21/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Это смотря сколько серверов. Если один-два, то конечно. А если сотни тысяч, как у гугла, то никто и не заметит.
| |
|
5.138, Аноним (61), 22:13, 21/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> никто и не заметит
Ну да, там в гугле только вручную ходят по компам в ДЦ и проверяют, тыкая в клавиши...
| |
5.142, Аноним (-), 22:27, 21/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Это смотря сколько серверов. Если один-два, то конечно. А если сотни тысяч,
> как у гугла, то никто и не заметит.
Кроме аналитики и логинга ловящих аномалии и сбои, ога.
| |
|
|
|
|
1.6, pashev.ru (?), 10:32, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –53 +/– |
Надопросто добавить ещё один счётчик, который увеличивается на единицу, когда счётчик oops переполняется. Назовём новый счетчик wtf.
| |
|
2.8, 1 (??), 10:45, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ну дык - в 2.7 это и предложено ...
Я бы сделал счётчик oops 256 битным
| |
2.18, Аноним (18), 11:22, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Выше предложили более лочичное увеличение разрядности существующего.
| |
|
3.25, pashev.ru (?), 11:53, 20/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Выше предложили более лочичное увеличение разрядности существующего.
Лол. Я предложил то же самое. Вон из профессии! 🤗
| |
|
4.95, Конь (?), 18:22, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Создать второй счётчик и сменить тип у первого, это не одно и тоже, поэтому это тогда тебя нужно гнать
| |
|
5.123, pashev.ru (?), 23:29, 20/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Создать второй счётчик и сменить тип у первого, это не одно и
> тоже, поэтому это тогда тебя нужно гнать
Ты и верно конь. Давай, ещё мой код покритикуй (которого я не писал) 😂
| |
|
|
|
|
|
2.17, oops_limit (?), 11:17, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
После достижения лимита, который по умолчанию выставлен в 10 тысяч oops (при желании можно изменить через параметр oops_limit), ядро будет инициировать переход в состояние "panic" с последующей перезагрузкой, что не позволит добиться необходимого для обнуления refcount числа итераций.
повторяю, для ИмяХ: "при желании можно изменить через параметр oops_limit".
| |
|
3.23, Аноним (23), 11:42, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Почему нельзя по достижению лимита выставить это значение опять в 0? Или почему бы не перестать его прибавлять при достижении лимита?
| |
|
4.27, Аноним (27), 11:56, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
это счетчик ссылок. Зачем тогда вообще счетчик, если по описанным тобой правилам там будет неизвестно что?
| |
|
5.33, Аноним (23), 12:14, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Статья говорит что это счетчик предупреждений. Кому теперь верить? Это я уже не говорю на что он должен ссылаться на завершенные задачи?
| |
|
6.51, Аноним (27), 12:43, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
статья явно говорит, что используется переполнение счетчика ссылок
> метод атаки основывается на особенности обработки состояний "oops", в результате которых можно добиться увеличения значения счётчика ссылок (refcount), что в свою очередь может привести к переполнению счётчика и освобождению памяти, связанной с refcount. | |
|
|
|
9.87, Аноним (61), 17:14, 20/01/2023 [^] [^^] [^^^] [ответить] | +1 +/– | кто владелец каковы условия срабатывания счётчика куда передаётся структура,... текст свёрнут, показать | |
|
10.90, Аноним (27), 17:37, 20/01/2023 [^] [^^] [^^^] [ответить] | –2 +/– | я Комп мой, ячейка памяти ссылающаяся на структуру тоже куплена за мои деньги д... текст свёрнут, показать | |
|
|
|
|
|
|
4.28, Аноним (28), 11:59, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
>Или почему бы не перестать его прибавлять при достижении лимита?
И выдавать You sick bastard
| |
|
5.37, Аноним (23), 12:18, 20/01/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
Да это называется умный счетчик.
Если у тебя так много "проблемных задач" которые завершаются и тебе для чего-то надо знать их количество это уже вызывает вопросы. Всё что надо делать это сравнивать это значение с нулем зачем его бесконечно прибавлять ещё и без проверки переполнения ума не приложу.
Можно делать метрику oops за последние 24 часа. А потом хвастаться перед коллегами сколько у кого oops.
| |
|
|
|
|
1.13, Аноним (13), 11:15, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +16 +/– |
То есть раньше надо было провести 4.3 миллиона oops (что потребует примерно 8 дней), чтобы эксплуатировать уязвимость.
Теперь надо 10 тысяч oops (что потребует примерно 10 минут), чтобы перезагрузить сервак.
Отлично пофиксил. Идеально, я бы сказал.
| |
|
2.42, Деанон (?), 12:26, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
(но в прочем, свобода выбора она такая, что выбирают то, что навязывают в результате ограниченности мировоззрения)
| |
2.57, onanim (?), 13:14, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
то есть получение хакером рутового доступа к серверу лучше, чем просто перезагрузка этого сервера?
| |
|
3.65, Аноним (61), 13:39, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Откуда взялся хакер на сервере? Как он смог сделать исполняемый файл? Где он его разместил, что смог запустить?
| |
|
|
5.88, Аноним (61), 17:15, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> в папочку cgi-bin
Откуда у левого юзера, непонятно ещё как попавшего на сервер, права на запись туда?!
| |
|
6.96, Аноним (96), 18:28, 20/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
вы таки хотите сломать чей-то сервер, что так интересуетесь?
Заказываете виртуалку с доступом в интернет и ставите на нее вордпресс. Так чтобы можно было картинки загружать, плагины всякие ставить, обновлять его одной кнопкой из его же админки, ну и просматривать без ограничений. Обычное использование в общем, как у всех.
Потом расскажете, откуда там права на запись взялись.
| |
|
7.106, Аноним (61), 20:13, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
ну сломаешь ты сам свою виртуалку... у тебя и так туда доступ есть. Это как локалхост молотком расфигачить.
| |
7.111, Аноним (111), 21:27, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Кому нужен вордпресс от пыхающих. Прогрессивные посоны на Раст пишут. Там exec и eval нет, а все пути к точкам входа к бинарнику гвоздями прибиты.
| |
|
6.157, pilat66 (?), 12:30, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Украл ключи у разработчика, как обычно. Пропатчил библиотеку, которую ленивый нодовец тащит не глядя. Сынишка похвастался что с папиного компа играть лучше. И тд
| |
|
|
4.168, Аноним (168), 01:28, 04/01/2024 [^] [^^] [^^^] [ответить]
| +/– |
Сидят два бурундука на берегу реки и вяжут шапочки. Подходит слон и спрашивает:
- Река глубокая?
Первый бурундук:
- Глубокая, очень...
Слон:
- А дно как?
Первый бурундук:
- Песочек, отличное дно...
Ну слон разбегается, ныряет, в реке ударяется головой об камни, застревает, ноги торчат, везде кровь..
Второй бурундук первому:
- Зачем ты слона обманул?
- А зачем ты вчера мою шапочку распустил???
Вы ведь понимаете что речь не о сервере вообще. Вы знаете что Linux имеет модель колец защиты. И если такая модель применяется, то она должна работать как положено.
| |
|
|
|
1.15, Аноним (15), 11:16, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Типа теперь можно на изи вызывать панику ядра? Это они починили или доломал?
| |
1.22, Аноним (23), 11:41, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Я вот прям совсем не специалист, по почему бы это число при достижении лимита просто не обнулить? Даже если лимит поставить максимально возможным.
| |
|
|
3.94, Аноним (94), 17:54, 20/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Других чисел и математики в реальном мире тоже нет. С другой стороны, если мы все сидим в Матрице, то нули и единицы более реальны чем всё что нас окружает.
| |
3.122, Аноним (121), 23:15, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> В реальном мире не бывает нулей.
Вот те раз, компьютерам это расскажи с их двоичной системой счисления.
| |
|
4.139, Аноним (61), 22:19, 21/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Вообще "ноль" - философическая проблема. Вот лежит яблоко на столе - это 1. А если стол пустой, сказать, что ноль яблок? А почему яблок, а не арбузов? Их же тоже нету. Видите, как при нуле сразу потерялись единицы измерения? Получается, ноль не имеет измерения, что уже делает его гипотетическим.
| |
|
5.148, Аноним (-), 17:32, 22/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
В вашей философии явно не было "типов данных" и "auto", когда оно соответствует чему угодно. Если вам нужны арбузы, 0 арбузов столь же валидно как 0 яблок или межгалактических сверхсветовых крейсеров. Универсальный тип, подходит ко всему.
А так то компьютеры много чего "гипотетического" делают. Скажем GPS - рисует некую виртуальную координатную сетку, грубо говоря. Ее нет. Но если допустить что она все же есть, в ней можно адресовать объекты. И это работает.
| |
|
6.159, Аноним (61), 14:48, 23/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> 0 арбузов столь же валидно как 0 яблок
Вот ты и подтвердил, что 0 не имеет типа, а значит, не существует.
| |
|
|
|
|
2.44, Аноним (18), 12:29, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
А refcount продолжит щёлкать дальше. Дальше последствия описаны во 2-м абзаце новости.
| |
|
1.29, Oe (?), 12:01, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –2 +/– |
Видимо замораживать процесс вызывающий oops на секунду (а после некого лимита и вовсе убить, пусть переписывают на раст если с первого раза не доходит) звучит как что то очень умное и не приходящее в голову, вместо этого лучше внедрить возможность DoS атаки
| |
1.47, Hck3r (?), 12:35, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
Когда уже научат что-то вроде 0dayGPT - чтобы нашла все уязвимости (на основе находимых ранее идей) - исправила бы всё разом.
В любого размера кодовой базе
| |
1.49, Аноним (49), 12:40, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
> ядро будет инициировать переход в состояние "panic"
Вместо rce будет dos. Поменяли понос на золотуху.
| |
|
2.58, onanim (?), 13:16, 20/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
то есть лучше, чтобы вместо dos был rce? вы что, совсем тупые?
| |
|
3.67, Аноним (67), 13:47, 20/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Тупой здесь ты. Читай внтмательно:
> счётчик ссылок становится равен нулю, память освобождается, но фактически остаются рабочие ссылки
Правильное решение - при обнулении счётчика удалять "осиротевшие" ссылки.
| |
|
4.72, Аноним (72), 14:01, 20/01/2023 [^] [^^] [^^^] [ответить]
| +3 +/– |
Счетчик как раз и используется для определения наличия используемых указателей. Нулевое значение счётчика показывает, что память уже не используется и ссылок не осталось.
| |
|
5.99, Аноним (67), 18:48, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> ссылок не осталось
> но фактически остаются рабочие ссылки
Может быть, всё-таки попробуешь прочитать текст новости?
| |
|
6.108, Аноним (72), 20:32, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Нулевой счётчик показывает, что ссылок не осталось и память можно считать свободной, но так как значение счётчика изменено на ноль внешним воздействием он уже не отражает реальную ситуацию и на деле ссылки остаются и память продолжает использоваться, в этом и суть уязвимости.
| |
|
|
4.86, Омномним (?), 16:57, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Это вам не питончик с хрустяшкой, на минуточку, "ссылку" может не получиться удалить вообще.
Допустим ссылка лежит в других структурах, на которые завязаны ещё структуры. Будем все удалять?
Что будем делать с процессами, держащими хендля или ссылкась на эти структуры? Прибивать?
Что будем делать, если у нас ссылка в DMA ушла? :D
| |
|
|
6.110, Омномним (?), 21:04, 20/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
Ещё раз, ссылочка ушла в DMA, и вот прямо сейчас внешнее устройство забрасывает в эту область памяти данные.
Остановить этот процесс никак. Чего где будем удалять?
| |
|
7.149, Аноним (-), 17:34, 22/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> Ещё раз, ссылочка ушла в DMA, и вот прямо сейчас внешнее устройство
> забрасывает в эту область памяти данные.
> Остановить этот процесс никак. Чего где будем удалять?
Вообще, если ссылка на число оопсов ушла в DMA, Торвальдсу кому-то надо 314-ы дать - и спросить какого черта в их коде творится вообще.
| |
|
|
|
|
|
|
1.50, Аноним (48), 12:42, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Можно ронять сервера виртуального хостинга, делаешь аккаунт даже бесплатный. Делаешь 10000 разименований за 2 секунды. Сервер уходит в перезагрузку на 10-20 минут.
А с kvm такая фича работает? Можно ли за 10000 разьименований положить хостовую ос?
| |
|
2.66, Аноним (61), 13:40, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
> Можно ли за 10000 разьименований положить хостовую ос?
Об этом гугл расскажет потом, когда выполнит задачу по взлому целевых серваков.
| |
|
1.59, Аноним (61), 13:22, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
> требуется около 8 дней непрерывной генерации состояний "oops". В случае успеха эксплоит позволяет добиться выполнения своего кода на уровне ядра
Чем определяется вероятность успеха? Что-то в статье много мутных мест. Не сказано даже, какие версии ядра подвержены.
| |
1.82, Омномним (?), 15:29, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +6 +/– |
> для проведения атаки при помощи предложенного эксплоита требуется около 8 дней непрерывной генерации состояний "oops"
...
...
Ну так-то примерно на 7 дней Зоркий Глаз всё-таки что-то заметит, если он не девляпс, конечно же :)
| |
1.91, Аноним (94), 17:44, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +2 +/– |
У меня куча вопросов в связи с этой проблемой и её гениальным "решением". Зачем вообще в ядре на таком низком уровне выделение памяти и счётчики ссылок? Почему нельзя просто молча прибить процесс, без игр с кусками памяти? Почему нельзя сразу при старте ядра зарезервировать минимально нужный кусок памяти и не "удалять" его никогда?
Это убогое проектирование. Как это на тех же на встраиваемых устройствах должно работать?
Вообще, судя по всяким OOM killer'ам разработчики линукс ядра относятся к памяти абсолютно расхлябанно, как к какому-то бесконечному ресурсу. "Падает из-за нехватки памяти? Ну так просто купи_новый_телефон/доставь_ещё_терабайт_в_сервак"
| |
|
2.114, Аноним (113), 22:13, 20/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
Ну не будем забывать, что сам линь начинался как proof-of-concept финского студента для поднятия ЧСВ, и которому не жалко было дать отдушину нёрдам планеты всей, которые в свободное от работы на дядю время оттачивали навыки использования нестандартных структур данных (интрузивные списки, например) на уровне ring0. Да и для встраиваемых систем есть более подходящие вещи типа FreeRTOS и Zephyr.
| |
|
1.107, Спили мушку сынок (?), 20:31, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Ждём, когда с автообновлениями сделают неотключаемый таймер перезагрузки в пять минут. Вышел сервер в интернет, понюхал обновлений и в ребут.
| |
|
2.137, Аноним (137), 21:05, 21/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну и правильно. Ставишь балансировщик на винде, чтоб не перезагружался, а за ним зоопарк линуксовых машин. Представь как будут хакеры материться, когда таргет постоянно ребутается :)
| |
|
1.117, Ivan_83 (ok), 22:51, 20/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
1. Поменять счётчик на size_t и для 64х систем оно станет 64 битным.
2. Собирать с -fno-delete-null-pointer-checks и добавить проверки в код.
| |
|
2.119, Аноним (61), 23:02, 20/01/2023 [^] [^^] [^^^] [ответить]
| +2 +/– |
0. Сделать, как в паскале длинные строки: если счётчик -1 (FF...F), это константный объект, счётчик не трогаем. И сразу все проблемы снимутся.
| |
|
3.126, Xasd8 (?), 01:27, 21/01/2023 [^] [^^] [^^^] [ответить]
| –1 +/– |
> если счётчик -1 (FF...F), это константный объект
не сработает.
в этом случае увеличение количество ссылок а потом уменьшение их на тоже самое (больше) значение -- заставит пройти через нуль (не в том месте)
| |
3.164, Омномним (?), 00:15, 24/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
Ну как сказать, снимутся. Превратятся в протечки.
Хотя чтобы FFFFFFFF рефкаунтов набрать - это надо очень постараться.
| |
|
|
1.129, eganru (?), 11:13, 21/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Как не специалист, не понимаю, почему нельзя в случае достижения MAX_REFCOUNT заблокировать счетчик ссылок на этом значении? Это имеет какие-то серьезные побочные эффекты(в и без того явно плохом сценарии)?
| |
1.144, Аноним (-), 22:43, 21/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Я понял, это команда фуксии собирается подмять под себя команду ведроида и заложила в ведро бабах на упсы. Дёрнешь тамошний bus1 не так и телефон регулярно перезагружается.
А циркон, как понимаете, не падает, потому что такой фичи в нём нет.
| |
|
2.152, Аноним (-), 21:29, 22/01/2023 [^] [^^] [^^^] [ответить]
| +1 +/– |
> Я понял, это команда фуксии собирается подмять под себя команду ведроида и
> заложила в ведро бабах на упсы.
Поэтому другая команда заложила бабах в их менеджмент - опа, 16% команды фуксии уволены?!
| |
|
1.145, Аноним (145), 23:03, 21/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Правильнее было бы завершать с соответствующим кодом ошибки приложение, пытающееся разыменовать NULL. И тогда код проверки не будет потреблять чрезмерно ресурсов.
| |
1.156, Аноним (156), 10:12, 23/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +/– |
Интересно, что на этот счёт думаю Кен с Ритчи, они же ещё живы. Может убрать уже эти указатели из Си? Одни проблемы от них.
| |
|
2.158, Аноним (61), 14:44, 23/01/2023 [^] [^^] [^^^] [ответить]
| +/– |
> Может убрать уже эти указатели
Может, убрать уже эти процессоры, одни проблемы от них.
| |
|
1.163, pavlinux (ok), 22:48, 23/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| +1 +/– |
Этот refcount интересен только в состояниях 0 (никого) и 1 (кто-то есть),
все что больше 1 расценивается так же как и 1.
В ядре есть лимиты, pid_max, max_map_count, от них и надо прыгать.
Если refcount начал переваливать за эти пределы, прибивать нахрен процесс
с сообщением "Тюнюнгуй свой хелловорд, пейсатель".
Домашнее задание:
Найти там же, в mm_struct, Sequence counter и создать похожий эксплойт.
| |
1.166, _kp (ok), 01:48, 24/01/2023 [ответить] [﹢﹢﹢] [ · · · ]
| –1 +/– |
Стоп, refcount 32х битный?
Да поставить 128 битный. Обязательно временно.
Склеенное скотчем держится веками.
И проблема решена! ;)
| |
|