• Защита от дурака - запрет билда от рута

    From Nil A@2:5015/46 to Sergey Zabolotny on Sun Jan 16 21:35:34 2022
    Hello, Sergey!

    Sunday January 16 2022 20:28, from Sergey Zabolotny -> Michael Dukelsky:

    Моя точка зрения на это такова: если нормальный человек понимает,
    что так делать не надо, то он и не будет так делать. Если же
    человек просто чайник, то может не понимать последствий.
    Результатом сборки от рута могут стать какие-нибудь странные
    ошибки при исполнении.
    можно с этого места подробнее, каким образом имя пользователя от
    которого производится сборка может повлиять на содержимое собираемых исполняемых файлов?

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

    Там скрипты, которые ивалюируют переменные в зависимости от (погоды на Марсе), с применением тех тулов, которые должны были быть установлены у тебя в системе (весьма оптимистично), с некими проверками, а может и без проверок, и потом такие переменные подставляются в какие-то файловые операции, и я тебя уверяю, тебе очень при этом хочется, чтобы это всё как-то оставалось в некоем сендбоксе, но нет, вся твоя файловая система от / доступна для RW. Безобидный rm $(TARGET) может таргетнуть что-то сильно тебе любимое в этой жизне.

    P.S. Ещёщ. Если ты делаешь "make install" и оно требует рута обычно, и в этом месте ты просто делаешь sudo make install, то нам с тобой не по пути, ибо оно собирается засрать твою бережно охраняемую систему какими-то хаотичными файлами тут и там, без возможности потом "оттрекать" что и где и кому принадлежат, зачем оно тут, от каво оно тут...

    Best Regards, Nil
    --- GoldED+/LNX 1.1.5
    * Origin: Linux 2.6.32-042stab145.3 (2:5015/46)
  • From Sergey Zabolotny@2:469/122.2 to Nil A on Sun Jan 16 22:15:58 2022
    Hello *Nil.*

    Sunday 16 January 2022 21:35, Nil A wrote to Sergey Zabolotny:

    Моя точка зрения на это такова: если нормальный человек
    понимает, что так делать не надо, то он и не будет так делать.
    Если же человек просто чайник, то может не понимать последствий.
    Результатом сборки от рута могут стать какие-нибудь странные
    ошибки при исполнении.
    можно с этого места подробнее, каким образом имя пользователя от
    которого производится сборка может повлиять на содержимое
    собираемых исполняемых файлов?

    Я понимаю твою озабоченность, тебе пытаются втюкахать принципы M$,
    типа мы лучше знаем что надо пользователям, чтобы они себе не
    выстрелили в ногу (или ещё куда-то). Посмотри на это с другой стороны.
    Ты запускаешь какой-то сторонний скрипт, написанный какими-то
    фидотипами, по определению любителями (ведь сеть любительская),
    которые заранее декларируют, что используйте на свой страх и риск (примерный перевод лицензии), и кагбэ в твоих интересах это запускать
    от какого-то билд-пользователя на своей мимимишной системе.
    всех под одну гребенку нельзя. у меня, например, сборка выполняется в изолированном контейнере и мне абсолютно наплевать, что там может внутри случиться. ключик типа allow_root=yes мог бы помочь, но его нет.

    Там скрипты, которые ивалюируют переменные в зависимости от (погоды на Марсе), с применением тех тулов, которые должны были быть установлены
    у тебя в системе (весьма оптимистично), с некими проверками, а может и
    без проверок, и потом такие переменные подставляются в какие-то
    файловые операции, и я тебя уверяю, тебе очень при этом хочется, чтобы
    это всё как-то оставалось в некоем сендбоксе, но нет, вся твоя
    файловая система от / доступна для RW. Безобидный rm $(TARGET) может таргетнуть что-то сильно тебе любимое в этой жизне.
    я заглядывал в код скрипта сборщика. комментировал строку проверки айди (проще было закомментить строчку кода, чем заводить, доп юзера), но этого оказалось недостаточно... скрипт в процессе подтягивания свежего кода из реп тянет и другие скрипты, которые используются основным скриптом. в тех скриптах тоже есть проверки айди юзера. я сдался и добавил обычного юзера в систему-сборщик после этого.

    --- GoldED+ 1.1.5-031023 (WinNT 5.1.2600-Service_Pack_3 i1586)
    * Origin: [icq:122018120] [mailto:zabolotny[at]hotbox.ru] (2:469/122.2)