Страховая компания GEICO опубликовала предварительный выпуск инструментария TuxTape, позволяющего развернуть собственную инфраструктуру для создания, сборки и доставки live-патчей для ядра Linux. Live-патчи позволяет применять исправления к ядру Linux на лету, без перезагрузки и остановки системы. Код проекта написан на языке Rust и распространяется под лицензией Apache 2.0...Подробнее: https://www.opennet.dev/opennews/art.shtml?num=62694
SUSE красафчики, знал, что их ещё рано хоронить.
Можно будет в ядро бэкдор встроить без перезагрузки. Удобно
Никогда еще не было так просто спецслужбам внедрять свои бекдоры "онлайн".
Зачем внедрять в ядро, если все чувствительные данные обрабатываются в юзерспейсе?
Тема прикольная, но не взлетает оно потому что мало нужно: большинству проще ребутнуть тазик чем молится на аптайм.
Всё важное давно зарезервированно.
Ванюша, как же так, а в другом треде говорил, мол, гниль и вообще фу. А тут уже оказывается прикольная тема. Что дальше-то, Вань? Винда в дуал-буте?
> Что дальше-то, Вань? Винда в дуал-буте?Подожди, сейчас он новость перечитает и переобуется :)
Хотя... он уже признался, что ему андроид с растом это норм и он просто не парится.
Может и винда найдется, и не известно что будет в дуалбуте.
Лайвпатчинг прикольная тема.
Растом они просто обвязку этого сделали, там хоть на пхп можно было написать.
Можно хоть на ПХП, нл почему-то написали на Расте. Странно даже, не находишь?
Можно же быть нормальным но люди в ЛГТЛ+ зачем то лезут.
> Можно хоть на ПХП, нл почему-то написали на Расте. Странно даже, не находишь?Почему странно то? Юзерспэйс, никаких общих либ \ шаренных объектов и прочая ...
Если нравится раст - то такое в теории пишется, на практике - зависит от пейсателя.
Это ж тебе не ведро писать, там уже второе подтверждение что раст НЕ язык системного программирования, это для апп - Java for 21-century if you wish ... ;-p
Не знаю как накатываются патчи, но даже в 2025ом не ребутать гораздо проще чем ребутать.
В крупных компаниях ребутать кучи серверов это геммор, в мелких часто нет инфраструктуры для автоматической балансировки без последствий.
Другое дело что технология еще относительно новая и малоизвестная.
kpatch это временная мера, она не отменяет ребута, там где кластер вообще можно делать rolling restart по очереди
Кластер или нет, разница между «перезагрузка срочно» и «перезагрузка потом» в некоторых случаях существенная настолько, чтобы морочиться с live patch. Роллинг рестарт тут вообще ортогонален. Не всё и не всегда можно запустить в трёх экземплярах, не всё и не всегда рационально перепроектировать под микросервисную архитектуру, и уж тем более не на всё и далеко не всегда есть деньги и, главное, люди для переписывания. Что дозволено стартапу, то не дозволено в проде регулируемого законодательством бизнеса.
> Кластер или нет, разница между «перезагрузка срочно» и «перезагрузка потом»
> в некоторых случаях существенная настолько, чтобы морочиться с live patch.так я это не отрицаю, особенно в телекомуникационной отрасли или АСУТП
> Роллинг рестарт тут вообще ортогонален.
очень даже непосредственен, переводишь нагрузку на другие экземпляры, и обновляешь по одному, единственное условие - ты дожидаешься завершение текущей работы на экземпляре, что иногда невозможно сделать быстро (но это единичные случаи)
> Не всё и не всегда можно запустить в трёх экземплярах
все можно обеспечить избыточностью, особенно критические части, уж точно там где есть ресурсы на онлайн патчи и такие стратегии
> не всё и не всегда рационально перепроектировать под архитектуру
это нахрен не надо, ничего общего микросервисы не имеют с горизонтальным масштабированием и кластерами, эти концепции стоят отдельно, могут пересекаться, а могут и нет
> все можно обеспечить избыточностьюТочно? Зуб даёшь?
Давайте так.
Накатывать апдейты вообще редко имеет смысл, отсюда и в ребутах нет потребности.
Случаев когда вот прям надо-надо накатить аж трубы горят и сложности с ребутом - их мало.При длительных аптаймах растёт вероятность не поднятся после ребута :)
Типа несколько не критичных ошибок или сценариев могут наложится друг на друга и навернуть процесс.
> большинству проще ребутнуть тазик чем молится на аптайм.Но например сервер предпочтительней не перезагружать.
Думаю это для этого.
Сразу видно, что кексперты по ссылкам не ходят. А поссылкам прекрасно всё, от презентации в PowerPoint до языка реализации.
>А поссылкам прекрасно всё, от презентации в PowerPoint до языка реализации.Ситауция странная. Люди разрабатывающие под Линукс пишут презентации в формате M$ PowerPoint.
Да норм все - у них там макось, а не клятая венда!
MacBook Pro Microphone (Digital Mic)
Apple Inc.
mdtacom.apple.quicktime.make
!mdtacom.apple.quicktime.model
$mdtacom.apple.quicktime.software
(mdtacom.apple.quicktime.creationdate
macOS 15.2 (24C101)
Да, и даже здесь линух сливает - в разработке :) Остается только маленькая ниша - серверы. Либо десктопчики у красноглазиков.
Повторю ещё раз: линукс как раз топ в разработке, потом идёт мак, потом фря.
Я сейчас про роль десктопа разработчика.Под линукс сидят большинство разрабов всяких опенсорсных либ и под линух же оно собирается с минимумом костылей.
Дальше эти либы расползаются обрастая костылями.
Максимум костылей приходится на венду, как самую неродную платформу.
Для меня тут как раз абсолютно ничего странного, вижу, что люди делом занимаются, а не иксы настраивают. На что собственно внимание местной публики и обратил. Публика, впрочем, как всегда, видит палец указывающий на небо, но продолжает упорно смотреть на палец.
> презентации в PowerPointне работает под Linux. После некоторй пляски с бубном (недокументировано) работает в Wine, но это другое.
Вывод. Или ложь, или провокация.
ну если вас удивляет только паверпонт, это странно.Вам вот не кажется ли, что написанный на безопастном йезычке очередной "фреймворк", grpc, и даже консольная утилита для теребоньканья cveшек немного не помогут патчу самому себя написать, и что debian/gentoo кто там еще сфейлились не потому что у них не было замечательной безопастной "инфраструктурки", а просто потому что у них не было патчей?
раст
Патч уже написан теми, кто его написал. А вот для своевременной доставки патчей инфраструктуры как не было, так и нет. Дебиан все знают как быстро обновляется, а Генту на серверах бывает только под кроватью. Но как меня не удивляет паверпоинт, меня точно так же не удивляет и твоя реакция: для тебя язык реализации как тряпка для быка, как только видишь сразу же теряешь человечий облик и начинаешь исходить на желчь. К счастью сабж от этого не перестаёт быть годной штукой для тех, кому это нужно.
> Патч уже написан теми, кто его написал.И в куда ты засунешь
--- a/linux/kernel/mm/.../...
+++ b/оножесамое?
Внезапно, те кто его написал, написали его вот так. Теперь попробуй это в своем представлении совместить с картинкой из паверпонта. Ну там где стрелочки такие красивенькие. Может, чота надо было еще сделать, сперва? Ну?!
> А вот для своевременной доставки патчей инфраструктуры как не было, так и нет.
scp source dest:
в общем-то тоже сработает. Больше потеряешь времени на контроле какбычегоневышло и проверках потом что все нужные патчи таки применились, а не пропустил что. Было б - чего "доставлять" (как же достал девляпский новояз).Повторяю - дебиан с гентой на которые они жалуются, сфейлились не на том что им сложно завернуть патчик в пакетик. Они сфейлились на том, что нечего заворачивать и нет лишних бесплатных людей для этой работы. А у убунты все уже завернуто и своевременно доставляется, но надо оплатить ubuntu-pro.
Для меня этот язык реализации да, красный флаг что это сделано, вероятнее всего - дол6о36ами, у которых слишком много почему-то оплачиваемого свободного времени. Как и паверпоинт.
Генерация таких патчей в целом решённая задачаКомпилируем ядро А
Накладываем патч
Компилируем ядро БСравниваем А и Б, если изменилась пара функций в коде и не задеты релокации (А большинство CVE фиксят только на уровне кода, не рефакторя код) - то берём эти функции из ядра Б, и собираем модуль что заменит исходные функции на пропатченные.
Единственная проблема в том что этим обычно люди вручную занимаются и фиксят десяток версий ядра, а тут инфраструктура для того чтобы автоматически много ядер пересобирать и такие патчи собирать, и если они полуавтоматически смогут генерировать базу данных
функция - уязвимый хеш - пропатченный хеш - скомпилированный патч
То данный процесс по большей части уже будет автоматизирован.
> Генерация таких патчей в целом решённая задачамсье теоретик?
> Сравниваем А и Б, если изменилась пара функций в коде и не
получаем binary files differs. Долго думаем.
Что изменилась пара функций - ты бы заметил просто посмотрев в исходник патча, оно и попроще будет, проблема-то в том что ты не можешь собрать "Функцию" в бинарник. (ну то есть собрать-то ты можешь, что дальше с таким делать - выкрасить и выбросить)
> рефакторя код) - то берём эти функции из ядра Б, и
> собираем модуль что заменит исходные функции на пропатченные.У меня для тебя хреновая новость: модуль ядра это ни разу не функция. Поэтому лайвпатчик и не является заменой модулей. Как выделить из уже собранного ведра отдельную функцию чтобы скормить ее лайвпатчеру со стрелочками - да наверное, в общем и целом, никак. Ее из .o придется как-то выковыривать, а потом еще точки входа искать в старом ведре, чтоб было что патчить. В собранном нужной информации уже может и нет, никто же не обещал что та функция экспортируемая.
> Единственная проблема в том что этим обычно люди вручную занимаются и фиксят
потому что только вручную и можно. Такого "ии" чтоб из двух бинарников ведра сгенерил тебе лайвпатч - пока, боюсь, не придумали, в этом, собственно, и главный прокол этого браузера Cveшек.
> получаем binary files differs. Долго думаем.Ядро собирается в объектные файлы, у объектных файлов структура понятная, и из них возможно извлекать отдельные функции, ты и сам понимаешь как это работает:
> Ее из .o придется как-то выковыривать, а потом еще точки входа искать в старом ведре, чтоб было что патчить.
Всё уже изобретено, этим и пользуются redhat/ubuntu, всё это уже сделано
> В собранном нужной информации уже может и нет, никто же не обещал что та функция экспортируемая.
Им не нужно быть экспортируемыми, в объектных файлах у нас есть все функции кроме static, и в рантайме это доступно через kallsyms
В инфраструктуре linux ядра это всё уже сделано, не было лишь какого-то инструмента который за тебя будет патчи CVE скачивать, собирать ядра, и диффать их.
> Всё уже изобретено, этим и пользуются redhat/ubuntu, всё это уже сделаноно не кодерами на хрусте из странной страховой.
В этом и проблема.> В инфраструктуре linux ядра это всё уже сделано, не было лишь какого-то инструмента
> который за тебя будет патчи CVE скачиватьэтот инструмент есть - называется голова и руки майнтейнера ведра в любом дистрибутиве.
Но... внезапно этого, оказывается, недостаточно, чтоб помимо бесконечного бэкпортинга патчей еще и наладить выпуск лайвпатчей. Во всяком случае, оба некоммерческих дистрибутива не осилили.Хотя у них безусловно есть ресурсы для просто пособирать ядра.
> но не кодерами на хрусте из странной страховой.
> В этом и проблема.Они это и собираются использовать, и их POC уже это способен делать
> Хотя у них безусловно есть ресурсы для просто пособирать ядра.
Мейнтейнеры не резиновые, на них и без этого очень большая нагрузка, и на разработку инструментов лайвпатчинга ядра у них ресурсов нет (Ни денежных, ни разработческих, у debian мейнтейнеры и так вынуждены поддерживать пакеты что устарели ещё 10 лет назад, ох уж эта "стабильность")
Если страховая готова выделить деньги на разработку автоматической инфраструктуры для такого, и у их разработчиков есть энтузиазм по этому поводу - флаг им в руки, задача эта не настолько сложная чтобы в них не верить.
> Они это и собираются использовать, и их POC уже это способен делатья шость не вижу на схеме в паверпонте где он это способен делать. Там все сплошь нескучные grpc.
> Мейнтейнеры не резиновые, на них и без этого очень большая нагрузка, и
> на разработку инструментов лайвпатчинга ядра у них ресурсов нет (Ни денежных,то ли дело неведомые девляпсы неведомой страховой - вот у них точно все есть (и самое главное - квалификация для этого всего откуда-то взялась, промежду шатанием пайплайнов)
> Если страховая готова выделить деньги на разработку автоматической инфраструктуры для
> такого, и у их разработчиков есть энтузиазм по этому поводу -то надо искать другую страховую. Эта - ох...евшая, она тебе не заплатит по страховке.
> флаг им в руки, задача эта не настолько сложная чтобы в
> них не верить.Сложная. И совершенно перпендикулярна интерфейсику с ручным (!!!) теребоньканьем cveшек и grpc.
Настолько, что выложи они отдельный инструмент ТОЛЬКО для нее - я бы пошел бы на него поглазеть.(!!!) - это вот, кстати, второй красный флаг если первого недостаточно. Для девопа это очень странный подход. Где конфигурация-ass-in-crococode, я вас спрашиваю? Нормальные девляпсы настроили бы шитляп, issue-обсуждение(!)-патч-блюйпук для отcocи6ли-алярма в графане или что там щас модна, и все ходы записаны, а не вручную по списочку в кооооонсолечке - и что там этот индивидуй понаотмечал а что пропустил, и как это через неделю проверять?
И можно было бы пропустить все остальное (а вот этого кота на малопригодном для такого язычке - ведь надо было написать и протестировать).
> от презентации в PowerPointПодожди, ты предлагаешь пользоваться десктопным линуксом?
🤮🤮🤮И в чем ты там предлагаешь делать презентацию?
В либре?))
Либра это для домохозяек. В beamer'е, конечно же.
А что не так в PowerPoint'е ?Вон на сайте самых Щво6одистых защитников Щво6одки на своем сайт, оплоте свободы и любви к детям ... используют картинки сделанные на МАСе да еще и в проприетарном фотошопе.
Для большего уровня абсурда - это Лого для собирания денег с немамонтов!shop.fsf.org/profiles/commerce_kickstart/themes/commerce_kickstart_theme/images/picto_cart.png
CreatorTool="Adobe Photoshop CS5 Macintosh"
> А что не так в PowerPoint'е ?Ну, как бэ, FOSSDEM - "Free and Open Source Software Developers' European Meeting", да.
Причем, презентаторы-спикеры:
https://fosdem.org/2025/schedule/speaker/chris_townsend/
> I had a long career at Canonical (13+ years) doing such things as Ubuntu preinstalls on the latest OEM hardware, Unity Desktop, Ubuntu Touch, and most recently, Multipass.https://fosdem.org/2025/schedule/speaker/grayson_guarino/
> I am a Linux nerd who has been tinkering with open source since I was 10 years old. I initially began work at Canonical on Mir, then moved to Fender where I lead development on the Mustang Micro Plus. Currently, I am working at GEICO on TuxTape, an open-source Linux kernel livepatching solution.Но презентация сделана таки в поверпойнте, из под макоси.
Так то ничего - в смысле, никаких "откровений" после объявления года линукса на десктопе с мака, но "осадочек" остается, да.
С чего так все заагрились? Просто девопс-тулза, для сильно специфичных деплоев где есть острая необходимость, молотить большие объёмы данных без сохранения промежуточных состояний. Ну а то, что презентация в паверпонте - так во многих конторах технари не пишут документацию и не рисуют презентации - этим занимается сильно другой отдел.
Я тебе больше скажу, в большинстве бизнесов линукс используется только на серверах. Чтобы разрабатывать пол платформу совершенно не обязательно пользоваться ей на десктопе. Любой более-менее функционирующий бизнес с необходимостью разработки софта может позволить себе пару лишних серверов под CI/CD и для лабы.
Само собой и даже серьёзней. Согласно ISO-какому то, чтобы пройти аудит, в конторе должны работать внутренние IT-cтандарты, в которых от CEO до уборщицы, прописано кому какая рабочая станция/ноут/телефон положен, что на нём стоит и какой версии. Дома все эти работники могут использовать хоть NetBSD, но на работе самодеятельность запрещена.
Можно накладывать патчи, которые сам не одобрил.
Да не, проще пересобрать ядро и перезагрузиться.
И получить штраф за несогласованные изменения и сорванные SLA.
>Страховая компания GEICO опубликовала предварительный выпуск инструментария TuxTape, позволяющего развернуть собственную инфраструктуру для создания, сборки и доставки live-патчей для ядра LinuxМне одному кажется, что это немного не функция страховой компании - системное программирование?
Тебе все правильно кажется. Там до системного программирования как раз дело-то где-то на пол-шажочка и не дошло.Зато миллион прослоечек к прокладочкам, на безопастненьком йазычке нахрущено. C gRPC и чо там еще у девляпсов моднявенько.
Ну и конь-тиниус дизинтегрейшн, как жи ж без нево. Только патчей нет, нечего интегрировать.
Ну это временно, конечно, непременнейше будут, сами с неба понападают.
> Мне одному кажется, что это немного не функция страховой компании - системное
> программирование?Да. В наше время в любой мало-мальски серьёзной конторе есть it-отдел. Было бы странно если бы их айтишники занимались чем-нибудь страховым, а не айтишным.
знаешь, если ойти отдел в страховой конторе занимается "инфраструктурой лайв-патчей", я предпочту застраховаться где-то в другом месте.Потому что очень даже очевидно что у этих ребят ну слишком уж много свободного времени. А на чьи деньги они при этом гуляют - догадайся.
(интересно, не калифорнийская ли это страховая)
> Потому что очень даже очевидно что у этих ребят ну слишком уж
> много свободного времени.Когда у девопсов или админов много свободного времени - это, вот прямо великолепно, их характеризует как хороших специалистов.
> А на чьи деньги они при этом гуляют
Это вопрос к бизнесу.
> (интересно, не калифорнийская ли это страховая)
Вроде фашингтонская, но Geico... вобщем тут лучше поинтересоваться за кого они голосовали на последних выборах :D
> Когда у девопсов или админов много свободного времени - это, вот прямо великолепно, их
> характеризует как хороших специалистов.нет. Хороший админ - деятельность которого никто не замечает, а не который нихрена не делает. И нет, если ты можешь стырить несколько серверов под инфраструктурку тестирований перекомпиляции ведер и этого тоже не заметили - это не ты охрененный админ, это контора охренела не учитывать расходование ресурсов нецелевыми прожектами.
>> А на чьи деньги они при этом гуляют
> Это вопрос к бизнесу.Ну да, вопрос - ау, бизнес - вы не ухи ли там обожрались? Может, лучше цены на страховки снизить, чем содержать писателей инфраструктурок?
>(интересно, не калифорнийская ли это страховая)Не! Зареганы как ковбои :) Техас ...
Но рулит там один старичок ... Уоррен Баффет ... хорошо это или плохо - оставлю оценку экспертам опеннета :)
>>(интересно, не калифорнийская ли это страховая)
> Не! Зареганы как ковбои :) Техас ...
> Но рулит там один старичок ... Уоррен Баффет ... хорошо это илиэ... ну тогда понятно, помним-скорбим о судьбе одной более важной для человечества компании,которой недолго порулил другой полумертвый старичок.
Он же ж вроде еще десять лет назад й-нулся на отличненько, раздал все свои миллиарды блину воротову на кормление украдкой африканских детей и облучение их 5g?
(а фри шофту опять нихрена, ну не хотят сверхбогатые люди ни копейки платить за чужую свободу, даже стоя одной ногой в могиле)
А книжный магазин, который по факту создал целую индустрию аренды вычислительных мощностей тебя не смущает? А то, что две конкурирующих сети супермаркетов — физических! — контрибутят в опенсорс?
> А книжный магазин, который по факту создал целую индустрию аренды вычислительных
> мощностей тебя не смущает?нет, потому что это был ит-бизнес и остался ит-бизнес. Книжным магазином при этом он по дороге быть перестал, что, кстати, немного жаль, но этот книжный с самого начала был на электрической тяге.
Для страховой - it расходная статья, он вообще может быть саутсоршен нафиг в индию и в тот же амазон.
Чем меньше оно стоит, тем больше денег тебе вернет страховка.
Так давно уже есть kexec для перезагрузки ядра без перезагрузки системы. А вот патчить ядро в рантайме это действительно путь для бэкдоров.
kexec равнозначен ребуту в 99% случаев.
не, ну 15 минут на "initializing memory" оно тебе сэкономит, конечно. Причем - твоих минут, потому что вряд ли такое можно в "страховой конторе" пустить на самотек - "я кнопка нажаль, насяльника".Но вот удивительно - единственное известное мне место где штатно использовалась эта чудо-технология - процедура установки opensuse 15 лет назад. С прицелом явно на то что ну если даже все и повиснет нахрен - пользователь нажмет ресет и установка продолжится с того же места. Чота как-то видимо нет у них уверенности что фокус каждый раз будет получаться безотказно. А с лайв-патчем в общем сложно придумать как оно может не сработать, если его не левой задней ногой вообще написали.
Вот только именно что _писать_ лайвпатчи (а не "инфраструктурку" на безопастном языке) - немного не та задача, с которой, кмк, справятся пытающиеся оправдать собственную (не)нужность девляпсы страховой конторы.
Я бы на эту контору DOGE-то какую-нить натравил!
У меня на дебиане установка пакета, конфигурирующего systemd для презагрузки через kexec приводит к тому, что при такой "перезагрузке" не отмонтируются файловые системы, и поэтому потеря данных и ДОООЛГИЙ fsck.
Дебиан вообще плохо дружит с systemd как-то. В разных версиях разные косяки вылезают здесь и там. Как ложка дёгтя в бочке мёда.
А RH его в пингвинячью дупу сапожищем не для того загоняла, чтоб в всех хорошо работало :)
А только чтобы у кого надо сапог! (С) ;-)
> tuxtape-dashboard - консольный интерфейс для рецензирования и создания live-патчей на основе исходных патчей, полученных из tuxtape-server.Не хватает веб-интерфейса.
>> tuxtape-dashboard - консольный интерфейс для рецензирования и создания live-патчей на основе исходных патчей, полученных из tuxtape-server.
> Не хватает веб-интерфейса.Все норм, там gRPC жеж! Просто это не для тебя вебинтерфейс.
Да чтоб вы понимали! Я бы вот добавил генерацию QR-codes :))))
> Да чтоб вы понимали! Я бы вот добавил генерацию QR-codes :))))наверное, не нашли пока крейта, умеющего их рисовать в консоли. Но, полагаю, деньги наивных покупателей страховок сами себя не освоят, так что ждем следующих невиданных узбеков.