The OpenNET Project / Index page

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



Индекс форумов
Составление сообщения

Исходное сообщение
"В Linux ядре 2.6.16.38 исправлено 10 проблем безопасности"
Отправлено lamer, 10-Фев-07 11:48 
>1. Вы глобально путаете две вещи:
На самом деле не путаю.Просто в моем понимании драйвера это место где сбои должны быть исключены настолько же насколько они исключены в ядре.Т.е. их качество кода должно быть не ниже.Если это не так - я резонно скажу что это дерьмовые драйвера и буду прав.А раз так - есть у одних парней забавная поговорка, отражающая суть дела."А кто будет проверять проверяющего?".Современный линуксный кернель это довольно немаленькая конструкция.Кто проверит что она тоже rock solid?И кто в случае чего примет меры?Гипервизор?А его кто проверит?

>Всем нужны _просто_ драйвера. Но вот кое-кому не хочеться терять всю систему
>если один драйвер стал раком.
А мне не хочется наблюдать как драйвера становятся раком.Очень приятно если я захочу посмотреть киноху а мне скажут "бсст!" - "прости чувак, но кина не будет - тута у нас драйвер упал и оставил видяху\звуковуху в неопределенном состоянии из которого хз как их выбить".Вот хочется чтобы этому коду можно было доверять не меньше чем ядру.Иначе будет вакханалия сплошная.

>готовый драйвер и в нем произошел сбой.
Рассуждения на уровне "есть метеорит и он даже прилетел вам на голову.Ваши действия?Хренли вы не в каске?И почему вы все еще не закопались в бункер?!".Т.е. рассматривать можно и в принципе ничему не противоречит.Но метеориты не падают на голову всем подряд и часто, поэтому несмотря на маленькую вероятность получить метеорит на голову, никто не сидит в бункерах в ожидании попадания в их голову мелкого космического булыжничка.

>Речь о пункте "б" - реакия системы.
>И тут выбор прост: отдаццо на волю случая (драйвера) или что-то решать.
А ядро не владеет ситуацией в каком состоянии железо.Что-то решить не зная в каком состоянии заклинило железку довольно странно.Возможность это сделать зависит от того что за железка.Ну да, без звуковухи в принципе работу продолжить можно, хотя особого кайфа юзеру сий факт не доставит.

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

>Но может выскажетесь по второму пункту? Что если воля случая не устраивает
>- и нужно что-то решать? Идеи кроме микроядра есть?
Поддержка на уровне железа изоляции вообще всех частей системы друг от друга, допустим, по потокам.Но это увы надо и новый хард и новый софт.Можно например на Cell глянуть для некоторого понимания о чем я примерно говорю.

>2. Разница между драйвером/программой/задачей/процессом.
>В линуксе она отсутсвует :) Это все почти синонимы.
И что из того?От этого драйвера не в кольце 0 или юзерские программы попали в него?

>А пользовательские прграммы - железно в другом. Хотя и несколько пользовательских
>процессов так же могут жыть в общем (для них) адрессном пространстве.
Угу, все замечательно, кроме того что переключение между кольцами в принципе не очень шустрая операция обычно, to the best of my knowledge.

>3. У вас явно проблемы с иксами :)
Да не только у меня одного.Народных плачей что можно уронить иксы - я так смотрю в интернете есть.И при том кажись побольше чем мата на падучие драйвера.Я просто нашел 1 последовательность действий которая роняет иксы лично у меня.Редкая.Случайно выполнить все эти действия трудно.Однако последствия сравнимы разве что с рестартом - не дохнут только консольные демоны всякие, что наврядли сильно утешит среднестатистического юзера.

>Не знаю откуда и почему - не тут это обсуждать.
Ага, конечно, у нас тут высокие концепции дуром прут а про проблемы юзеров все забыли.А фигли, ну правда, когда богов волновали простые смертные и их проблемы?Главное концепция :).А то что 80% системы вылетает в трубу без сохранения данныых при падеже юзерского процесса х сервера - да подумаешь, фигня какая :)

>запустите какой-нить виртуальный X сервер (типа vnc, например), и подключайтесь к
>нему уже из обычных иксов.
А где гарантии что те иксы не упадут, унеся за собой "важные процессы"?Да и вообще изврат получается.

>Если они упадут - ну придеццо просто переподключиться к vnc серверу :)
При этом почему-то допускается что он упасть не может.А кто это гарантирует собственно?

>Ниче не будет потеряно.
>Неправда ли, разнесение функционала в самостоятельные процессы - несколько сглаживает
>(если не решает) данную проблему? Ну так почему же вы тогда так против
>подобного решения для драйверов?
Потому что это сделает систему тормознее и кроме того, драйверам по роду деятельности нужны привилегии которые нафиг не впились юзерским процессам.Отнять их по простому трудновато.Нужны какие-то левые костыли которые все притормозят.Если бы все современное железо предусматривало бы такое деление без performance penalty - было бы замечательно.Потому что ничего не стоит а система типа надежнее.Ну... нечто типа ACL-ов для каждого потока на железном уровне, раздавать их могло бы ядро, а потоки вообще при этом можно не делить на юзера и систему в принципе - ACL поделил бы их намного точнее чем только программа, или только драйвер.Скажем чему противоречит что программа которой надо нестандартный прямой доступ в железо не реализованный встроенными драйверами сама попросит его?И или пойдет нафиг или поработает с железом - в зависимости от ACL-ов.Становясь на время сама себе драйвером, если угодно.

>Вот после схемы с vnc - так оно и будет. У вас
>упадет просто "консоль" к вашим программам,
Замечательно, а если упадет то на чем эта консоль "хостится" то мне стал быть останется оболочка от сосиски?)А программы то мои того, тю-тю.Спасибо, я с вмварями всякими и разными видами ремотных десктопов дело имел - представляю себе как это и что поолучится.По сути вы спихнете проблемы надежности с 1 машина на другую.

>ну так веть вот он. Шанс ваш ;)
"В винде есть такая утилитка, ahui.exe" - в смысле, если упадет "хостящий" икс - ну тады ой.У меня останется консолька.Работающая.Но без моих программ.Которые навернутся, очевидно, без доступа к этому иксу, ага?Ну или куда они графику денут?И чо мне с ней делать?Программы то от ее наличия у меня не вернутся?!Ну или почему на той стороне иксы будут надежнее моих?Аргументы их большей надежность можно в студию?Я так понимаю что мы сбагрили проблему с одного места в другое.Почему она там не возникнет - не понятно.

>4. Очевидно, вы не совсем понимаете о чем спор.
Не спорю, это не исключено.Я не сильно давно пользую *никсы.

>Я говорю о совершенно другом ядре. Не монолите. И допускаю, что подобные
>изменения в Линухе заслуживали бы на отдельную major версию: 3.
Дык.Спасибо если не отдельного названия операционки.А то ходют тут всякие Таненбаумы с миниксами и мутят воду как у них все хорошо а у других плохо :).Правда, Таненбаум - академик, ему на практику в принципе глубоко фиолетово.Он придумал такую систему.Он считает что все должны ее сделать так.Можете посмотреть выше - я только что сбредил ибо спать хочу и придумал вообще иначе - а нафиг ядра, в **пу драйвера, в п*** процессы.Если б поддержало железо - зафигарить fine-grained разделение прав у потоков и раздать кому надо столько сколько надо, а при вылезании за дозволенный минимум необходимого зарвавшийся поток просто мочить.С разными последствиями в зависимости от того что замочено... :).Ядро при этом сведется к диспетчеру задач и манагеру разрешений.В принципе даже не обязательно одним потоком наверное - ну, несколько привилегированных потоков, которые мы типа посчитаем ядром :)

>И у вас какие-то комплексы по поводу названия подобного ядра...
Есть опасения что тормозить будет.Почему-то никто еще не сделал БЫСТРУЮ и РАЗВИТУЮ микроядерную систему.Все хотят чтобы это сделали другие :) например, Линус :).И еще есть подозрения что многих кернел девелоперов не пропрет писать юзер-мод процессы, посему это ставшее довольно беспонтовым занятие будет оставлено на откуп индусам всяким.А куда деть кучку квалифицированных кернель программеров не понятно.Для микроядра их столько нафиг не сдалось.Писать юзермод код они имхо не станут - специфика не та.Ну, лично я бы во всяком случае на их месте не стал, пусть лучше такие драйвера индусы и Таненбаум пишут, а меня такое изучать как бы эт сказать, заломало :).Если серьезно то я бы вероятно хотел со временем освоить кернель мод програминг в линуксе(но пока я слишком мало знаю эту систему).А вот програмить драйвера в юзере я бы точно не хотел - это пущай индусы и Таненбаум свои высокие концепции продвигают, а я в таком случае найду чегонить другое на попрограммить.Уровнем пониже :)

>Да, это мог бы быть Линух. Если переделывать его - то это
>именно и будет Линуксом.
А что там будет от линукса кроме названия?Ядро будет совсем другое, драйвера другие.И wtf оно именно линукс?А не minix например?Чтобы примазаться к раскрученному Линусом бренду? oO

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

>А про "линукс это круто" - да, круто. Пока в нем больше
>всего открытый драйверов, чем в любом другом ядре на Земле -
>да, это круто.
И заметьте, они не падают каждые 5 минут.И вообще система в целом устраивает народ такой какая есть.Примерно как НТя мало поменялась с 4-й до 6-й версии внутрях.А нафига ломать то что работает и довольно неплохо?

>Его можно изменять и дорабатывать безо всяких лицензионных проблем. Это круто.
А зачем при этом пытаться примазываться к славе Линуса?Линукс стал известен таким какой он есть сейчас.Пытаться сделать из него "миникс но только популярный" извините не очень хорошо пахнет.А почему бы Таненбауму или кто там еще так фанатеет не сделать СВОЮ систему?У нее ведь 1 фиг с Линуксом общего юудет только ... название.Что не особо честно.

>Переделать именно Линукс БЕЗ потери _всей_ его функциональности (допустима некоторая
>потеря производетельности,
Не думаю что юзеры положительно оценят допустимость в этом случае.Хотелось бы чтобы базовая часть системы была так быстра как возможно.А насколько притормозят аппликухи... ну они и созданы чтобы жрать ресурсы - не системное это дело, даденые ресурсы хавать :)

> _не_ функциональности) - самый простой и быстрый путь к постоению
>микроядра уровня Линуха (меньше - просто не нужно).
Так и хочется сказать - к построению популярного миникса с другим названием руками линуксоидов за их счет :)

>Это запрет на запись в области кода.
Ну дык, это логично.В принципе это и для приложений было бы не вредно(только тогда самомодифицирующиеся приложения типа сжатых UPX-ом программ пролетают).Вроде SELinux даже такое умеет...

>Да, действительно, падающий драйвер вряд-ли будет снимать защиту (хотя он это может)
Ну, может.Но врядли осилит до того как упадет.

>остаються доступными всем на RW. И не в них ли собираеться
>отспамиться перед смертью очередной кривой ядерный процесс??
По хорошему должно быть разделение и в ядре кому куда можно писать.На оснвании ID потока и  соотв. ACLs или типа того :) см. бред про ACLs.Увы, я так понимаю что сие не поддерживается железом а потому не судьба.

>6. SELinux. Судя по вашему посту и "замену ACLями rwx" - вы
>не вкурсе для чего он нужен.
В курсе но какого хрена он не включен по дефолту, и на кой черт тогда не выкинуты RWX?Получается довольно черезпопная система которая неудобна для восприятия.

>работы. Шаг влево/право ему не даст сделать ядро.
А по хорошему не должно давать железо :) эх, вредно читать про Cell под утро :).После чтения про изолированный режим и прочая в голову лезет совсем необычная байда.

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

>Так что: добавление любой защиты - это почти всегда понижение производительности.
Угу.И вопрос в том когда существующих решений уже достаточно а для особо-параноидальных есть специфичные решения типа qnx-ов всяких.

>У микроядра НЕ эта задача. Тут опять идет путаница понятий из первого
>пункта.
>Микроядро, если драйвер упал, - пытаеться решить что делать софту дальше.
...если возможности того что работает позволят это сделать :)

>Если новоперезапущенный драйвер видухи не справляеться с ней - то это точно
>не проблема микроядра. Оно свое дело сделало. Остальное - проблема производителя
>видухи и драйвера.
Т.е. глючный драйвер 1 фиг сможет прилично поднасрать.Ну и нахрен этот огород нужен?

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

>8. Ну и конечно же стоит бороться за открытость драйверов.
>Но, это не тема текущего разговора. Это политика. А мы - про
>технику пока что.
Одно от другого не отделить.Потому что это не сферический конь в вакууме как у Таненбаума.Это реальная система в реальном мире для людей которые ее реально используют, а не просто смотрят на систему как на экспонат как это в случае Таненбаума происходит.Это как жить в 3-мерном мире но рассматривать только 1 измерение и потому верить что мир одномерный :).Система для реального мира должна отвечать требованиям разработчиков и пользователей, даже если это вносит некоторую неидальность в систему.Иначе она будет никому нафиг не нужна.Примерно как таненбаумовский миникс - при такой оторванности от реального мира совершенно все-равно насколько он там круто задуман внутри, будет игрушкой для кучки студентов и академиков:)

 

Ваше сообщение
Имя*:
EMail:
Для отправки ответов на email укажите знак ! перед адресом, например, !user@host.ru (!! - не показывать email).
Более тонкая настройка отправки ответов производится в профиле зарегистрированного участника форума.
Заголовок*:
Сообщение*:
  Введите код, изображенный на картинке: КОД
 
При общении не допускается: неуважительное отношение к собеседнику, хамство, унизительное обращение, ненормативная лексика, переход на личности, агрессивное поведение, обесценивание собеседника, провоцирование флейма голословными и заведомо ложными заявлениями. Не отвечайте на сообщения, явно нарушающие правила - удаляются не только сами нарушения, но и все ответы на них. Лог модерирования.



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

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