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

Исходное сообщение
"Уязвимость в GNU screen, позволяющая выполнить код с правами root"

Отправлено opennews , 12-Май-25 23:52 
В консольном оконном менеджере (мультиплексоре терминалов) GNU screen, предоставляющем многооконный интерфейс в консоли, выявлено  5 уязвимостей. Наиболее опасная проблема  (CVE-2025-23395) позволяет получить права root в системе. Исправление выключено в состав сегодняшнего выпуска screen 5.0.1...

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


Содержание

Сообщения в этом обсуждении
"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Витюшка , 12-Май-25 23:52 
Некорректное использование функции strncpy()...

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 12-Май-25 23:59 
приводящее к аварийному завершению при выполнении специально оформленных команд.

Вы же вроде в расте как раз такое и любите - чуть что - сразу паника (аварийное завершение)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено НяшМяш , 13-Май-25 00:17 
А вы в сяшечке всё так же любите игнорировать предыдущие 4 уязвимости, лишь бы растовиков попинать. Почитал описание функции strncpy и за голову схватился - словосочетание "behavior undefined" встречается аж 3 раза. Мы уж лучше в расте красиво навернёмся с подробным стектрейсом и ошибкой, ничего при этом не испортив, чем как сяшечники звучно оподливившись в шаровары.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 00:48 
> Мы уж лучше в расте красиво навернёмся с подробным стектрейсом и ошибкой

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Rev , 13-Май-25 02:14 
Да-да, только никто этого не делает :(

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено anonymous , 13-Май-25 12:08 
Делают.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:24 
> Да-да, только никто этого не делает :(

В том то и проблема что делают.
Каждый раз заново и каждый раз получается уродский велосипед.
А потом RCE в самописном split string.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:31 
> Да-да, только никто этого не делает :(

Гнусный п...ж, я себе именно  так и сделал, завел struct с указателем на строку и .len - и вот оно. Но увы - это приносит часть "паскалепроблем". В том смысле что отдать такое допустим системным вызовам и функциям либсы и проч - несколько сложнее.

Более того - так можно и .maxlen хранить и юзать всякие getters/setters и тому подобное ибо напрямую вы с таким типом не сможете работать так сразу - защитив себя от прострела пяток. Но к сожалению этот маневр не бесплатен и начинает попахивать занудством типа паскаля или хруста.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:36 
> Гнусный п...ж, я себе именно  так и сделал, завел struct с указателем на строку и .len - и вот оно.

Т.е написал очередной кривой велосипед.
А нормально оно должно быть сразу в std. Ну если говорить о нормальных языках, а не о "недоязыке ассемблере переростке".

>  Но увы - это приносит часть "паскалепроблем". В том смысле что отдать такое допустим системным вызовам и функциям либсы и проч - несколько сложнее.

Если бы либсы писалась с такой же парадигмой и там были стандартные (описанные в стандарте строки) - то проблем бы не возникло.

> Но к сожалению этот маневр не бесплатен и начинает попахивать занудством типа паскаля или хруста.

Занудством?
Лучше быть занудой чем бракоделом))


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:41 
> Т.е написал очередной кривой велосипед.

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

И при этом - позволяет довольно неплохо себя расширять. И нет вот этого деления на богов и смертных. Системщики все - вхожи на пантеон. By design. Иначе это - вообще подделки и пародии, а не...

> А нормально оно должно быть сразу в std. Ну если говорить о
> нормальных языках, а не о "недоязыке ассемблере переростке".

А еще камлать на богов, признав себя вторым сортом - и они начнут гнобить вон тех, с разделением на 1 и 2 сорт. Ну такое себе в целом. И не то чтобы незаслуженно - ибо большая часть тех, с "нормальными языками" на поверку фундаментальные вещи типа алгоритмики потом как раз и не может - от слова вообще. Деградировав до генераторов третьесортного glue code по сути.

> Если бы либсы писалась с такой же парадигмой и там были стандартные
> (описанные в стандарте строки) - то проблем бы не возникло.

Ух, да, теперь еще объясните плиз операционкам написанным 30 лет назал что им надо все сисколы переделать. Убив совместимость с старым софтом в ноль. Иначе эта трансляция никуда не денется, как максимум ее заметут под ковер но это будет новый источник грабель. Хрустики уже даже проверили, получив неск CVE на стдлибу (лол). Да и жабы с дотнетами - тоже.

> Занудством?
> Лучше быть занудой чем бракоделом))

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:46 
>Но си прекрасен тем что как раз нет переотожраных дефолтных либ превращающих что угодно в "очередную жабу" когда надо качать 100 метров рантайма на люой пшик, а то и дотнет с 4+ гигз ассемблей

Это проблема только для первой программы на дотнете или жабе. Вторая программа будет весить по размеру jar файла, так как рантайм уже установлен. А раз разговор про сишников, то они могли бы и so библиотеку собрать, не облезли бы.
>И при этом - позволяет довольно неплохо себя расширять

Расширять си невозоможно. По причине того, что каждое такое расширение будет локальным только для текущего приложения:
>Но увы - это приносит часть "паскалепроблем". В том смысле что отдать такое допустим системным вызовам и функциям либсы и проч - несколько сложнее.

Как сказал один умный человек
>Любая достаточно сложная программа на Си или Фортране содержит заново написанную, неспецифицированную, глючную и медленную реализацию половины языка Common Lisp

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

Вы лучше покажите, где это деление есть. В том же Ocaml, у вас из коробки идёт только относительно бедная стандартная библиотека. Хотите стандартную библиотеку с батарейками - она написана отдельно. Хотите поддержку json? Она идёт отдельно. Хотите многопоточность? Она тоже отдельно. Хотите сетевую библиотеку? Она, как вы уже могли догадаться, тоже идёт отдельно. Библиотека для работы с терминалом? Опять отдельно. Так что, если вас по каким-то причинам не устраивает реализация для работы с чем-то, то вы просто берёте и заменяете её на что-то другое.
>Системщики все - вхожи на пантеон

Ровно до тех пор, пока функционал может быть написан в одиночку. Здесь несколько человек публиковали ссылки на свои проекты, я там смотрел только на реализацию xml парсера. Ошибки там были детского уровня, но на каждую такую ошибку мне говорили, что они и не собирались писать правильно. Они даже не пытались возразить, что их реализация корректна.
>бо большая часть тех, с "нормальными языками" на поверку фундаментальные вещи типа алгоритмики потом как раз и не может - от слова вообще

Я не могу согласится с вашими словами, поскольку это требует признания, что сишники умеют в алгоритмы. К сожалению, я не помню какой был второй проект, запомнил только первый https://github.com/ProfessorNavigator/mylibrary/blob/30daf3a...
Человеку сказали, что так писать нельзя, сказли даже, что это вредит производительности. Прошло несколько версий, человек этот момент до сих пор не исправил. Во втором проекте, который я видел, была точно такая же ошибка. Это ошибка настоящего сишника, который знает алгоритмы достаточно, чтобы хвастаться, но недостаточно, чтобы писать нормальный код
>Ух, да, теперь еще объясните плиз операционкам написанным 30 лет назал что им надо все сисколы переделать

Зачем? Ocaml, rust, go, вполне себе успешно скрывают от программистов устройство системных вызовов. Если они справились, то сишники тоже смогли бы это сделать
>Иначе эта трансляция никуда не денется

А зачем вам её куда-то девать?
>как максимум ее заметут под ковер но это будет новый источник грабель

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

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Совершенно другой аноним , 14-Май-25 09:22 
> К сожалению, я не помню какой был второй проект, запомнил только первый https://github.com/ProfessorNavigator/mylibrary/blob/30daf3a...

А где Вы там увидели C? там как-раз С++, с std::string и std::vector<>

Для С уже тоже строки предлагают стандартизировать (n3210) и даже наворачивают что-то ещё более монструозное (n3306), как по мне. Хотя, опять-же, как по мне, лучше-бы что-то из fmemopen(), open_memstream() и open_wmemstream() стандартизировали. Ну или в крайнем случае что-то типа glib-овское..


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 11:29 
>А где Вы там увидели C?

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 21:30 
> Это проблема только для первой программы на дотнете или жабе.

К счастью у меня таких программ - ноль, и я не имею тех проблем как категории :). И да, скачка 100500 гигазов рантайма - повод НЕ ставить такие программы при прочих равных.

> А раз разговор про сишников, то они могли бы и so
> библиотеку собрать, не облезли бы.

В принципе - могли бы. Но все равно есть нюансы. Часть из них - таки по линии совместимости и того что апя систем делали тоже без учета вон того.

> Расширять си невозоможно. По причине того, что каждое такое расширение будет локальным
> только для текущего приложения:

Ну вообще-то генерики или auto - расширили таки для всех. При помощи указателей на функции можно даже нечто типа методов делать. А всякими setjmp/longjmp можно и корутины запилить, внезапно.

И между прочим прикрутив вооон ту либу - там не то что сишка расширится, а HTTP сервак на полстранички текста влезет.

>> Любая достаточно сложная программа на Си или Фортране содержит заново
>> написанную, неспецифицированную, глючную и медленную реализацию половины
>> языка Common Lisp

Это, конечно же, проекция лиспера на тему "когда в руках молоток все вокруг кажется гвоздями".

> же строки, парсер xml или какой-то другой функционал, сишники раз за
> разом пишут одно и то же с нуля. Каждый раз с
> похожими багами.

Вообще-то написали, libxml например. Сюрприз!

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

Тот же Ocaml - просто всем похрен. Какая разница что там?

> Хотите стандартную библиотеку с батарейками - она написана отдельно.
> Хотите поддержку json? Она идёт отдельно. Хотите многопоточность? Она тоже отдельно.

И чем это отличается от си? Там тоже парсер жысона добавляется как apt install somelib-dev - и вот оно, парсер чего я там хотел. Который я, конечно, не буду писать сам в этом случае.

> не устраивает реализация для работы с чем-то, то вы просто берёте
> и заменяете её на что-то другое.

Не понимаю чем это от си отличается в результате? Кроме того что - сильно менее популярное и нишевое?

> Ровно до тех пор, пока функционал может быть написан в одиночку.

Совершенно ортогональные соображения. На пантеоне можно фигачить и в эн рук.

> Здесь несколько человек публиковали ссылки на свои проекты, я там смотрел только
> на реализацию xml парсера.

Если кто-то лезет писать свой парсер XML - он все же донкихот. Потому что это очень жирная и фичастая спека. И это тот случай когда лучше - готовую либу все же взять. Даже если вы и можете парсер написать.

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

Это наверное профессор навигатор был, тот еще "девелопер" софта.

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

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

> Это ошибка настоящего сишника, который знает алгоритмы достаточно, чтобы хвастаться, но
> недостаточно, чтобы писать нормальный код

Навигатор - вообще не разработчик софта как таковой. И прогармить он научился на уровне уроков информатики буквально. И в UI/UX настолько же шарит. Типичным сишником или чем либо еше он конечно не является. Такие вообще обычно на питоне пишут, если что.

> Зачем? Ocaml, rust, go, вполне себе успешно скрывают от программистов устройство системных
> вызовов. Если они справились, то сишники тоже смогли бы это сделать

У них не было требования держать совместимость с древним софтом - за отстутствием этого софта. И да, вы можете скрыть сисколы поставив вон те либы, например.

> Сейчас программы сишников могут упасть в любой строке, а после этого падать

Я бы и правда переделал работу с строками в си, но - дофига софта отвалится.

> будут только при системных вызовах.

От крутых багов соответственно не избавит. Это самый фиговый класс багов и хрустики уже проверили, словив CVE прямо на стдлиб.

>>Мир принадлежит бракоделам, а зануды осчастливили нас лишь бесполезными концептами
> Удивительно, но всё меньше проектов начинают писать на си.

Удивительно, но без си вы не сможете даже пискнуть на опеннет. Когда сможете - тогда и приходите с этим.

> И если раньше конкурентом си был паскаль, то сейчас те самые безопасные языки от зануд

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 23:16 
>И да, скачка 100500 гигазов рантайма - повод НЕ ставить такие программы при прочих равных.

Это точно так же повод не ставить gtk и qt, а то что это они гигабайты кода ставят. Только вот и софта у вас почему-то почти не останется.
>При помощи указателей на функции можно даже нечто типа методов делать

Вам нужна сама возможность расширения, без учёта удобства использования? Даже гномеры ужаснулись тому что получилось, и по быстрому изобрели Vala. А вообще, подобное можно сделать на любом языке с функциями высшего уровня
>А всякими setjmp/longjmp можно и корутины запилить, внезапно

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

Это уже явная подмена понятий. Библиотеки не расширяют язык. У абсолютно любого языка картина будет абсолютно аналогичная.
>Это, конечно же, проекция лиспера на тему "когда в руках молоток все вокруг кажется гвоздями".

Это объективный факт. Сишники любят велосипеды. Очень любят. Может быть плюсовики любят так же. Вот вам прекрасная статья:
Как переписать код на Rust - https://habr.com/ru/articles/511478/
Во-первых, там зачем-то реализуется хеш-таблица(зависимости не изобретены). Во-вторых
>Помните тот прошлый пример, где tvmi падал, получая три уровня глубины кода? Как приятный побочный эффект, после переноса кода на Rust вложенные уровни просто работают.

То есть вместо того, чтобы реализовывать бизнес логику, с произвольной глубиной, сишники сконцентрировались на алгоритмах, да так, что даже при не самом интенсивном использовании вылезла ошибка
>Вообще-то написали, libxml например. Сюрприз!

Расскажите это здешним кодерам. Я вам даже ссылку на один из проектов привёл. Второй увы забыл.
>И чем это отличается от си?

Вы же сами утверждали, что только в си нет разделение на настоящих программистов, и тех кто только склеивает готовый код. И тут сами же говорите, что это не так
>Там тоже парсер жысона добавляется как apt install somelib-dev

Непонятно какой версии, непонятно, есть ли нужный пакет в дистрибутиве, непонятно как он называется, непонятно, какой командой его ставить. Вам нужно объяснять, чем это плохо, или сами догадаетесь?
>Если кто-то лезет писать свой парсер XML - он все же донкихот

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

О, а вот и стандартная отмазка "настоящий сишник". Разумеется, каждый разоблачённый в г-коде сишник объявляется ненастоящим. Авторы GRUB, которые допустили ошибку с 28 нажатием backspace тоже ненастоящие сишники. Авторы screen, xorg, и вообще всех проектов, где найдены уязвимости
>он вообще - не разработчик софта как таковой, как следует из ника

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

Просто издайте neon gensis c string lib, и ничего ни у кого не отвалится. Правда потом останется переписать кучу существующего кода, но это так, мелочи
>От крутых багов соответственно не избавит

Зато избавит от кучи не крутых. Неужели вы не понимаете, что даже если всего лишь половина текущих багов исчезнет, то это уже хорошо? Да даже если десять процентов исчезнет, это уже больше нуля
>Удивительно, но без си вы не сможете даже пискнуть на опеннет

Просто для справки: существует Redox OS, существует Mirage OS. Как следствие, чем дальше, тем меньше надобность именно в си
>Когда сможете - тогда и приходите с этим

Уже в этой теме вначале некоторые деятели утверждали, что альтернатив screen на rust не существует, а сразу же, как только им превили сразу несколько, сказали, что не считается. Разумеется в следующей теме они точно так же скажут, что софта на расте нет, притворившись, что их никто не уличал во лжи во всех предыдущих темах


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 12:22 
>> Т.е написал очередной кривой велосипед.
> В каком-то роде - да.

Ну хоть в чем-то мы сошлись во мнении)

> Но си прекрасен тем что как раз нет переотожраных дефолтных либ превращающих что угодно в "очередную жабу" когда надо качать 100 метров ....

О бог-машина! Целый 100 мегабайт!!1
Тут выбор прост - или тыщу раз проверенные системные функции или очередной велосипед порождающий очередную CVE/RCE.

>> А нормально оно должно быть сразу в std. Ну если говорить о нормальных языках, а не о "недоязыке ассемблере переростке".
> А еще камлать на богов, признав себя вторым сортом - и они начнут гнобить вон тех, с разделением на 1 и 2 сорт.

Боги это кто? Те кто не смогли 2 числа без UB сложить?
Где енумы это "всё инт" в итоге в коде сравниваются апельсины с крокодилами?

Не про них ли создатель ЯП писал "The fundamental problem is that it is not possible to write real programs using the X3J11 definition of C. The committee has created an unreal language that no one can or will actually use."

> большая часть тех, с "нормальными языками" на поверку фундаментальные вещи типа алгоритмики потом как раз и не может - от слова вообще.

Эээ? Неужели на каком-то питон нельзя написать разложение фурье или какие-то элиптические кривые? Студенты в университете реализуют Диффи—Хеллмана на лабораторках.

> Деградировав до генераторов третьесортного glue code по сути.

Другой вопрос - зачем писать одно и тоже кучу раз?

> Ух, да, теперь еще объясните плиз операционкам написанным 30 лет назал что им надо все сисколы переделать.

Прикинь да. Выкидывается старое, пишется новое.

> Убив совместимость с старым софтом в ноль.

Если софт нужный - перепишут.
Если нет - значит был не нужный.
Луддиты будут вопить что им срочно нужно самое последнее ядро и новейший софт на железе 30 летней давности. Но слушать их - просто преступление перед прогрессом.

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

Вранье) Без зануд и их концепций мы бы до сих пор ездили бы на телегах.
Построить современную технику без кучи правил.
Посмотри сколько требований для automotive или авиа.
Да, есть те кто нарушает, зато потом отгребают.



"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 08:10 
> Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки на корню

Убрать ошибку на корню - это юзать нормальный язык вместо С.

Но это ж надо уметь делать выводы из полувека наступаней на грабли...


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:33 
> Убрать ошибку на корню - это юзать нормальный язык вместо С.

Странно, но вон тот питонячий бот умер при первой попытке потрогать его палочкой. Оказывается хреново валидировать пользовательские данные можно не только на си :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:58 
Это правда, писать плохой код можно на любом языке. Так что пока компилятор не начнёт бить кодеров линейкой по пальцам, хороший код не появится.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:45 
> Это правда, писать плохой код можно на любом языке. Так что пока
> компилятор не начнёт бить кодеров линейкой по пальцам, хороший код не
> появится.

Как вы себе представляете компилятор знающий вместо програмера как валидировать входные данные в конкретно вот этой вот задаче? Это по моему надо AI c интеллектом superhuman, и даже так - он тренирован на глючном материале созданном людьми, поэтому и тут без гарантий :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:52 
Вот действительно, как. Проблемыне места си уже давным давно изучены, систематезированы, и проанализированны, уже реализована целая куча инструментов, а сишники до сих пор живут как в 1970, когда си ещё считался хорошей идей. Вы для начала решите насущьные проблемы, а потом переживайте о редких и далёких

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 11:11 
широкая душа краев не видит

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:30 
> Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки

Мешает традиционная сишечная халатность.

Писать нормальный строковый тип - это же что-то там шевелиться надо, тестировать, да и мысли крамольные в голову лезут типа "ну и накой я изобретаю велосипед вместо использования C++?".

А вот православный пердолинг с буферами и str*cpy() - вот он, уже готовый под рукой!


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 13-Май-25 20:17 
> Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки на корню.

Pascal уже есть ;-)
Он Сям - ровесник. И что - помогло? :)

Не упрощайте, нет в практическом программировании ничего простого. Увы.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 21:26 
>> Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки на корню.
> Pascal уже есть ;-)
> Он Сям - ровесник. И что - помогло? :)

Помогло, выше уже скидывал ссылку https://www.adacore.com/uploads/books/pdf/Safe_And_Secure-Ru...

К тому же в любом современном яп есть динамически расширяемые массивы и строки.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:48 
>> Pascal уже есть ;-)
>> Он Сям - ровесник. И что - помогло? :)
> Помогло, выше уже скидывал ссылку https://www.adacore.com/uploads/books/pdf/Safe_And_Secure-Ru...

Если это про язык Ада, то програмеры на нем - угробили Arian V. Заскорив самый дорогой баг в истории человечества, на минуточку.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 14-Май-25 19:32 
>>> Pascal уже есть ;-)
>>> Он Сям - ровесник. И что - помогло? :)
>> Помогло, выше уже скидывал ссылку https://www.adacore.com/uploads/books/pdf/Safe_And_Secure-Ru...
> Если это про язык Ада, то програмеры на нем - угробили Arian
> V.

А причем там Ада конкретно?

> Заскорив самый дорогой баг в истории человечества, на минуточку.

Суммарно на си баги дороже вышли все.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 14-Май-25 19:36 
>>> Pascal уже есть ;-)
>>> Он Сям - ровесник. И что - помогло? :)
>> Помогло, выше уже скидывал ссылку https://www.adacore.com/uploads/books/pdf/Safe_And_Secure-Ru...
> Если это про язык Ада, то програмеры на нем - угробили Arian
> V. Заскорив самый дорогой баг в истории человечества, на минуточку.
> Запуски ракеты-носителя «Ариан-5»Первый испытательный полёт «Ариан-5» состоялся 4 июня 1996 года и был неудачным. Ракета-носитель была подорвана на 34-й секунде полёта по причине неисправности в управляющем программном обеспечении, которая считается самой дорогостоящей компьютерной ошибкой в истории. Конвертация данных из 64-разрядного числа с плавающей запятой в 16-разрядное привела к зависанию компьютера. Процедура на языке Ада, обрабатывающая эту исключительную ситуацию, была исключена из соображений сохранения производительности системы.

То есть программисты убрали ненужный код, который оказался нужным, и все сломалось? А виноват при этом яп? При этом все остальные 116 запусков в период 1996—2023 годы тоже были на этом яп?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 01:18 
> Мы уж лучше в расте красиво навернёмся с подробным стектрейсом и ошибкой,

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

>  ничего при этом не испортив

Да, сложно испортить код, которого нет.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 09:21 
Молодой человек не слышал про Zellij?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 10:01 
Не трать зря время. По расту методичка такая: на нём ничего не написано, а если что-то и написано, то это безоговорочно какая-то смешная или ненужная ерунда для пацанят на электроскутерах.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 13:53 
Нет, не слышали. Что-то ещё, кроме фаерфокса, вспомните?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:36 
> Молодой человек не слышал про Zellij?

Что это еще за зелибоба с невыговариваемым названием? Может, хрустикам для начала научиться - хотя-бы выбирать нормальное название проекта, более-менее описывающее его функциональность? Видите, программирование надо начинать с БАЗОВЫХ вещей. Я понимаю что вы только что разучили кучу заклинаний, уверены что умный компилер вас от всего спасет, так что весь мир у ваших ног. Но есть нюансы... :)

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 19:52 
Впервый раз услышал. Кого не спрошу все либо на tmux, либо на screen.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:53 
А вы в блокнотик себе запишите, чтобы в следуюещем месте сказать "второй раз об этом слышу".

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:34 
> Ну, судя по тому, что никто не использует rustscreen

Ой, а типа gnu screen кто-то использует))
Не, ну найдутся пару извращенцев, которым любой kaл, лишь бы gnu... но все нормальные пользуются tmux.

> Да, сложно испортить код, которого нет.

Таки есть. Zellij например. Или  wezterm.
Но откуда хейтерочку об этом знать.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено streametch , 13-Май-25 13:33 

>> Не, ну найдутся пару извращенцев, которым любой kaл, лишь бы gnu... но
>> все нормальные пользуются tmux.

screen умеет открывать COM порт, а tmux попсовый нет, вот и думай что тру, а что kал


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:32 
> screen умеет открывать COM порт, а tmux попсовый нет,

ух, вот целый день сижу и компорты открываю)

> вот и думай что тру, а что kал

Москвич-408 можно было заправлять бензом с ослиной моchой, но почему-то очереди из желающих окунуться в прдолинг с устаревшей техникой как-то не наблюдается.
Ты бы еще поныл, что в городе лошадь припарковать негде и овес не продают на каждом шагу.



"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:42 
>> screen умеет открывать COM порт, а tmux попсовый нет,
> ух, вот целый день сижу и компорты открываю)

Для одноплатников - актуально. Сериальные шнурки так то довольно актуальная штука (низкоуровневый, простой интерфейс, всего 3 провода на минималках, пишет даже ранний дебаг с факапами ядра). Конечно про RS232 все забыли, но 3.3V версия идеи - живет себе, как и usb-to-uart шнурки, имя которым легион. У любого кто эмбедовкой занимается этого добра целый пучок есть как правило. Иначе как вы вообще узнаете на чем заткнулся старт системы на вон том одноплатнике? :)

> Москвич-408 можно было заправлять бензом с ослиной моchой, но почему-то очереди из
> желающих окунуться в прдолинг с устаревшей техникой как-то не наблюдается.

Кто вам сказал что сериальные шнурки устарели? Это старые песни на новый лад. Более того - ряд девайсов типа сотовых модемов вывешивают "виртуальный uart". Это конечно абстракция, но в силу поддержки ее кучей софта она как раз удобна тем что новый софт специально для - писать не надо.

> Ты бы еще поныл, что в городе лошадь припарковать негде и овес
> не продают на каждом шагу.

Внезапно кроме com портов - у всех MCU и SoC есть uart для отладки или - вот - развешивания там управляющей консоли. Доступ к uart пруфает что у меня "физический доступ к оборудованию" поэтому там можно - тадам - управлюящую консоль развесить.  И туда же валить допустим лог загрузки. Чтобы в случае чего видеть - а на чем это встряло.

Это все - актуально, производится миллионами, юзается толпой народа и проч. Но вы можете показать вон тем нерюхам как это все делать правильно, конечно.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 18:09 
Чтобы посмотреть «на чем заткнулся старт системы на вон том одноплатнике» сабж не нужен. На любой платформе есть масса способов это сделать. Но «толпа народа» заучила заклинание со Stack Overflow, в котором используется screen.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:53 
> Чтобы посмотреть «на чем заткнулся старт системы на вон том одноплатнике» сабж
> не нужен.

В принципе - да, но в целом бывает удобно его прицепить, раз уж он это может. Потому что потом через тот же шнурок и порулить можно. Актуально при начальной сборке и тестировании образов, девелопе чего-то под такой таргет и проч.

> На любой платформе есть масса способов это сделать. Но
> «толпа народа» заучила заклинание со Stack Overflow, в котором используется
> screen.

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 21:28 
Для уартов есть picocom, зачем эта функциональность в screen?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:54 
> Для уартов есть picocom, зачем эта функциональность в screen?

На случай если этой штукой захочется порулить более плотно и более продолжительное время?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:20 
Запускаешь tmux, в нем запускаешь picocom, дальше как обычно. Заскриптовать если нужно часто, хоть на баше.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 21:32 
> Запускаешь tmux, в нем запускаешь picocom, дальше как обычно. Заскриптовать если нужно
> часто, хоть на баше.

Можно много чего. Но зачем напрягаться больше, если уже есть screen?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 15:49 
> Не, ну найдутся пару извращенцев
> screen умеет открывать COM порт

А вот и первый пожаловал :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 13-Май-25 20:14 
> screen умеет открывать COM порт, а tmux попсовый нет, вот и думай что тру, а что kал

"COM порт" - охренеть ... я такого на лаптопчегах уже с десятилетие не видел :)
Да и в серверах - только если карту воткнёшь ...

И почему поддержка этого - важна?

А если это важно, то почему я не могу поставить какой нить тоненький tio и перекрыть вообще всё, что можно с последовательным портом делать?

По секрету: он вообще "was originally created as an alternative to screen for connecting to serial devices when used in combination with tmux."

Дарю, оно вещЪ! :)
Ну мне по-крайней мере хватило чуть более чем полностью :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено RHEL fan , 13-Май-25 23:11 
В сетевом оборудовании зато их дофига еще

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:25 
Для работы с com-портами в любой UNIX-системе есть специальные программы, которые можно запускать в tmux.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 22:26 
> Таки есть. Zellij например. Или  wezterm.

А кто ими реально пользуется в работе? Еще раз почти все примеры из жизни - это tmux или screen.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 22:28 
> Но откуда хейтерочку об этом знать.
> хейтерочку
> чем как сяшечники звучно оподливившись в шаровары.

А эта фраза растовщичка нечто другое? Тут хейта никакого нет? Или это другое?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 00:02 
>А эта фраза растовщичка нечто другое?

Я хоть и не пишу на расте, и вообще считаю, что лучше бы вместо раста был бы ATS, но упорство, с которым сишники отрицают проблемы - удивительно. Казалось бы, в начале нулевых, когда языки с без сборщика мусора и безопасной работой с памятью только проектировались, надменность сишников "просто нужно быть внимательным" ещё могла быть объяснена. Но в 2025 году, когда rust форсится из каждого утюга, а куча других языков типа Cyclone или ATS пусть и не покорили мир, но известны более чем своим авторам, а общедоступной теории достаточно, чтобы школьник с достаточным количеством свободного времени создал свой безопасный язык, приправив это линейными и зависимыми типами, сишники до сих пор продолжают делать вид, что всё хорошо. Не удивлюсь, если и через тридцать лет, сишники будут и дальше продолжать свою мантру "просто нужно быть внимательными", хотя существующий софт уже давным давно можно будет к тому времени переписать.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 14-Май-25 02:38 
>>А эта фраза растовщичка нечто другое?
> когда rust форсится из каждого утюга

Вот именно. Форсится. Оказывается без unsafe ничего не написать. И нужно быть внимательными, таки да.

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

modula, oberon и ada были гораздо раньше.

> будут и дальше продолжать свою мантру "просто нужно быть внимательными",

В любом нетривиальном коде нужно быть внимательным, вообще без разницы на чем он написан, хоть на питоне. Потому что помимио ошибок с памятью, от логических тебе раст вообще никак не поможет.



"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 11:48 
>Оказывается без unsafe ничего не написать

Пока не будет лечения от рака, все больницы закрыть, врачей разогнать
>И нужно быть внимательными

Давайте, повторите вот это сишное безумие на расте: fork() может потерпеть неудачу: это важно https://habr.com/ru/articles/522208/. Таких примеров куча, и вы и 90% повторить не сможете
>modula, oberon и ada были гораздо раньше.

А кто они такие, что на них нужно обращать внимание? Я немного почитал про них, вот лишь один перл
>А теперь ещё немного Виртовского безумия https://ru.wikipedia.org/wiki/%D0%9E%D0%...)
>Оберон
>>Упрощение синтаксиса
>>Чтобы добиться наибольшей надёжности и производительности трансляции, было предпринято значительное упрощение языка за счёт его отказа от средств, которые были сочтены ненужными
>>[...], оператор for, [...]
>Но потом, Вирт понял, что что-то не то
>>Оберон-2
>>в язык возвращён оператор цикла с шагом FOR;
>>Oberon-07
>>добавлен оператор цикла FOR;

Вот мне интересно, как удаление, а потом возращение цикла for повышает безопасность? И зачем for потребовалось возвращать аж дважды, он что его ещё раз удалил?
>В любом нетривиальном коде нужно быть внимательным, вообще без разницы на чем он написан, хоть на питоне

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

В примере с fork-ом раст отлично помогает. Если вам не хватает раста, то берите хаскель, идрис и ATS. Я против раста, поскольку в нём нет зависимых типов, нужно что-то вроде ATS. Но, я не системный программист, по этому для меня это не в приоритете. Уж лучше будет раст, чем си и кресты.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Совершенно другой аноним , 14-Май-25 14:05 
> Давайте, повторите вот это сишное безумие на расте: fork() может потерпеть неудачу:
> это важно https://habr.com/ru/articles/522208/. Таких примеров куча, и вы и 90%
> повторить не сможете

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 23:26 
>автор статьи не читает документацию

Так в этом и смысл. Для си нужно каждую программу дотошно проверять, и то, легко что-то пропустить
>Он так-же не будет читать и растовскую документацию

В случае rust, он просто получит ошибку типизации, когда kill откажется принимать result. Автор библиотеки однократно делает работу, а дальше уже компилятор  проверяет, что программист ничего не забыл


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 14-Май-25 16:20 
>>Оказывается без unsafe ничего не написать
> Поскольку в хороших языках вам будет активно помогать компилятор.

Как в логических ошибках будет помогать компилятор того же раста? Пример в студию.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 23:29 
Элементарно, сделав некорректные состояния невыразимыми. Вот пример для f#, на rust логика будет точно такая же https://habr.com/ru/articles/424895/

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 15-Май-25 00:31 
> Элементарно, сделав некорректные состояния невыразимыми. Вот пример для f#, на rust логика
> будет точно такая же https://habr.com/ru/articles/424895/

А причем здесь это? Вот есть строка длины n, известной во время исполнения. Рассчитывается индекс i во время выполнения и происходит обращение к строке по индексу str[i]. Раст тут ничем не поможет

use std::io;

fn main() {
    let mut input = String::new();
    io::stdin().read_line(&mut input).unwrap();
    let s: Vec<char> = input.trim().chars().collect();
    
    let mut input = String::new();
    io::stdin().read_line(&mut input).unwrap();
    let idx: usize = input.trim().parse().unwrap();
    println!("{}", s[idx]);
}


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 15-Май-25 10:43 
>Раст тут ничем не поможет

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 15-Май-25 18:40 
Для того чтоб они помогли всего то и нужна сущая мелочь - нужно чтоб на них начали писать,  массово ...

А уже и не начнут. Ну ты же понимаешь на что нонешний AI тренируют?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 15-Май-25 18:50 
>>Раст тут ничем не поможет
> Зато поможет любой язык с зависимыми типами, будь то Idris или ATS.
> Я о зависимых типах писал не раз, даже лично вам, даже
> лично в этой новости. Запишите его себе в блокнотик, будете растовиков
> им попрекать

Уже давно там. Только тяготею к более практичным вещам. Мне ехать, а не шашечки.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _kp , 13-Май-25 01:53 
Так есть и другие способы работы со строками, даже не в C++, но и в С, и в том числе на микроконтроллерах.
А тащить бородатые "стандартные функции", которые на каждый чих надо обкладывать проверками, но на это  все равно где нибудь забьют, так себе стиль.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено анонимммм , 13-Май-25 07:17 
Стандартные строковые функции - идеальны. Делают ровно то, что заявляют. Если не хочется обкладывать код проверками, то эти проверки придётся интегрировать в сами функции, которые тем не менее придётся обкладывать проверками.

"Так себе стиль" - просто норма жизни. Без проверок нельзя.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:36 
>Стандартные строковые функции - идеальны. Делают ровно то, что заявляют

Си идеален, делает то что заявляет. Никто ведь не заявлял, что программы на си будут корректны, правильно? Правильно. Так что всё хорошо, программы на си для того и пишутся, чтобы портить память
>которые тем не менее придётся обкладывать проверками.

Внормальных языках будет ошибка компиляции, если вы проверку забудете.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:23 
Легендарные сишные строковые функции, как будто специально придуманные для переполнения буферов.

Особенно идеальна strncpy. Очевидно, что функция с таким названием копирует строку? А нет, копирует не более n ненулевых байтов из источника и добивает буфер до n нулями (зачем?), ломая инвариант - в буфере после копирования не строка.

Отличная функция для строковой библиотеки, чувствуется могучий дедовский дизайн - собрать столько бесполезной функциональности в одной функции.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 13-Май-25 20:03 
Ты просто не знаешь как CPU строки обрабатывает...
А значит тебе непонятно. Вот ты и злишься. Уже признал тупыми всех, хотя единственный тупой - это ты сам :)

Не надо тебе в Си.
Тебе даже в Питон - не надо.
Дайте ему Logo какой нить :)))))


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 20:44 
CPU никак строки не обрабатывает, нет у него для этого команд.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:25 
> CPU никак строки не обрабатывает, нет у него для этого команд.

А это что?

"SSE4.2 added STTNI (String and Text New Instructions), several new instructions that perform character searches and comparison on two operands of 16 bytes at a time."

Вместо того чтобы исправить дефекты языка, эти д-бы добавляют инструкции для ускорения strlen.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 00:08 
>Вместо того чтобы исправить дефекты языка, эти д-бы добавляют инструкции для ускорения strlen.

Однажды я узнал один ужасающий истина.

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

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

Одно сделать могут, поскольку это тривиально, а другое нет, поскольку это сложно. Это слишком сложно сделать.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Оно ним , 13-Май-25 03:00 
А из предыдущих четырёх раст бы защитил от одной - с состоянием гонки. А остальные точно так же и в расте были бы.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 06:26 
Behavior undefined, это нормально для системного языка программирования. Ненормально когда люди проектирующие язык программирования пытаются полностью устранить Behavior undefined.

Behavior undefined - это просто объективное явление, его невозможно полностью устранить. И наличие в языке behavior undefined, не делает язык автоматически плохим. Вам надо уметь гибко мыслить, шаблонное мышление, это плохо.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено anonymous , 13-Май-25 08:23 
> Behavior undefined, это нормально для системного языка программирования

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:36 
> Ага. Допускаешь ошибку и у тебя удаляет все файлы из корня.

ага, вступил не туда и остался в лучшем случае без пятки, чвкп*дор :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:40 
>Behavior undefined, это нормально для системного языка программирования

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:07 
Так уцелевшие архитектуры тоже содержат в себе кучу легаси.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:26 
Вопрос не в наличии легаси как такогового, вопрос в том, что при программировании в 2025 году под современный гну/линукс, приходится сталквиваться с ограничениями прямоиком из 1970 года, в перемешку с ограничениями всяких экзотических архитектур типа avr. Если бы screen активно исползьовался под тем допотопным юниксом или на микроконтроллере, то это могло бы иметь смысл, а так это ограничения ради ограничений.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 05:40 
У языка Си нет ограничений. Поэтому программист языка Си должен быть дисциплинированным. А у Раста ограничителем является компилятор, поэтому растаман может себя ничем не ограничивать.

Вы путаете.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 23:30 
>Поэтому программист языка Си должен быть дисциплинированным

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 08:32 
По-хорошему, следует признаться себе, что никаких «строк» (в нормальном понимании) в сишечке нет, и избегать библиотечных функций str* как огня.
Но — зачем напрягаться. Что дедам было хорошо, и нам сгодится.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено 12yoexpert , 13-Май-25 10:51 
или уроки учи, str* ты наш

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 11:54 
Деды обижаются.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 00:30 
>> приводящее к аварийному завершению при выполнении специально оформленных команд.
>> Bad strncpy() Use Leads to Crashes when Sending Commands
> Вы же вроде в расте как раз такое и любите - чуть что - сразу паника (аварийное завершение)

Я расстрою очередного (к)експерта, но panic - это _контролируемое_ завершение программой самой себя, в случае непредвиденной (или осознанно проигнорированной погроммистом) ошибки-ситуации.

А не вот это вот любимое Настоящими Погроммистами "мы тут немного попортили память за пределами буфера, вследствии чего код далее делал незнамо что, пока не прилетел SIGABRT" ...


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 01:50 
Дак ведь SIGABRT тоже на сишке написан (в ядре), что не нравится то?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:45 
> Дак ведь SIGABRT тоже на сишке написан (в ядре), что не нравится то?

И примерно настолько же контролируемый - как и panic() хруста по смыслу :). Т.е. если прогер хотел - может перехватить и обработать.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 20:15 
Сишник, проснись! Что ты собираешься обрабатывать, когда у тебя память испорчена? Это в Расте панику можно перехватить и продолжить работу.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:19 
> Сишник, проснись! Что ты собираешься обрабатывать, когда у тебя память испорчена? Это
> в Расте панику можно перехватить и продолжить работу.

SIGSEGV/SIGABRT тоже можно - перехватить. И как вы собираетесь работу продолжать при panic()? Насколько я вижу - в ядре линух сумрачные гении родили новую семантику try_* с ... практически сишной семантикой "а что если память не выделилась?!". Вот как раз чтобы нормально реагировать на случаи "а что если нет?!". И вот блин за что боролись, если сделали - ТО ЖЕ САМОЕ?!


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _kp , 13-Май-25 02:00 
> panic - это _контролируемое_ завершение..

Но не всегда уместное. А вне десктопа и совсем не уместное.

> немного попортили память за пределами буфера

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 03:27 
> А вне десктопа и совсем не уместное.

Ты всё перепутал. Это как раз на десктопе таким пугать пользователя нельзя. А на сервере я как раз хочу чтобы упало, а не тихонько неизвестно как то ли работало, то ли память портило. Как падения софта мониторить давно придумали и решили сотней разных способов. А вот как мониторить порчу памяти до сих пор не договорились.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _kp , 13-Май-25 15:18 
> на сервере я как раз хочу чтобы упало

к вменяемому серверу прилагается админ. Проблема закрыта.

А если например контроллер теплицы, или контроллер съёмки с телескопа, то если и упал, поднялся и снова работать. А лучше вовсе не падать.

> как мониторить порчу памяти до сих пор не договорились.

Не использовать без обоснования ретро функции, и нет проблемы.



"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 18:15 
> А лучше вовсе не падать.

Сказки на другом этаже. Когда изобретут неломающееся оборудование, тогда и обсудим как лучше не падать. До тех пор можно считать, что внезапный сбой в самый неподходящий момент — часть естественного поведения любой системы и проектировать соответствующим образом.

> Не использовать без обоснования ретро функции, и нет проблемы.
> без обоснования

То есть не договорились.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:44 
>Но не всегда уместное

Монады изобретены, но сишники как всегда об этом не знают.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 13-Май-25 19:50 
На этом софта даже больше сделано чем на расте ;-)))))

Но да признаю, pandoc - мне зашёл, юзаю :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 03:55 
Идея паники понятна, но аноним попался на незнании ОС ни Сижки: sukabrt это тебе он сегфоулт, он швыряется тоже по пурпоузу, как и эксепшен этот ваш панический. Если словил аборт это как раз самое контролируемое что ни на есть

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 20:59 
> Идея паники понятна, но аноним попался на незнании ОС ни Сижки: sukabrt
> это тебе он сегфоулт, он швыряется тоже по пурпоузу, как и
> эксепшен этот ваш панический. Если словил аборт это как раз самое
> контролируемое что ни на есть

Я не очень понял, на чем ты попался (особенно, приплетя что-то про ОС) и совсем не понял, что тебе помешало посмотреть для начала в оригинал - там для таких вот Знатоков разжеванно:
>  The visible error only occurs when Screen is compiled with the _FORTIFY_SOURCE feature enabled. Otherwise no errors are seen, not even when compiling with -fsanitize=address, likely because after the end of the target buffer another long buffer char message[MAXPATHLEN * 2] follows (thus only application payload data is overwritten).
>

Что делает _FORTIFY_SOURCE, Знаток надеюсь, сможет выяснить самостоятельно ...


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:35 
>>  The visible error only occurs when Screen is compiled with the _FORTIFY_SOURCE feature enabled.

А в 2025 году остался кто-то у кого ЭТО вообще отключено при сборке софта?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:45 
SIGABRT это тоже контролируемое, по вызову abort(). Настоящие сишники любят SIGSEGV.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 21:04 
> SIGABRT это тоже контролируемое, по вызову abort(). Настоящие сишники любят SIGSEGV.

SIGABRT там - потому что скомпилировали с _FORTIFY_SOURCE (т.е. с доп. проверками strncpy).
Так-то будет не менее любимое "программа работает без ошибок, просто начинает делать какую-то фигню":
> Otherwise no errors are seen, not even when compiling with -fsanitize=address, likely because after the end of the target buffer another long buffer char message[MAXPATHLEN * 2] follows (thus only application payload data is overwritten).


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:36 
> SIGABRT там - потому что скомпилировали с _FORTIFY_SOURCE (т.е. с доп. проверками
> strncpy).

Сейчас это тупо дефолтные флаги в всех нормальных дистро.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Соль земли , 13-Май-25 10:20 
Крашнуться, то есть срочно завершиться - это наилучшее поведение при непредусмотренной работе программы. Так ты быстрее всего поймёшь, что что-то не так.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:31 
>Вы же вроде в расте как раз такое и любите - чуть что - сразу паника

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:14 
Просьба уточнить использование термина "монады": имеется ввиду та самая разновидность функтора из теории категорий или кто-то что-то левое назвал "монадой" для большей крутости?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 16:28 
>>= и >|= если впрочем понимаете, о чём я.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Википедист , 13-Май-25 17:46 
Прочитал Википедию за вас:

The computer scientist Eugenio Moggi was the first to explicitly link the monad of category theory to functional programming, in a conference paper in 1989, followed by a more refined journal submission in 1991. In earlier work, several computer scientists had advanced using category theory to provide semantics for the lambda calculus. Moggi's key insight was that a real-world program is not just a function from values to other values, but rather a transformation that forms computations on those values. When formalized in category-theoretic terms, this leads to the conclusion that monads are the structure to represent these computations


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 13-Май-25 19:54 
> Просьба уточнить использование термина "монады":

Да чего тут понимать то?
Пока 20-ти летки всё начинают переписывать на Rust-e ...
30-ти летки начинают переписывать всё на Haskell-e ...

Можно ставки принимать "кто придёт вторым, а кто предпоследним"(С)
;-)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено крокодил мимо.. , 13-Май-25 01:01 
просто оставлю это здесь..
https://undeadly.org/cgi?action=article;sid=20090712190402

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 01:04 
> нынешние сопровождающие GNU screen недостаточно хорошо ориентируются в кодовой базе проекта

То есть диды написали тонны сишного кода в ГНУ/Линуксах и уходят, а сопровождать его вместо них некому.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 01:15 
> То есть диды написали тонны сишного кода в ГНУ/Линуксах и уходят

А где там в gnu screen тонна кода?

> а сопровождать его вместо них некому.

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 01:25 
> Об этом яжфин говорил, что проблема есть в сопровождающих.

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 01:35 
> Тогда все эти мансы с растом обретают иной смысл - просто Торвальдс хочет привлечь к разработке молодёжь, а она в си не умеет и не хочет. Ну и скандал, борьба, революция, всё это тоже важно для привлечения молодёжи.

Я думаю там замешаны конторы, у которых ставка на раст. У них профит простой: нужны дешевые разрабы.

> а она в си не умеет и не хочет.

Справедливости ради молодёжь много чего не умеет не хочет. А нет, умеют писать жручие и тормозные поделия на электроне.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Карлос Сношайтилис , 13-Май-25 10:21 
> Я думаю там замешаны конторы, у которых ставка на раст. У них профит простой: нужны дешевые разрабы.

Для дешёвых разрабов нужен низкой порог входа и превышение предложения над спросом. В расте ни того ни другого не наблюдается.
Скорее гошка, но даже там рынок не насыщен исчо.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 19:53 
> Для дешёвых разрабов нужен низкой порог входа и превышение предложения над спросом. В расте ни того ни другого не наблюдается.

Ну я имел ввиду низкий относительно с++.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено 12yoexpert , 13-Май-25 02:28 
меня больше тревожит, что некоторые "не умеют в русский язык"

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 03:57 
Почем тебя это тревожет

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:45 
потому-что на нем можно писать прозрачные слова (белый листочек А4) или спокойно одно слово подменять другим и вовсе не синонимичным. Ипаразитным словом теперь является не "б*ять", а "наш". Вот такой вот аксиомный бихевиор.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено аноним ололоев , 14-Май-25 13:15 
>>Ипаразитным словом теперь является

Error 1:  ‘Ипаразитным’ was not declared in this scope


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 09:55 
> а она в си не умеет и не хочет

И совершенно правильно делает. Оно им надо, в кучах дедовского г… копаться?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 10:54 
>> а она в си не умеет и не хочет
> И совершенно правильно делает. Оно им надо, в кучах дедовского г… копаться?

Понять можно, простить - никогда. :)

Надо писать научный труд "отсутствие преемственности в айти". :)

На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт, да и многие другие важные свободные проекты тоже.



"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 11:05 
> Понять можно, простить - никогда. :)

Деда ответ (с) )))

> Надо писать научный труд "отсутствие преемственности в айти". :)

Интересно, писал ли кто-то подобное в стиле "молодежь не хочет ухаживать за лошадками! им подавай эти новомодные автомобили!!!
А ведь лошадка это не бездушная железка, у нее есть характер, она умеет фыркать, кушать вкусняшки и пахнуть навозом!"

> На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт,

Не умрет.
Есть корпорации у которых наемные рабочие, которые будут делать то, что им скажут.
Правда тогда в ядре код от "индивидуалов" будет вообще около нуля, а не процентов 10 как сейчас.

> да и многие другие важные свободные проекты тоже.

Если на них забили и они умерли - значит не настолько и важные.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 11:19 
> Есть корпорации у которых наемные рабочие, которые будут делать то, что им
> скажут.

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

Всё что корпы смогут сделать в этом случае - найти новый молодой проект с молодым условным Торвальдсом и вложиться в его поддержку.

Но я думаю старый Торвальдс смекнул что к чему и возможно он успеет омолодить состав, хотя и не факт.

> Если на них забили и они умерли - значит не настолько и
> важные.

Ну в принципе да, так и есть. Монолит не нужен.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 16:19 
> Ты переоцениваешь возможности корпов, даже бабло не всемогуще.

Возможно переоцениваю.
Но я смотрю со своей колокольни полче 10+ лет работы на такую корпу.

Да и дело не столько в бабле (но деньги тоже очень важны), сколько в ресурсах в общем смысле.

> Если разрабов способных разобраться в сишечке не будет, то их не будет, сколько бабла не вливай.

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

У корпов даже есть ресурсы чтобы создать спрос на ЯП.
Например они объявляют вакансии на редкий язык. За хорошие деньги.
Народ видит что "ого, за N платят в 3 раза больше чем то на чем я пишу сейчас".
Дальше это "рекламируется" и продвигается: например блогпосты с примерами использования, какие-то трюки, видео с конференций.
Потом подтягиваются онлайн курсы и даже университеты.
А потом у тебя GOшка становится стандартом.

> Всё что корпы смогут сделать в этом случае - найти новый молодой проект с молодым условным Торвальдсом и вложиться в его поддержку.

У корпов есть одна хорошая и одновременно плохая особенность - они по большей части практичны.
Если им будет быстрее/дешевле найти нового торвальдса - они будут так делать.
Если выгоднее тянуть старое - будут тянуть.

Их за это люто ненавидит сообщество, тк стоит они дропнут старую архитектуру или версию, если на ней останется пару нетакусиков.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 18-Май-25 18:27 
> У корпа будет несколько путей решения проблемы:
> - просто нанимать сишников, несмотря на цену
> - перевести проект в легаси и фиксить только баги и этим срезать
> стоимость на кол-ве людей
> - нанять сишника и посадить своих сотрудников за парту
> - переписать на другой ЯП или просто написать "то же самое" на
> другом ЯП с нуля
> - и тд...

Если Си потеряет популярность и разрабов останется очень мало, то всё кроме предпоследнего пункта (переписать), приведёт к умиранию проекта "ядро Линукс". Разумеется постепенного, до какого-то момента. Завтра это не случится.

> Если выгоднее тянуть старое - будут тянуть.

Железо движется вперёд, приходят новые идеи и технологии, происходит постоянное развитие. То есть "тянуть" какое-то время смогут, но не более того. А если развития не будет, то это и будет "умирание", стагнация.


> Если выгоднее тянуть старое - будут тянуть.
> Их за это люто ненавидит сообщество, тк стоит они дропнут старую архитектуру
> или версию, если на ней останется пару нетакусиков.

За что по-твоему сообщество ненавидит, не понял. За то что тянут старые технологии или за то что их дропают? :)

По-моему их ненавидят не за то, что они дропают или тянут, а за то что у них слишком много власти, влияния и сообществу приходится под них подстраиваться.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено User , 13-Май-25 16:21 
Ну будет как с modern perl'ом - пользуемся, пока работает, как ломается - переписываем и выкидываем.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 13-Май-25 19:56 
О рили?
А чего ж с Cobol не переписали и не выкинули?
А ну да ... у вас же лапки ...
:)

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:03 
Не поломался, вот и не переписали. Лапки тут не при чём, тем более что в том коде никаких откровений не написано, всё довольно примитивно, а сложности с переписыванием не в том, чтобы примитив понять, а том что диды как обычно ни документации, ни тестов написать не удосужились, культура разработки в те времена была та ещё, лишь некоторые догадывались о её существовании, а уж про то, что она важнее языка на котором код написан так и вовсе только лет десять-пятнадцать как начало до масс доходить.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 15-Май-25 19:07 
Ты поплачь, полегчает(С)

А по факту ... аэропорт Франкфурта все помойки на планете Земля переворошил чтобы DEC-и свои держать работоспособными. Потому как новое на жабе иногда самолёты мимо садит :))))

(Ну не совсем прямо DEC - но наследникоффф)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 00:24 
Есть задачи сложные технически, например, производство айфона, и есть задачи сложные финансово, например, его покупка. Вы же не станете утверждать, что айфон произвести нельзя, лишь потому, что у нищих людей айфона нет?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено User , 14-Май-25 07:07 
> О рили?
> А чего ж с Cobol не переписали и не выкинули?
> А ну да ... у вас же лапки ...
> :)

Так и переписали и выкинули в точности вот описанным вот образом. В реальности этот работающий пока кот закопан так глубоко, что в пору проктолога звать...


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 15-Май-25 19:11 
Но тля на __КАЖДЫЙ__ взмах кредиткой по всему шарику - отрабатывает именно _ОН_! :)
"глубокозакаопанный" и "выкинутый" ... :)))))

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 15-Май-25 19:26 
> Но тля на __КАЖДЫЙ__ взмах кредиткой по всему шарику - отрабатывает именно _ОН_! :)
> "глубокозакаопанный" и "выкинутый" ... :)))))

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено User , 15-Май-25 19:36 
> Но тля на __КАЖДЫЙ__ взмах кредиткой по всему шарику - отрабатывает именно
> _ОН_! :)
> "глубокозакаопанный" и "выкинутый" ... :)))))

А на практически каждое щелканье выключателем на 1\6 части суши - немного паскаля (Даже вроде бы не "турбо" - но это не точно), и я даже стесняюсь спрашивать, какие выводы вы сделаете о важности, нужности и незаменимости данного языка...


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 13:18 
>На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт

Варианта, что ядро будет написано на нормальном языке, а не там, чуть ли не на каждой строке - неопределённое поведение, вы конечно же не рассматриваете
>Понять можно, простить - никогда. :)

Молодёжь не хочет мазохизма с  неопределённым поведением, удивительно то как


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 15:52 
>>На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт
> Варианта, что ядро будет написано на нормальном языке, а не там, чуть
> ли не на каждой строке - неопределённое поведение, вы конечно же
> не рассматриваете

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


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 16:37 
>А если не успеет, то молодёжи гораздо проще и быстрее будет написать новое ядро заново с нуля

Написать заново, с нуля, можно мс-дос или миникс, с соответствющим функционалом. У миникса, например, первая файловая система могла быть размером до 64 Мб. Сами понимаете, насколько пригодной получится такая система. Всё остальное требует огромных затрат по времени, в течении которых нужно будет чем-то пользоваться


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:55 
> Написать заново, с нуля, можно мс-дос или миникс, с соответствющим функционалом. У
> миникса, например, первая файловая система могла быть размером до 64 Мб.
> Сами понимаете, насколько пригодной получится такая система. Всё остальное требует огромных
> затрат по времени, в течении которых нужно будет чем-то пользоваться

Донкихотских проектов - уже было и есть. Вон redox os, а вон fuchsia. При том за второе гугло вписалось вообще. Но это ему не помогло, гора родила мышь, несмотря на сказ как они ща размахнутся с супер-языками и всем покажут, захватив мир. Через цать лет - захватили 2 фоторамки. В этом месте менеджмент начал о чем-то догадываться и децимировал тиму...


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 21:37 
>>А если не успеет, то молодёжи гораздо проще и быстрее будет написать новое ядро заново с нуля
> Написать заново, с нуля, можно мс-дос или миникс, с соответствющим функционалом.

А это как раз то, что нам и нужно. Микро- или нано-ядро с соответствующим функционалом.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 00:52 
Написать само по себе микроядро не сложно. Проблема в том, что кроме микроядра нужен драйвер для файловой системы, видеокарты и так далее. Вы посмотрите на фичи btrfs или zfs. И вот здесь уже не получится написать миро-файловую систему, просто потому, что код файловой системы не масштабируется. Посмотрите на те же namespace и cgroups. И все эти фичи нужны одновременно, хоть в микроядеронй, хоть в монолитной

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 16-Май-25 10:48 
> Вы посмотрите на фичи btrfs или zfs. И вот здесь уже не
> получится написать миро-файловую систему, просто потому, что код файловой системы не
> масштабируется.

Ну это скорее проблемы zfs и btrfs. Значит сначала сделают ext4.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Нуину , 13-Май-25 19:55 
> На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт, да и многие другие важные свободные проекты тоже.

Так и будет. Ядро попилят просто. К тому же GPL как кость в горле для корпов. Плюс всему этому будет способствовать тренд на деглобализацию и закрытие технологий (чтобы не сперли).


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:39 
> Получается некому, а те, кто могут, не хотят.

А кто платить то будет?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 15-Май-25 19:13 
Как обычно ... :)

Ну ты понил(С)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 10:59 
> То есть диды написали тонны сишного кода в ГНУ/Линуксах

Угу.

> и уходят

чудовищная безответственность!

> а сопровождать его вместо них некому.

А ты бы хотел ковыряться в старых жигулях как дед на выходных?
Или лучше взять и заняться чем-то более интересным?

Я уже молчу что качество того кода мягко говоря отстойное, судя по кол-ву дыр и тяп-ляпов в стиле "мамой клянусь тут не будет переполнения".


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 11:44 
> А ты бы хотел ковыряться в старых жигулях как дед на выходных?

Я, поднимая седую бороду от жигулей: а? что? кто здесь?

> Или лучше взять и заняться чем-то более интересным?
> Я уже молчу что качество того кода мягко говоря отстойное, судя по
> кол-ву дыр и тяп-ляпов в стиле "мамой клянусь тут не будет
> переполнения".

Вообще-то я не осуждаю, по крайней мере вслух. ;)

Я констатирую факт. А уж что с этим делать? Может действительно миру нужно новое ядро и новый, молодой Сталман и Торвальдс.

Где та молодая шпана?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:02 
> Я, поднимая седую бороду от жигулей: а? что? кто здесь?

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

Надеюсь я в старости буду таким же)))

> Я констатирую факт. А уж что с этим делать? Может действительно миру нужно новое ядро и новый, молодой Сталман и Торвальдс.

Не, давайте обойдемся без столлманов.
Хватило одного поборника идей "отнять и поделить" и писателей коммунистических манифестов.

А на вопрос "что делать?" уже ответили - добавляйте в ядро то, что эту молодежь привлечет.
Например новые подходы, языки и схемы управления.

> Где та молодая шпана?

Думаю в дискордах или тиктоках.
На ютубе тоже много.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 13-Май-25 12:14 
>> Где та молодая шпана?
> Думаю в дискордах или тиктоках.
> На ютубе тоже много.

Тогда уже можно закапывать. :)

А здесь хоть есть молодёжь, опросы проводили?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:32 
> Тогда уже можно закапывать. :)

Снобизмом попахивают слова твои.
На темную сторону силы ведет сей путь.

> А здесь хоть есть молодёжь, опросы проводили?

А молодежь это кто)?
Мне например 30+ и я себя старым не считаю.
Особенно по сравнению с древностями которые на всяких БЭСМ начинали.

Можно конечно зубоскалить, но на ютубе можно посмотреть какой-то тyпoе видео, а можно что-то типа "MIT 6.0001 Introduction to Computer Science and Programming in Python" или "MIT 6.5630 Advanced Topics in Cryptography, Fall 2023"
И каждый найдет то, что ему интересно.

Половина моих одноклассников которые росли в 90х спилась.
Я в лет 7-10 развлекался тем, что прыгал по гаражам, лопал выкинутые на помойку кинескопы от телевизора березка и плавил свинец из старых аккумов.

Так что я не рассчитываю, что прям все нынешние 16-20 летки станут гениями программирования, но от них это и не требуется)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено sena , 16-Май-25 10:43 
>> А здесь хоть есть молодёжь, опросы проводили?
> А молодежь это кто)?
> Мне например 30+ и я себя старым не считаю.

Границы конечно размыты и индивидуальны, но как раз где-то с 30 это уже не молодёжь. Старым ты ещё не становишься, можно сказать средний возраст, зрелость и т.п.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 13:40 
> миру нужно новое ядро.

МИРУ НУЖНО НОВОЕ ЯДРО.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:22 
Миру нужны стандарты, ядра могут быть собственной разработки.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 21:16 
ага, волки и овцы - мир

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:52 
>> миру нужно новое ядро.
> МИРУ НУЖНО НОВОЕ ЯДРО.

Как показала проверка гуглей и фуксией - не то чтобы вы соврали, просто не сказали всей правды.

> МИРУ НАФИГНУЖНО НОВОЕ ЯДРО.

Я дополнил недостающий кусок фразы, не благодарите :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Neon , 15-Май-25 01:29 
Правочка:
То есть диды написали тонны смешного кода в ГНУ/Линуксах и уходят, а сопровождать его вместо них некому.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Krtek , 13-Май-25 01:24 
>они так и не смогли подготовить исправления для всех уязвимостей

Всё, что нужно знать о GNU.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 01:40 
Zellij, tab-rs.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 01:45 
> сотрудникам SUSE пришлось подготовить некоторые патчи самостоятельно. По мнению проводивших аудит исследователей, нынешние сопровождающие GNU screen недостаточно хорошо ориентируются в кодовой базе проекта и не способны полностью разобраться в выявленных проблемах безопасности.

А нынешний сопровождающий — это alexander_naumov@opensuse.org ведь? Они там меж собой в suse договориться не могут даже?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 04:07 
Не суди строго: должно быть бро открыл олдскульную кодовую базу и у него глаза потекли, моментально окислился

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено вася пупкин , 13-Май-25 13:40 
Эта новость основана на репорте SUSE. Мнение другой стороны, Александра, upstream, мы не знаем. Интересным мне показалось, как они написали, что он им ничего так и не смог предоставить. Никаких патчей. А потом, в их же репорте, что после публикации SUSE патчей, он потребовал изменить авторство, ЧТО ОНИ И СДЕЛАЛИ %) Так на каком основании он потребовал это? И зачем они внесли изменения в авторство патчей (исправили со своего, на его), если не он предоставил пачти, как они написали, а они? =))

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Null , 13-Май-25 14:36 
Кстати интересно. Он у них получается вообще дурачок дурачок, который ничего не делал, потом начал делать, потом ничего так и не сделал, а потом ещё чуть и эмбарго не нарушил. Ещё он якобы в коде проекта не разбирается.

В copyright написано, что он занимается screen уже 10 лет. И кстати именно в его изменениях для 5.0.0 security issues они не нашли. Может человек заниматься проектом столько лет, выпускать релизы, и не знать проект так хорошо, как проверяющие из suse? Наверное что-то не поделили, вот они и решили его убрать. Тоже интересно, что нигде от его имени никаких запросов на аудит кода нет.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено вася пупкин , 13-Май-25 15:41 
Это 100% совпадение конечно.. наверно... но 4 из 5 найденых SUSE проблем, это код, который был добавлен в screen как раз сотрудниками SUSE...

Последняя, пятая, с logfile, это то, получилось после того, как безопасную проверку удалил прошлый мэйнтейнер Амадеус, который сейчас покинул проект. И именно эту проблему исправил (добавил обратно) Александр. И SUSE написал критику в его адрес в своем репорте. Ох уж эти совпадения =)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 03:01 
Роллинг это быстрые фиксы с одной стороны и новые вулны с другой.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 06:09 
> только в ветке screen 5.0.0, которая поставляется в Fedora Linux, Arch Linux,
> NetBSD, OpenBSD и Alpine.

Спасибо этим господам что побегали для нас по минному полю и разминировали прямо его своими тушками :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 06:25 
Им спасибо, а мы продолжим юзать tmux в роли терминал-мультиплексора

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:50 
> Им спасибо, а мы продолжим юзать tmux в роли терминал-мультиплексора

Он довольно убогий и не умеет сериальные шнурки...


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 18:28 
> не умеет сериальные шнурки

Подавляющему большинству 1% это совершенно не надо и никогда в жизни не понадобится. Какие-то общеприменимые минусы есть?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:25 
Для работы с com-портами в любой UNIX-системе есть специальные программы, которые можно запускать в tmux.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 23:39 
> Для работы с com-портами в любой UNIX-системе есть специальные программы, которые можно
> запускать в tmux.

Можно, но запускать 2 программы вместо одной - канительнее, и есть риск пересечения шорткатов. С хрен бы его знает каким результатом потом.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 08:26 
> запускать 2 программы вместо одной - канительнее

Э-э, а юниксвей как же?


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 21:43 
>> запускать 2 программы вместо одной - канительнее
> Э-э, а юниксвей как же?

Юниксвэй хорош там где он упрощает жизнь. И плох там где усложняет.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 15-Май-25 19:17 
Смотри 7.157

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Эксконтрибутор FreeBSD , 15-Май-25 00:00 
Да я же сказал, что в роли терминал-мультиплексора продолжаем юзать tmux

А для serail юзай cu, stty, picocom или еще что-нибудь


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 13:12 
В NetBSD в 3rd-party пакетах есть обе версии, а в базовой системе идет tmux.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 08:35 
Как обычно, у проектов GNU код низкого качества. Ничего хорошего от этой конторки ждать нельзя.

Лучше пользоваться TMUX. У него фич больше, конфиг вменяемый. Сделано людьми для людей.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:00 
.. пользоваться им я конечно не буду

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено _ , 13-Май-25 21:44 
Ты вначале на человека сертифицируйся ....

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено RHEL fan , 14-Май-25 00:04 
Там ещё и конфиг нужен?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 13:13 
All generalizations are false.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 15-Май-25 10:06 
у проектов гну код нормального качества, просто современным программистам инженерных навыков не завезли и они выгорели после чтения первых 10 вызовов функций

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено name , 13-Май-25 08:56 
Врети - в BSD tmux вместо скрина! А GNU пора закопать на свалке истории как что-то нелепое и в лучших традициях неудавшееся.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 10:15 
Ну вот и сиди на своём tmux, а нам на GNU screen хорошо.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 02:54 
Tmux и screen - это как вим и нано. Вторыми пользуются неофиты и убунтята.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 12:37 
Неверно, совершенно разные весовые категории. Tmux и screen - это как Vim и Emacs.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 21:44 
> Врети - в BSD tmux вместо скрина! А GNU пора закопать на
> свалке истории как что-то нелепое и в лучших традициях неудавшееся.

Вообще-то если вам не сказали, на свалке истории - BSD.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Соль земли , 13-Май-25 10:10 
В Debian без setuid/setgid. Но как же он тогда работает? Дебьяновская магия!

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 14-Май-25 16:30 
capabilities(7)

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 11:01 
Про NetBSD какая-то ложь. В pkgsrc есть две версии: pkgsrc/misc/screen и pkgsrc/misc/screen4. Первая (без цифры в названии) это 5я версия, но ни одна из них не входит в состав базовой системы.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 12:54 
Какой-то странный эксплойт. Не желает он в подмененный файл писать, поскольку это уже не тот файл:
Error writing logfile: Bad file descriptor
Ну и: Screen version 4.09.01 (GNU) 20-Aug-23
FreeBSD 14.2

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 13:03 
Хм, а они успели разделиться на 4 и 5 ветки, оказывается, а я всё проспал. К счастью, видимо.

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:48 
> Error writing logfile: Bad file descriptor
> Ну и: Screen version 4.09.01 (GNU) 20-Aug-23

Хм... запустить эксплойт даже не прочитав его описание и тем более сорцы? А вы жжоте! Продолжайте дальше в том же духе, и вас будет ждать немало интересных сюрпризов :). Никогда не слышали про эксплойт от Ac1d B1tch3z или как их там правильно? Он довольно плоско прикалывался над теми кто любит - вот такое вот.


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 18:37 
Про виртуальные машины слышал?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 14:01 
... setuid на бинарник для мультиплексинга экранов? А чё на tee сразу setuid не впихнуть?

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 17:49 
> ... setuid на бинарник для мультиплексинга экранов? А чё на tee сразу
> setuid не впихнуть?

Ну так в соответствии с новомодными веяниями, TEE = trusted execution environment :)


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено Аноним , 13-Май-25 22:17 
Подозреваю чтоб логировать логины в wtmp/utmp

"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено пох. , 14-Май-25 11:38 
нет.

экспертиза...мда


"Уязвимость в GNU screen, позволяющая выполнить код с правами..."
Отправлено randomize , 14-Май-25 20:47 
> Уязвимость вызвана тем, что при запуске с правами root

Невероятно! Программа, запущенная под root, может выполнить код с правами root!