Здравствуйте, absolute, Вы писали:
A>В Обероне это контролируется на уровне исходного кода.
... A>В Обероне в качестве защиты выступает компилятор — весьма устойчивая A>и неизменяющаяся часть.
Не понимаю, как компилятор может выступать в качестве защиты чего-либо. Что мешает мне в bluebottle сделать следующую вещь:
1. у меня есть простой user account в системе.
2. я на него захожу.
3. в этом account'е я собираю компилятором Оберона компилятор ассемблера.
4. пишу программу на ассемблере, портящую память (или дающую мне права root'а).
5. собираю ее компилятором ассемблера.
6. запускаю.
7. система вылетает (либо blue screen, либо я становлюсь root'ом).
Всё это происходит из под user account'а. Каким образом bluebottle с его программной защитой памяти мне может что-либо противопоставить?
Re[21]: Священная корова Оберона (специально для СГ).
Здравствуйте, gear nuke, Вы писали:
GN>Вы считаете, что пользователи добровольно закачивают себе на компьютер malware и запускают его осознно?
Если речь идёт о почтовых вирусах, то можно сказать и так.
Но существуют пользователи, которые осознанно не запускают malware.
Некоторые пользователи вполне осознанно постоянно работают под рутом\админом.
А другие осознанно этого не делают.
Против тупоголового администратора вообще ни одна ОСь не поможет.
В этом смысле Oberon (и Bluebottle) ничуть не хуже других. Даже лучше.
Просто она достигает целей другими механизмами.
Re[24]: Священная корова Оберона (специально для СГ).
Здравствуйте, absolute, Вы писали:
A>Не понимаю, чем вы недовольны. A>Вы же программисты!!! Вы должны писать код!!!
Кому "должны"? Есть спрос на программы для данной ОС — программисты пишут, нет — пишут для другой ОС.
A>Правда, сначала придётся выучить Оберон. Но это очень простой язык.
Нет, для начала надо чтоб программирование под СинийПузырь стало кому-нибудь нужно. А если писать каждую софтину с нуля — эта ОС помрет раньше, чем возникнет более-менее устойчивый спрос на программы под нее.
Ку...
Re[15]: Священная корова Оберона (специально для СГ).
Здравствуйте, alexeiz, Вы писали:
A>Не понимаю, как компилятор может выступать в качестве защиты чего-либо. Что мешает мне в bluebottle сделать следующую вещь: A>1. у меня есть простой user account в системе. A>2. я на него захожу. A>3. в этом account'е я собираю компилятором Оберона компилятор ассемблера. A>4. пишу программу на ассемблере, портящую память (или дающую мне права root'а). A>5. собираю ее компилятором ассемблера. A>6. запускаю. A>7. система вылетает (либо blue screen, либо я становлюсь root'ом). A>Всё это происходит из под user account'а. Каким образом bluebottle с его программной защитой памяти мне может что-либо противопоставить?
Например, если ограничить загрузку модулей.
Разрешить загружать только модули, собранные штатным компилятором.
Re[15]: Священная корова Оберона (специально для СГ).
absolute wrote: > Например, если ограничить загрузку модулей. > Разрешить загружать только модули, собранные штатным компилятором.
И каким образом это будет проверяться? Сами-то хоть подумали?
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[24]: Священная корова Оберона (специально для СГ).
absolute wrote: > П>А, да, я и забыл! Согласен, это полностью заменит и базы данных и 3-D > моделирование. > Вы же программисты!!! Вы должны писать код!!! Вот и напишите всё что надо!!!
Угу. Если бы мне абсолютно надо было бы использовать BlueBottle, то я бы
сделал так: написал бы минимальный компилятор С, собрал бы им GCC,
скомпилировал им Linux и поставил бы его вместо BB.
> Правда, сначала придётся выучить Оберон. Но это очень простой язык. > И всегда есть люди, готовые помочь. Даже просить не надо.
Если апологеты Оберона не понимают, что ОС в которой нельзя использовать
другие языки программирования — нафиг никому не нужна, то это уже клиника.
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[22]: Священная корова Оберона (специально для СГ).
Здравствуйте, absolute,
GN>>Вы считаете, что пользователи добровольно закачивают себе на компьютер malware и запускают его осознно?
A>Если речь идёт о почтовых вирусах, то можно сказать и так. A>Но существуют пользователи, которые осознанно не запускают malware.
Речь идёт обо всём подряд, что проникает на компьютер потайными тропами. Я конечно понимаю, что Вы можете возразить, что в правильной ОС данные на стеке или куче никогда не будут выполняться, но на практике всякие чудеса случаются.
A>Против тупоголового администратора вообще ни одна ОСь не поможет. A>В этом смысле Oberon (и Bluebottle) ничуть не хуже других. Даже лучше.
Вот смотрите — запускает пользователь без прав некоторое malware, а оно лезет в ядро — что бы прова поднять. Теоретически, делаются проверки и т.п. — это везде так. А практически, если нет разделения по аппаратным кольцам защиты, достаточно будет пропадчить эти проверки в ядре, и делать всё что душе угодно. Аппаратная же защита не даст никому куда попало писать.
A>Просто она достигает целей другими механизмами.
Какими?
People who are more than casually interested in computers should have at least some idea of what the underlying hardware is like. Otherwise the programs they write will be pretty weird (c) D.Knuth
Re[16]: Священная корова Оберона (специально для СГ).
Пацак wrote: > То есть как?! > А как же > A>Разработчики системы Oberon уже написали весь необходимый код для вас. > Хотя понятно, многопользовательность, похоже, это не необходимый код.
Ага, надо просто сесть и за пару дней по методике Усова написать все на
Обероне
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[16]: Священная корова Оберона (специально для СГ).
Здравствуйте, absolute, Вы писали:
A>Например, если ограничить загрузку модулей. A>Разрешить загружать только модули, собранные штатным компилятором.
В загрузчик зашить параметры поставляемых с ним модулей (длина, CRC, etc). Остальные модули признать незаконными. Иначе откуда оный загрузчик отличит своих от чужих?
В одной из прошлых войн было установлено, что любой код, обращающийся к модулю SYSTEM является потенциально опасным. По-моему, основная тема так и звучала: "Нужна ли в Oberon защита памяти". Если в ней покопаться, можно найти ответ на этот и другие вопросы, поднятые в очередной раз в текущей ветке.
Re[17]: Священная корова Оберона (специально для СГ).
Здравствуйте, Cyberax, Вы писали:
C>absolute wrote: >> Например, если ограничить загрузку модулей. >> Разрешить загружать только модули, собранные штатным компилятором. C>И каким образом это будет проверяться? Сами-то хоть подумали?
Да хотя бы при помощи электронной цифровой подписи. Так проверяются в настоящее время драйвера для WinXP.
Горячие споры разгорелись вокруг BlueBottle, хотя надо просто-напросто понимать, что это исследовательсий проект и с этой точки зрения он имеет массу интересных и революционных идей. Но его нельзя рассматривать как ОС для широкого применения, для этого требуется еще масса работы, с программированием как таковым связанной мало: usability, маркетинг, поддержка широкого спектра современного оборудования, поддержка со стороны разработчиков ПО и проч. Но вот как источник идей — Оберон, BlueBottle, Zonnon и все остльное, что сделано в стенах ETH представляет большой интерес. Кстати, если вы не в курсе — Микрософт активно сотрудничает с ETH и разработчиками BlueBottle в частности и многое из того, что мы увидим в Windows Presentation Foundation было изобратено и обкатано в ETH.
Очень рекомендую спорящим сторонам посмотреть в сторону MS OS Singularity. Созданная по принципам, схожим с теми, на чем основан BlueBottle, она позиционируется самим разработчиками как полигон для дальнейших исследований по разработке надежного и безопасного ПО. Важнейшей идеей в Singularity явлается понятие программно-изолированных процессов — это код, принадлежащий разным процессам работает в едином адресном пространстве, а защита памяти осуществляется на основе использования безопасного языка (модифицированный С#).
Singularity мы также не увидим на прилавках как самостоятельный продукт от Микрософт, но идеи, на ней обкатанные будут появляться в будущих версиях Windows.
Re[18]: Священная корова Оберона (специально для СГ).
Kh_Oleg wrote: > > C>absolute wrote: >>> Например, если ограничить загрузку модулей. >>> Разрешить загружать только модули, собранные штатным компилятором. > C>И каким образом это будет проверяться? Сами-то хоть подумали? > > Да хотя бы при помощи электронной цифровой подписи. Так проверяются в > настоящее время драйвера для WinXP.
Кстати, о драйверах в виндовсе.
Подписанность драйверов проверяется только при нормальной процедуре
инсталляции. Но никто не мешает сказать CreateService(), указать путь к
вашему .sys-файлу, указать SERVICE_KERNEL_DRIVER в качестве типа
сервиса, и потом запустить сервис с помощью StartService() — и все,
драйвер будет загружен, система даже и не пикнет про его
неподписанность, и при этом все совершенно легально, без какого-либо
недокументированного кода.
Вот такая вот security by obscurity
Posted via RSDN NNTP Server 2.0
Re[18]: Священная корова Оберона (специально для СГ).
Kh_Oleg wrote: > Да хотя бы при помощи электронной цифровой подписи. Так проверяются в > настоящее время драйвера для WinXP.
А откуда брать проверяющий ключ?
Представим такую ситуацию: я скачиваю крутую тулзу, в исходники которой
хакер Вася вставил закладку (и не надо говорить, что она сразу будет
видна — фиг чего видно с первого взгляда в 10Мб кода). Системный
компилятор все нормально скомпилит. При запуске программы эта закладка
найдет исполняемый файл компилятора, откроет его, и прочитает из него
секретный ключ.
Ну а затем этим секретным ключем все что нужно уже можно подписать.
И я уж не говорю про такую мелочь, что _ВЕСЬ_ софт должен быть в виде
исходников.
> Горячие споры разгорелись вокруг BlueBottle, хотя надо просто-напросто > понимать, что это исследовательсий проект и с этой точки зрения он имеет > массу интересных и революционных идей
Это даже не смешно. Там нет НИ ОДНОЙ новой идеи даже для 90го года.
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[19]: Священная корова Оберона (специально для СГ).
Вы, кажется, невнимательно читаете чужие сообщения.
C>Kh_Oleg wrote: >> Да хотя бы при помощи электронной цифровой подписи. Так проверяются в >> настоящее время драйвера для WinXP. C>А откуда брать проверяющий ключ?
А откуда берется ключ в случае с драйверами в WinXP?
C>Представим такую ситуацию: я скачиваю крутую тулзу, в исходники которой C>хакер Вася вставил закладку (и не надо говорить, что она сразу будет C>видна — фиг чего видно с первого взгляда в 10Мб кода). Системный C>компилятор все нормально скомпилит. При запуске программы эта закладка C>найдет исполняемый файл компилятора, откроет его, и прочитает из него C>секретный ключ. C>Ну а затем этим секретным ключем все что нужно уже можно подписать.
Вообще-то надежность на основе подписи основана на том, что "я верю, что фирма Х не создаст вредоносный код" А подпись — это всего лишь средство доказать, что данный код — это именно код, созданный в фирме Х. Это первое. Второе, ознакомьтесь, пожалуйста, с принципом электронной подписи. Секретный ключ находится только у разработчика софта, а не в теле компилятора. В теле компилятора есть алгоритм проверки подписи и открытый ключ.
Третье, не скомпилирует. Почему — см. ниже.
C>И я уж не говорю про такую мелочь, что _ВЕСЬ_ софт должен быть в виде C>исходников.
Глупость.
Попробую объяснить еще раз. Краеугольным камнем программно реализуемой защиты кода является:
1. Безопасный язык, чьи конструкции не позволяют создавать вредоносный код.
2. Небезопасный компилятор, которому тем не менее можно доверять. Это узкое место подобных систем. В настощее время в Singularity оно решается путем использования только одной конкреной реализации компилятора, но в будущем разработчики планируют создать верифицируемый Intermediate
Language, который исключит компилятор из набора программ, которому приходится верить на слово.
>> Горячие споры разгорелись вокруг BlueBottle, хотя надо просто-напросто >> понимать, что это исследовательсий проект и с этой точки зрения он имеет >> массу интересных и революционных идей C>Это даже не смешно. Там нет НИ ОДНОЙ новой идеи даже для 90го года.
Убедить Вас невозможно. В конце концов, критерии интересности и революционности для каждого свои. Кто-то сумеет разглядеть интересную идею, чтобы потом использовать ее у себя, другому все это покажется неинтересным, потому что не в красивой обертке. Оба имеют право иметь свое мнение.
Просто несколько примеров:
1. Программная защита памяти. Об этом здесь сказано много. Я не хочу спорить о том, жизнеспособна или нет данная технология, это мы скоро узнаем от Микрософт. Но очевидно одно: технология однозначно интересная и довольно революционная (я больше не знаю, где она применяется, кроме Singularity).
2. Longhorn Aero Glass. Этого нет в том дистрибутиве, что лежит на сайте, но тем не менее, корни WPF уходят в ETH.
3. "Даже для 90 года" Разве были в 90 году гипертекстовые документы и вставка в документы различных объектов (картинок, музыки, и проч.) ? Даже Win 3.1 и Presentation manager OS/2 с соответствующими фичами, если не ошибаюсь, появились позже.
Re[20]: Священная корова Оберона (специально для СГ).
Kh_Oleg wrote: >> > Да хотя бы при помощи электронной цифровой подписи. Так проверяются в >> > настоящее время драйвера для WinXP. > C>А откуда брать проверяющий ключ? > А откуда берется ключ в случае с драйверами в WinXP?
Его дает MS, и хранится он в секретном сейфе у компании-производителе
драйвера (которая его компилирует, подписывает и отдает в бинарном
виде). У пользователя только публичный ключ.
> Вообще-то надежность на основе подписи основана на том, что "я верю, что > фирма Х не создаст вредоносный код" А подпись — это всего лишь средство > доказать, что данный код — это именно код, созданный в фирме Х.
Цифровая подпись нужна в "модели Оберона" даже для локальных компиляций.
> В теле компилятора есть алгоритм проверки подписи и открытый ключ.
Нда. Это еще и RTFM про подписи...
> 2. Небезопасный компилятор, которому тем не менее можно доверять.
Вот я получаю бинарик из сети. Как мне быть увереным, что в нем
безопасный код?
> который исключит компилятор из набора программ, которому > приходится верить на слово.
Ну да, еще лет через 10.
> 1. Программная защита памяти. Об этом здесь сказано много. Я не хочу > спорить о том, жизнеспособна или нет данная технология, это мы скоро > узнаем от Микрософт. Но очевидно одно: технология однозначно интересная > и довольно революционная (я больше не знаю, где она применяется, кроме > Singularity).
Блин, это было опробовано в с-е-м-и-д-е-с-я-т-ы-х годах на Lisp-машинах.
> 2. Longhorn Aero Glass. Этого нет в том дистрибутиве, что лежит на > сайте, но тем не менее, корни WPF уходят в ETH. Валяюсь на полу от хохота.... Осталось доказать, что древние славяне
тоже корнями уходят в ETH...
> 3. "Даже для 90 года" Разве были в 90 году гипертекстовые документы и > вставка в документы различных объектов (картинок, музыки, и проч.) ?
Да, было. Например, в виде OLE (еще версии 1) в Windows (версии 2). В
Маках тоже были свои разработки.
Про многочисленные предидущие разработки я даже и не говорю...
--
С уважением,
Alex Besogonov (alexy@izh.com)
Posted via RSDN NNTP Server 2.0
Sapienti sat!
Re[5]: Священная корова Оберона (специально для СГ).
Здравствуйте, Курилка, Вы писали:
_>>я понял твое собщение так: oberon — плохой язык т.к. ты не смог скачать файл размером 64М с сайта написаном на обероне. (мысли как я понял вовсе не светлые) К>Мысль в том, что это показатель качества и соотвествия современным стандартам кода на Обероне, коли сами создатели это пишут.
1. отсуствие некой функциональности на их сайте, написанном на обероне (конкретно — докачка) не имеет ничего общего с качеством
2. про стандарты кода я вообще не понял. какому стандарту не соотвествует оберон?!
3. про докачку — какому проценту пользователей интернета она нужна? и какой процент этих пользователей хочет скачать оберон? может просто не стоит тратить время и писать эту докачку?
К>Пока я не видел ещё ни одной системы на Обероне, достойной подражания (в отличие от многих других языков прогаммирования)
я не могу тут спорить (я тему плохо знаю). могу поспекулировать на тему, что язык достаточно новый, что поддерживается он на уровне единомышленников, а не коммерчески и т.д., что их сайт (сервер) — это не последняя версия. он все еще в разработке и т.д.
Re[6]: Священная корова Оберона (специально для СГ).
Здравствуйте, ilya_ny, Вы писали:
_>1. отсуствие некой функциональности на их сайте, написанном на обероне (конкретно — докачка) не имеет ничего общего с качеством
Зато наводит на определенные мысли о том, какими методами для обероновских проектов достигается "сокращение трудоемкости и времени разработки в разы".
_>я не могу тут спорить (я тему плохо знаю). могу поспекулировать на тему, что язык достаточно новый,
18 лет — и все "новый"?
Ку...
Re[7]: Священная корова Оберона (специально для СГ).
Здравствуйте, Пацак, Вы писали:
П>Здравствуйте, ilya_ny, Вы писали:
_>>1. отсуствие некой функциональности на их сайте, написанном на обероне (конкретно — докачка) не имеет ничего общего с качеством
П>Зато наводит на определенные мысли о том, какими методами для обероновских проектов достигается "сокращение трудоемкости и времени разработки в разы".
а это пропустил...
3. про докачку — какому проценту пользователей интернета она нужна? и какой процент этих пользователей хочет скачать оберон? может просто не стоит тратить время и писать эту докачку?
если из-за ненаписания практически ненужной (?) функциональности время разработки сокращается в разы, то я за. и вне зависимости от языка программирования
_>>я не могу тут спорить (я тему плохо знаю). могу поспекулировать на тему, что язык достаточно новый,
П>18 лет — и все "новый"?
кстати, он 18 лет назад был таким как сейчас или изменился ?