URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 134888
[ Назад ]

Исходное сообщение
"Уязвимости в PCP и Nix, позволяющие поднять привилегии в системе"

Отправлено opennews , 24-Сен-24 10:29 
В инструментарии PCP (Performance Co-Pilot), применяемом для сбора статистики о производительности системы (например, используется в интерфейсе Cockpit), выявлены  две уязвимости. Первая уязвимость (CVE-2024-45770) присутствует в утилите pmpost, предназначенной для отправки сообщений в лог и при определённых условиях запускаемой с повышенными привилегиями. Эксплуатация уязвимости позволяет добиться выполнения кода с правами root, но для совершения атаки необходимо иметь доступ к учётной записи PCP. Атака сводится к подмене символической ссылкой файла "/var/log/pcp/NOTICES", в который выполняется запись из процесса правами root без использования при открытии файла флага O_NOFOLLOW...

Подробнее: https://www.opennet.me/opennews/art.shtml?num=61919


Содержание

Сообщения в этом обсуждении
"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 10:36 
Помнится прошлую уязвимость nix исправляли очень медленно, поэтому в этот раз тот же человек опубликовал информацию об уязвимости после пару недель с неё находки. До исправления разрабами nixos. А ещё разраб ушёл в отпуск в этот момент, когда его предупредили непублично. И не было передачи задачи. В общем, проект сомнительный, отношение к безопасности халатное. Про это на hacker news писали и lobsters.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:03 
Эти понапишут что угодно, если СОС не достаточно длинный.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:10 
> Эти понапишут что угодно, если СОС не достаточно длинный.

А по факту?
Если они тянули с исправлениями - что легко проверяется по дате патча - то хоть с длинным СОСом, хоть с коротким отношение к безопасности у них отвратительное.

ps почему у многих анонов какой-то странный фетишь на СОСʼи?
в ядре он есть, а бзде тоже, в куче успешных проектов.
Но надо сразу выстрать свое мнение прилепливая теплое к мягкому


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено 1 , 24-Сен-24 15:04 
> ps почему у многих анонов какой-то странный фетишь на СОСʼи?

Да потому что, в основном, "весь пар уходит в свисток". Напишут СоС и проект закрыт.
Это ж как с языком, который нельзя называть, может язык и неплохой и концепции в нём передовые, но сообщество отвратительное.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:50 
> Да потому что, в основном, "весь пар уходит в свисток".

Что правда?

> Это ж как с языком, который нельзя называть

Ты бы еще сказал "на нем ничего не написано!")
А потом бы отгребал списки из утилит, вейланд композиторов, миллионов строк в андроиде.

> но сообщество отвратительное.

Сообщество, которое не боится назвать овнокод - овнокодом?
Или которое на заглядывает в штаны, а просит показать код.
Не удивительно что это самый любимый ЯП на стековерфлоу, и что его так ненавидят у нас.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено 1 , 24-Сен-24 16:01 
>> Это ж как с языком, который нельзя называть
> Ты бы еще сказал "на нем ничего не написано!")

Вот ты прям образчик этого гнилого сообщества - выдаёшь свои мысли за мои.
На тебе пруф - https://www.opennet.me/opennews/art.shtml?num=58969
даже процитирую -
===============
Имя Rust разрешено использовать в заголовках статей, книг и обучающих материалов, при явном указании, что проект Rust и организация Rust Foundation не вовлечены в создание и рецензирование содержимого.
Использование имени и логотипа Rust запрещено в качестве средств персонализации в корпоративных социальных сетях.
===============


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 17:33 
Что ж у тебя так горит?
Вот тебе правил использования трейдмарков Линукса
linuxfoundation.org/legal/trademark-usage

> Использование имени и логотипа Rust запрещено в качестве средств персонализации в корпоративных социальных сетях.

A trademark should not be used as your domain name or as part of your domain name.
A trademark should not be used as part of your product name.
A trademark should not be incorporated into your company’s logos or designs.

Do not use logos or names of The Linux Foundation in any commercial or marketing context other than as expressly permitted in this policy unless you have obtained explicit written permission from The Linux Foundation to do so.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено 1 , 24-Сен-24 23:35 
Ты эта ...
Имя в корпоративных социальных сетях, от доменного имени в интернетах отличаешь ? Или от имени продукта ? Или от лого компании ?

Вот уж точно - в Киеве дядька, а в голове бузина.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 14:41 
>сравнивает теплое с мягким

Смешалось все в доме Оболонских.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 26-Сен-24 14:26 
А по статистике Repology у nixpkgs stable 24.05 самый маленький процент потенциально уязвимых пакетов среди дистрибутивов.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 11:16 
Сначала запиливают свои кривучии телеметрии, потом ноут "а чавой вы выключаити, вот у вас поэтому на линоксе три процента".

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено 1 , 24-Сен-24 11:21 
Вот она - полезность телеметрии !!!
Можно простому юзверю повысить привилегии в системе.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 11:44 
На ведь это случайность. А злодей это Jia Tan.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено 1 , 24-Сен-24 11:37 
> Дополнительно можно упомянуть публикацию[https://x.com/evilsocket/status/1838169889330135132] предупреждения о выявлении критической уязвимости, затрагивающей дистрибутивы GNU/Linux

Чёт Илон Маск мне говорит, что "Такой страницы не существует" !!!!1111адынадынадын.

Фейк ?
296


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 11:51 
Все просто он хочет от тебя что-то скрыть. Чем ты ему так насолил?

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено penetrator , 24-Сен-24 12:54 
может уже удалили

* Unauthenticated RCE vs all GNU/Linux systems (plus others) disclosed 3 weeks ago.
* Full disclosure happening in less than 2 weeks (as agreed with devs).
* Still no CVE assigned (there should be at least 3, possibly 4, ideally 6).
* Still no working fix.
* Canonical, RedHat and others have confirmed the severity, a 9.9, check screenshot.
* Devs are still arguing about whether or not some of the issues have a security impact.

I've spent the last 3 weeks of my sabbatical working full time on this research, reporting, coordination and so on with the sole purpose of helping and pretty much only got patronized because the devs just can't accept that their code is crap - responsible disclosure: no more.Image
The writeup is gonna be fun, not just for the technical details of it, not just because this RCE was there for more than a decade, but as a freaking example on how NOT to handle disclosures.
Like, I write software, I get it, I get how someone can be defensive about the stuff they write, I really do. But holy sh, if your software has been running on everything for the last 20 years, you have a freaking responsibility to own and fix your bugs instead of using your energies to explain to the poor bastard that reported them how wrong he is, even tho he's literally giving you PoC after PoC and systematically proving your assumptions about your own software wrong at every comment. This is just insane.
Just wanted to add for the sake of clarity, that i have *so much respect* for the people at Canonical that have been trying to help & mediate from the beginning, I really don't know how they manage to keep their cool like this.
This is going to be the writeup opening statement. It's an actual comment from the github conversation. I mean, it's not wrong ... Image
And YES: I LOVE hyping the sh1t out of this stuff because apparently sensationalism is the only language that forces these people to fix.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:02 
> devs just can't accept that their code is crap

Ha-ha. Classic.
Это еще фиксы до мейнтейнеров не дошли.
Потом окажется - один занят, один в отпуске, еще один в запое. А юзеры подождать могут.
Хотя... если им не платят, то они ничего и не должны.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 11:48 
> C 53.3%
> приводит к обращению к памяти вне буфера при отправке специально оформленных данных

Не то чтобы я был сильно удивлен)


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено НяшМяш , 24-Сен-24 11:56 
> nix
> C++ 75.7%

ясно


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:06 
Да, лучше бы rust использовали с автоматическим сборщиком мусора. Или nim с arc. Разницы между этими gc практически нет. Только первый язык стыдливо отрицает наличие gc.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено мяв , 24-Сен-24 12:15 
можно про последнее заявление поподробней?

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:33 
> Подход Rust к управлению памятью основан на следующем принципе: компилятор Rust должен знать точные места в коде, где выделена память, где и как к ней осуществляется доступ, а где она больше не нужна. Эти знания позволяют контролировать доступ к памяти и автоматически освобождать выделенную память, вставляя соответствующие инструкции непосредственно в сгенерированный код, таким образом избегая многих распространенных ошибок, которым могут быть подвержены другие языки.

Примерно то же самое делает swift и nim. Возможно, ещё  haskell.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:57 
> Примерно то же самое делает swift и nim.

Эм... в swift используется подсчет ссылок (ARC) и оно происходит в рантайме.
В расте подсчета ссылок нет (кроме типов вроде Rc<T> и Arc<T>) и делается это в компайлтайм.

Как оно в nim и haskell точно не знаю, в haskell вроде полноценный garbage collector.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:58 
> Как оно в nim

В nim arc/orc в компайлтайме.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:39 
>> Как оно в nim
> В nim arc/orc в компайлтайме.

А там об этом в курсе?
https://nim-lang.org/blog/2020/10/15/introduction-to-arc-orc...



"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:52 
Конечно нет.
И вообще, сравнивать каких-то разработчиков Nim с целым Анонимом 3 не правильно.
Всем понятно, что он гораздо кекспертнее.
И прямо сейчас откроет глаза сомневающимся!

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:08 
Ну если вы не разбираетесь, не пишите. Arc/orc работает при компиляции. Это позволяет даже писать код под микроконтроллеры без напряга.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:21 
>> At its core ARC is a memory management model based on Automatic Reference Counting with destructors and move semantics. Some people mistake Nim’s ARC for Swift’s ARC, but there is one big difference: ARC in Nim doesn’t use atomic RC.
>> ORC is Nim’s all-new cycle collector based on ARC. It can be considered a full-blown GC since it includes a local tracing phase
> Ну если вы не разбираетесь, не пишите. Arc/orc работает при компиляции. Это
> позволяет даже писать код под микроконтроллеры без напряга.

В общем, ты не осилил ни тему, ни аглицкий ...


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 18:37 
>Arc/orc работает при компиляции. Это позволяет даже писать код под микроконтроллеры без напряга.

Нет. При компиляции работа с памятью происходи в rust, там уже в момент компиляции вставляется осовобождение памяти. В случае счётчика ссылок, во время компиляции будет только меняться счётчик ссылок, а вот само освобождение будет происходить в рантайме. Даже, если код прямолинеен.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 14:55 
Его утверждение было верным, хотя механизмы несколько отличаются.

>При компиляции работа с памятью происходи в rust, там уже в момент компиляции вставляется осовобождение памяти.

При компиляции никакой работы с памятью не происходит потому что она происходит только при исполнении. Компилятор только вставляет инструкции освобождения памяти где это нужно. Nim делает то же самое, только со счетчиком, Swift тоже.

Цитата:
>the Nim compiler has wrapped the body of the main proc in a try: finally statement
>В случае счётчика ссылок, во время компиляции будет только меняться счётчик ссылок

При компиляции никакой счетчик ссылок не меняется! Опять путаешь компиляцию с исполнением программы.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 17:11 
>Nim делает то же самое, только со счетчиком, Swift тоже.

Не то же самое. В rust возможно выделять память на стеке, так как данный механизм будет работать. В случае nim для работы счётчика ссылок выделять память на стеке уже нельзя, так как иначе нельзя будет вернуть значение из функции, память нужно выделять сразу в куче, даже если это локальная переменная.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:11 
Частный пример из вашей же ссылки:
> What we see here is really interesting - the Nim compiler has wrapped the body of the main proc in a try: finally statement (the code in finally runs even when an exception is raised in the try block) and inserted a =destroy call to our mystr (which is initialised at runtime) so that it’s destroyed when it is no longer needed (when its lifetime ends).

Что вам здесь непонятно?


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:59 
Раньше за автоматическую расстановку free() в системщине по рукам били.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:13 
> Раньше за автоматическую расстановку free() в системщине по рукам били.

А еще раньше гото было нормальным подходом)
The future is now, old man (c)

Особенно если половину free забывали, а вторую ставили не в то место в коде.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:19 
Гото и сейчас нормальный подход. Знать надо где ему место, а где нет.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено мяв , 25-Сен-24 02:38 
..а за гото по рукам били хоть и не всегда, но по куда более внятным причинам: больше нестандартного подхода, сложнее читаемость => сложнее поддержка.
разумеется, если Вы пишете что-то, над чем будет работать больше одного человека, для себя хоть на асм'е писать можно.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 09:51 
Чел, обработку ошибки при падении программы почему на goto не сделать?

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 15:11 
Ты о чем? Он просто услышал где-то, что goto - плохо и повторяет не задумываясь.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:21 
> The future is now, old man (c)

Наступило, но это не значит, что будущее приносит только хорошие инновации. Зачастую наоборот.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:25 
> но это не значит, что будущее приносит только хорошие инновации. Зачастую наоборот.

Правда? Типа большая часть инноваций это плохие инновации?
Можешь отказаться от ноутов, смарфона и видеозвонков)

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


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:34 
> Правда? Типа большая часть инноваций это плохие инновации?

Да, это правда.
> Можешь отказаться от ноутов, смарфона и видеозвонков)

Смартфоны - вендорлок овно. Раньше с ними было лучше. Видеозвонки нужны гораздо реже, чем ими трясут. Зачем смотреть на чужие лица, когда голоса достаточно? А ещё лучше не тратить время и написать кратко по почте. Ноутбуки скатились в качестве.
> Ну или привести примеры злых инноваций

Rust, docker, electron, веб приложения, js, wasm.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 13:59 
> Да, это правда.

Смелое заявление)

> Смартфоны - вендорлок овно. Раньше с ними было лучше.

Раньше это когда?
Название смартфон появилось c то ли у Ericssonʼа, то ли у BlackBerry.
И открытостью там совершенно не пахло. Как и у коммуникаторов на Windows Mobile.
А современные - это айфон и андроид. Где там отсутствие вендорлока?

> Видеозвонки нужны гораздо реже, чем ими трясут.

Но когда нужны, то очень полезны.

> Rust, docker, electron, веб приложения, js, wasm.

А что в этом плохого?


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 14:08 
> А современные - это айфон и андроид. Где там отсутствие вендорлока?

Чел, научись читать. Я наоборот пишу, что сейчас больший вендорлок.
> А что в этом плохого?

Rust - сборище фанатиков. А в самом языке нет ничего особенного. Синтаксис ужасный, компилятор с плохой обратной совместимостью, долгая сборка, привязка к зависимому централизованному хранилищу пакетов.
Docker - ведёт к отуплению сисадминов и разработчиков. Зачем делать чистый преносимый код, если можно сделать овно и закатать в ту среду, в которой разрабатывалось, в контейнер? И для каждой программы свой контейнер. Чтоб память жрало во всех смыслах.
Electron - двидок браузера для отрисовки gui, со всеми вытекающими в виде жора памяти.
Веб приложения - жрут память, тормозят, часто сделали онлайн подзагрузку, из-за которой тормозят ещё больше.
Wasm - тащит в веб ящё больше языков. Веб должен быть гипертекстовым, имхо. Всё остальное жрёт память, ресурсы и время на рюшечки-окошечки и плавающую фигню.

> Докупи память, проц новый. В чём проблема?

Проблема в том, что из-за овнокода производительность программ топчется на месте. Овнокод медленный, закупаются новые процы. Разработчики ещё больше расслабляются, пишут ещё более плохой код.
Был шуточный закон Вирта, который перестал быть шуткой:
> программы становятся медленнее куда шустрее, чем компьютеры становятся быстрее


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 14:51 
Так дело то в деньгах ты хочешь хорошо и за бесплатно, но так не бывает.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 17:22 
В деньгах на что, на память и на новые дырявые процессоры?!?!?

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:00 
> Чел, научись читать. Я наоборот пишу, что сейчас больший вендорлок.

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

> Rust - сборище фанатиков. А в самом языке нет ничего особенного. Синтаксис ужасный, компилятор с плохой обратной совместимостью, долгая сборка, привязка к зависимому централизованному хранилищу пакетов.

О! Ты сразу собрал все штампы.
В языке есть концепция заимствования и лайфтаймов. "Синтаксис ужасный" только для неосиляторов.
Обратная совместимость в расте отличная - есть Editions в рамках которых решается эта проблема.
"долгая сборка" можно подождать пару минут, а не тратит часы на устранние проблем памяти.
"привязка к зависимому централизованному хранилищу пакетов" - вранье. Cargo отлично настраивается локально. И заполнять исключительно своими крейтами.
google.github.io/comprehensive-rust/cargo/running-locally.html
Но ты этого всего не знаешь, зато мнение имеешь.
Еще и про фанатиков рассуждаешь))


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:24 
> В языке есть концепция заимствования и лайфтаймов.

Не заслуга rust, есть в том или ином виде во множестве языков.
> "Синтаксис ужасный" только для неосиляторов.

Неправда. Эти отзывы слышал от тех, кто на нём кодил.
> Обратная совместимость в расте отличная - есть Editions в рамках которых решается эта проблема.

Не решается. Если разработчик решил сидеть на main, всё будет ломаться на старых компиляторах. И на новых тоже может сломаться, если разработчик не успеет синхронизироваться с main (при наличии критичных изменений, а такие бывают).
> "долгая сборка" можно подождать пару минут, а не тратит часы на устранние проблем памяти.

Штамп.
> Cargo отлично настраивается локально.

А толку? Разработчики используют центральное хранилище.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:44 
> Не заслуга rust, есть в том или ином виде во множестве языков.

Примеры в студию. Желательно чтобы оно быо там все, а не заимстования в одном, лайфтаймы в другом, а трейты в третем.

> Неправда. Эти отзывы слышал от тех, кто на нём кодил.

А я слышал противоположное. ПРичем питон и отступы пробелами они ненавидели.

> Не решается. Если разработчик решил сидеть на main, всё будет ломаться на старых компиляторах. И на новых тоже может сломаться, если разработчик не успеет синхронизироваться с main (при наличии критичных изменений, а такие бывают).

Ну так не сиди на мейне.
Ты бы еще найтли взял и ныл "чего все разваливается".

>> Cargo отлично настраивается локально.
> А толку? Разработчики используют центральное хранилище.

И? Это проблема раста?
Им дали выбор! Как они захотят, так и будет.
Более того, я знаю как минимум три компании, у которых развернут свой карго. Тк безопасность.
Аргумент примерно "зачем вы гитхабом пользуетесь".



"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:04 
> Ну так не сиди на мейне.

Мир не чёрно-белый. Если _другой_ разработчик использует main, у _остальных_ разработчиков возникают проблемы.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:13 
> Если _другой_ разработчик использует main, у _остальных_ разработчиков возникают проблемы.

В рамках одного проекта - то main использует не разработчик, а проект.
И конкретная версия (main или edition) будет прописан в CI и просто не пропустит PR.
А если это в команде один особенный, которых хочет использовать не ту версию языка... то это его проблемы - или переубедите, или распрощаетесь.

Если в рамках разных - то в других языках проблема такая же. Ты не может затянуть себе кода с2х если у тебя с89.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:18 
> Ты не может затянуть себе кода с2х если у тебя с89.

Могу. В Си буквально каждый файл можно собирать со своей версией. Как это будет мешать импорту функций?


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 21:16 
>Могу. В Си буквально каждый файл можно собирать со своей версией

Давай только по настоящему, без читерства, этот файл должен быть подключен препроцессором, с использованием фич из нового стандарта


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 19:13 
Вы случаем не из тех староверов, которые не могут поставить несколько разных версий пакетов, вот просто технически не могут, у них лапки?

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 19:11 
>Неправда. Эти отзывы слышал от тех, кто на нём кодил.

Одна бабка сказала, какое экспертное мнение. Вот вам для примера немного c и c++
char *(*(**foo[][8])())[];
[&, i]{};
[=, *this]{ };
std::cout << var.property << "123\n";
printf("%d %s\n", a, b);
>Если разработчик решил сидеть на main, всё будет ломаться на старых компиляторах. И на новых тоже может сломаться, если разработчик не успеет синхронизироваться с main (при наличии критичных изменений, а такие бывают).

Соберите код для c++23 на c++99. Только не говорите что в rust что-то принципиально иное
>Штамп.

Вы просто как попугай повторяете чужие мысли
>А толку? Разработчики используют центральное хранилище.

И? Вы не в состоянии склонировать всё к себе и в случае необходимости пропатчить путь?


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 19:02 
>Rust - сборище фанатиков. А в самом языке нет ничего особенного

Давай второй с сопоставимыми фичами. Только давай без поиска в интернете, пиши сразу, без шпаргалок
>Синтаксис ужасный

Весь в c++.
char *(*(**foo[][8])())[];
[&, i]{};
[=, *this]{ };
std::cout << var.property << "123\n";
>привязка к зависимому централизованному хранилищу пакетов

Ничуть не лучше и не хуже других языков. Просто сишники и плюсовики частенько пишут кривые косые велосипеды и их проекты не имеют внешних зависимостей. Вот типичный пример https://github.com/ProfessorNavigator/mylibrary/blob/b249bf8...
Опять же, вам никто не мешает поднять своё зеркало
>Docker - ведёт к отуплению сисадминов и разработчиков.

Можно подумать, что раньше они были умнее.
>Зачем делать чистый преносимый код, если можно сделать овно и закатать в ту среду, в которой разрабатывалось, в контейнер?

Вы занимались коммерческой разработкой? Вы в курсе, что одна из первых же задач при разработке кода - заморозить версию зависимостей в каком-нибудь lock файле? Вы в курсе, что между минорными версиями будет различие по доступным методам, и код работающий условно на 8.2 не заработает на 8.0? И как вы собираетесь разрешать подобные проблемы, когда у вас будет хотя бы человек двадцать?
>И для каждой программы свой контейнер

Расскажите как сделать иначе. Разумеется, если знаете.
>Веб приложения - жрут память, тормозят, часто сделали онлайн подзагрузку, из-за которой тормозят ещё больше.

Альтернативы? Допустим, мне нужен условный ip калькулятор. Предлагаете для начала что-то откуда-то скачать и устанавливать?
>Wasm - тащит в веб ящё больше языков.

И это хорошо. JS это ужас, и только тот, кто ни разу не пользовался нормальным языком, например Ocaml это не понимает
>Веб должен быть гипертекстовым, имхо

Он по прежнему гипертекстовой. Но лучше когда данные передаются в виде json или другого машинночитаемого формата, а не в виде странной вёрстки
>Проблема в том, что из-за овнокода производительность программ топчется на месте.

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


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 18:43 
>Смартфоны - вендорлок овно

С аппаратной точки зрения - смартфоны превосходны. Неразличимые невооружённым взглядом пиксели, ядра, способные как на быстрые вычисления так и на сон. Никакой старый коммуникатор не может соперничать по техническим характеристикам. Даже возможность запуска на смартфонах обычного софта для линукса - это уже достижение, если сравнивать с тем, что было раньше, когда даже файловой системы не было.
>Rust, docker, electron, веб приложения, js, wasm

Причина?


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено _ , 24-Сен-24 19:02 
>> но это не значит, что будущее приносит только хорошие инновации. Зачастую наоборот.

Причём некоторые по глупости людской, а некоторые - по злобе и жадности ... вот COVID к примеру.

>Правда? Типа большая часть инноваций это плохие инновации?

Про развесовку ничего сказано не было, это уже у тебя персональные фантазии попёрли ... разупорись? :-р

>Можешь отказаться от ноутов, смарфона и видеозвонков)

Да - могу. Это будет жутко неудобно, но ведь смогу.

>Ну или привести примеры злых инноваций, было бы интересно послушать.

Японское мясо из **вна 8-о (я не шучу!) Тому профессору даже какую-то первую японскую премию дали. Так что думай _что_ ты ешь, когда берёшь какую нибудь контрабандную колбасу :-D

>Я бы к ним возможно отнес электро самокаты, но это проблема не технологии, а тупых людей и отсутствия законодательства.

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



"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 20:56 
> Причём некоторые по глупости людской, а некоторые - по злобе и жадности
> ... вот COVID к примеру.

Хм.. т.е раньше пандемий не было?
Ну там испанка или чума? Это как раз не новое, а уже хорошо пережитое (и забытое) старное.
Но д-бы как в 19хх года отказывались носить маски, так спустя 100 лет повторяли.

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

Давай по буквам прочитаем фразу "это не значит, что будущее приносит только хорошие инновации. Зачастую наоборот."
Слова "Зачастую наоборот" как бы отрицают "приносит только хорошие инновации".
Подумай над этим. Можешь еще почитать про логическое отрицание.

> Да - могу. Это будет жутко неудобно, но ведь смогу.

А так же от образования, общественного транспорта, средств связи..
Уйти в лес и жить там отшельником..
Но зачем так жить? (с)

> Японское мясо из **вна 8-о (я не шучу!) Тому профессору даже какую-то первую японскую премию дали. Так что думай _что_ ты ешь, когда берёшь какую нибудь контрабандную колбасу :-D

Думаешь в местной колбасе овна меньше?
Вспомни про завод сыра в славном г.Омске, гда работники купались в сырье)

> Электросамокат может кого то убить из-за наездника, это да. Но по сравнению с AI который может в лучшем случае угрохать всё человечество, а в худшем превратить его в стадо - это добрая инновация :)

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

По поводу ʼуничтожитьʼ, так человеки отлично друг друга уничтожают.
Зато ворзможно мы сможем погенерить картинки кошкодевочек, перед ядерной войной.



"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 18:38 
И дырявый код был нормой. Сейчас хотя бы смотрят с осуждением

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено мяв , 25-Сен-24 02:42 
почему бы и нет?
точнее, как.. я понимаю, где это может привести к оверхеду, но добавить интерфейс управления этим "сборщиком мусора" никто не запрещает и это будет кратно проще, чем free() вызывать:
вместо постоянного "а не забыли ли мы free(), не сделали ли дважды?", раз в год возникает "а не усмирить ли тут компилятор?".

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено мяв , 25-Сен-24 02:34 
так это не сборщик мусора, вроде?
подсчет во время сборки ж происходит.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 26-Сен-24 01:26 
>подсчет во время сборки ж происходит.

Подсчёт идёт в рантайме, код подсчёта добавляется в момент сборки


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:28 
> rust с автоматическим сборщиком мусора.

WAT? Это что-то новенькое...
А можешь показать где в расте автоматический сборщик мусора есть?
Только именно в языке, а не в сторонних крейтах.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Ахз , 24-Сен-24 13:57 
>  вставляя соответствующие инструкции непосредственно в сгенерированный код

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:18 
>>  вставляя соответствующие инструкции непосредственно в сгенерированный код

Я сейчас расстрою кекспертов, но с такой "логикой" оно даже в сишке есть. man leave/add *sp,X/mov *bp, Y
man __attribute__((cleanup))



"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:25 
Не расстроишь. Область видимости != авторасстановка free().

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:36 
> Не расстроишь. Область видимости != авторасстановка free().

Расстрою - в примере совсем не все (а лишь гцц-шный атрибут) из раздела "область видимости".
ну и авторасстановка free() != сборщик мусора
как впрочем и "область видимости"  ⊂ "время жизни"
как впрчем "автоматическое освобождение" != free()

Впрочем, заявление "Примерно то же самое делает swift и nim. Возможно, ещё  haskell." уже очень хорошо показало уровень и ценность кекспертизы.



"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:41 
Много воды, умных слов, а по сути где? Просвяти, в чём отличие от nim в rust? В обоих случаях авторасстановка функций освобождения.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:02 
> Много воды, умных слов, а по сути где?

Лучше много воды и умных слов, чем выброс метана^W^W какая-то собственная терминология ...
> Просвяти, в чём отличие от nim в rust? В обоих случаях авторасстановка функций освобождения.

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



"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 16:21 
Признаю, был неправ. Но это не отменяет факта, что это gc, хоть и при компиляции. Не всегда такое умное освобождение способствует приросту скорости работы.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено morphe , 24-Сен-24 16:35 
Память всегда утекать должна, или какая тут альтернатива? Освобождения памяти нужны только там где происходят аллокации, т.е в сишном коде у тебя оверхед будет тот же, но free нужно самому дёргать

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 17:25 
Иногда небольшая утечка лучше, так как можешь спланировать время (условие), когда освобождение не потратит ценные ресурсы в конкретный отрезок времени. Не везде такое требуется, согласен.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 19:15 
Если произошла утечка, то память вы уже не освободите. Вы хотя-бы читайте значение терминов перед использованием. И да, арены памяти изобретены, так что описываемая вами проблема неактуальна никогда.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено morphe , 25-Сен-24 02:17 
> Иногда небольшая утечка лучше, так как можешь спланировать время (условие), когда освобождение
> не потратит ценные ресурсы в конкретный отрезок времени. Не везде такое
> требуется, согласен.

Так и в Rust тебя никто не заставляет сразу ресурсы освобождать
Если ты сохранишь аллокацию в другое место/отправишь в другой поток - то borrow checker это увидит и не будет вставлять деаллокацию, значит она произойдёт в другом месте
В Rust RAII же обычный


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 19:05 
>Много воды, умных слов, а по сути где?

В умных словах. Это особые слова, называются термины
>Просвяти, в чём отличие от nim в rust? В обоих случаях авторасстановка функций освобождения.

Опять месные эксперты, с своим собственным толкованием терминов, диаметрально отличающимся от принятого в индустрии.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 15:13 
И опять одна вода от местного эксперта.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:37 
Ты не знаешь, что такое сборщик мусора, смирись

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 15:42 
А ты знаешь, но нам не расскажешь.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Вася Пупкин , 24-Сен-24 14:12 
у с++ по твоему тоже гц если по выходу из скоупа деструктор сам вызывается?

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 14:17 
Это область видимости.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 18:29 
"Вы не понимаете, это другое" теперь добралось и до IT.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 18:31 
Место проклятое (C)

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 18:34 
>Только первый язык стыдливо отрицает наличие gc.

Аноним выше некомпетентен. Разница между моделью rust, где осовобождение памяти основано на синтаксической области видимости, языком только на счётчике ссылок и полноценным сборщиком мусора - огромна.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 18:53 
Не так уж и огромна. Разница в том, где основные накладные расходы: во время компиляции или во время использования.
То, что там есть разница во внутреннем устройстве – да есть.
Но внешне это разные виды автоматического управления памятью.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 19:17 
Это различие и порождает разницу в расходах. Почему вы смешиваете разные технологии в одну кучу?

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 15:15 
Кто смешивает? Утверждается, что автомобиль ездит, что бензиновый, что дизель.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 17:14 
Плохая аналогия подобна котёнку с дверцей

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Анонимъ , 25-Сен-24 10:07 
В rust приходится порой обходить ограничения borrowchecker, так как он мешает. И одним из способов является... arc! Та-дам, счётчик ссылок в rust, да.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Анонимъ , 25-Сен-24 10:08 
Более того, это в базе: std::sync::Arc.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 25-Сен-24 17:13 
Вы понимаете разницу - всё управление памятью через счётчик ссылок или счётчик ссылок лишь иногда, по потребности? Так то и gc можно использовать, но это не означает, что любой код - это arc или gc.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:20 
> Проблема проявляется в ветке Nix 2.24 и устранена в выпуске 2.24.6.

К счастью в NixOS до сих пор 2.18 даже в unstable


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 12:34 
Для отдельной установки nix использовалась уязвимая версия.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Ося Бендер , 24-Сен-24 12:37 
Да, уж. Сливай воду это называется. Ждем-с 30 сентября, и быстро собирать бот-сетку, пока мамкины админы будут обновляться...

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 14:36 
> выявлении критической уязвимости, затрагивающей дистрибутивы GNU/Linux
> и позволяющей удалённо без прохождения аутентификации добиться выполнения кода в системе

Что это за почтальон Печкин? У меня есть вулн, но вам его не покажу! Но он стращный, это 10 из 10! Зато наезды на майнтайнеров, разработчиков и проч. Отличный подход к репортам CVE.

На мой вкус: вывалить репорт/poc в рассыль интересантам, сказать что через N дней это станет в паблик, do whatever f.... you want, и - если обработаете это хреново, то в репорте это будет упомянуто! Такой "жесткий" протокол взаимодействия некоторым - таки - понятнее.


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 24-Сен-24 14:49 
Никс используют военные. Поэтому все сложно.  Возможно тут защищают эксплуатанта уязвимости а не пользователей.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено 1 , 24-Сен-24 14:57 
Ну анонс-то про весь гнутый линyпс (а м.б. и даже про бздю). Так что если и эксплуатанта защищают, то глобального.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 26-Сен-24 17:36 
Это связано с тем, что вы не владеете английским языком и не можете прочитать первоисточник. Этот неаутентифицированный RCE, затрагивающий все системы GNU/Linux и другие, был раскрыт разработчикам уязвимого программного обеспечения (glibc, Linux kernel, OpenSSH или что-то другое) три недели назад.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 26-Сен-24 23:04 
Ключевая фраза в опусе того открывателя уязвимостей "And YES: I LOVE hyping the sh1t out of this stuff because apparently sensationalism is the only language that forces these people to fix."

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


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 27-Сен-24 00:22 
Почему разработчики не опубликовали это три недели назад, а вместо этого согласовали с нашедшим отсрочку полного раскрытия? Давайте обсудим это менее чем через две недели.

"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено mos87 , 24-Сен-24 15:13 
>в формате NAR

ну насчёт никсосников никто и не сомневался


"Уязвимости в PCP и Nix, позволяющие поднять привилегии в сис..."
Отправлено Аноним , 26-Сен-24 17:51 
Почему никто? Я хотел перейти на NixOS, но всё-таки (из-за невозможности установки без Интернета) выбрал Ubuntu.