Re[4]: Безопасность ОС. Можно ли решить кардинально?
От: Andrew.W Worobow https://github.com/Worobow
Дата: 18.09.14 09:52
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

AWW>>Ну почему-же неразрешимая.


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


AWW>>Возмите просто архитектуру где есть ЦПУ1 есть память где хранятся команды ОП1 и есть где хранятся данные ОП2. ЦПУ1 не имеет прав на запись в ОП1 и имеет все права на ОП2. Есть ЦПУ2 который имеет право на запись в ОП1 и не имеет прав на запись в ОП2.


KV>И откуда ЦПУ2 будет брать команды для загрузки в ОП1? Вопрос риторический, сразу перескочу к главному: кто из них будет иметь право писать в порты внешних устройств, а кто считывать из них?


Из ПЗУ, например. Тут проблемы стартовой инициализации нет. Точнее ее лучше пока не ставить, полагая, что система как-то перешла в нужное/рабочее состояние.
Что касается внешних портов, то это простая задача, ну можно для начала считать что портов вовсе нет.
Не все кто уехал, предал Россию.
Re[4]: Безопасность ОС. Можно ли решить кардинально?
От: Andrew.W Worobow https://github.com/Worobow
Дата: 18.09.14 09:54
Оценка:
Здравствуйте, ononim, Вы писали:

O>Да-да. Пользователи, как ни странно, удобства хотят — открывать вордом документы скачанные в браузере и таскать картинки из ворда в скайп. Причем без тыщи подтверждений и проверок, а так чтоб просто работало.


ИМХА пока до ворда далеко. Пока надо придумать архитектуру. А потом в ней уже искать "как" удобно.
Не все кто уехал, предал Россию.
Re[5]: Безопасность ОС. Можно ли решить кардинально?
От: ononim  
Дата: 18.09.14 10:03
Оценка: +1
O>>Да-да. Пользователи, как ни странно, удобства хотят — открывать вордом документы скачанные в браузере и таскать картинки из ворда в скайп. Причем без тыщи подтверждений и проверок, а так чтоб просто работало.
AWW>ИМХА пока до ворда далеко. Пока надо придумать архитектуру. А потом в ней уже искать "как" удобно.
Как раз таки архитектуру надо придумывать с учетом этого фактора в первую очередь, а не придумывать нечто сферическое в котором потом сверлить отверстия и вставлять в них костыли — тогда точно выйдет дырявое решето на костылях.
Как много веселых ребят, и все делают велосипед...
Re[2]: Безопасность ОС. Можно ли решить кардинально?
От: ononim  
Дата: 18.09.14 10:06
Оценка:
AWW>>Форум "философия", ... пофилосовствуем на тему — Можно ли как-то принципиально, раз и на всегда решить ворос безопасности?
AWW>>Какие тут есть проблемы:
AWW>>1) Вирусы
AWW>>2) Трояны
AWW>>3) Разграничение
S>Начните с гарвардской архитектуры вместо фонНеймановской. Сразу станет полегче.
Только почемуто практические реализации гарвардской архитектуры содержат в себе потайные ходы, которые придают ей что-то неуловимо-фоннеймановское
Как много веселых ребят, и все делают велосипед...
Re[4]: Безопасность ОС. Можно ли решить кардинально?
От: Andrew.W Worobow https://github.com/Worobow
Дата: 18.09.14 10:07
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Излишняя поэтика вредит инженерому делу. Вот, скажем, если "построить" — это найти произведение N простых множителей, а, соответственно, "сломать" — это разложить число обратно на простые множители, то ваша утверждение строго неверно.


Нет обычно в народе, принято считать, что сломать это означает, что-то удалить, или найти обходной путь.
Безопасники тем и отличаются от хакеров, что они понимают слово сломать по своему. Что-то типа я построил калитку, и три метра забора слева и справа, на кулитку поставил сторожа, все ходят и показывают ему пропуск. Сломать тут в понимании безопасника это значит подделать пропуск. Ну типа вот все же про правилам.
А сломать в понимании хакера, это значит обойти эти три метра в поле, и пройти куда надо.
То есть сломать хакера шире чем безопасника.
Вот и вы примерно исходите из этого — задаете правило для "сломать". А для сломать правило инверсное. То есть "не делать" что-то это запрешено правилами, а все остальное в рамках правил.

S>Если вы хотите поговорить про capability-based security, то лучше так и формулировать — мы же не в детском саду.


Я как раз — всю жизнь исходил из того что для того чтобы правильно пользоваться велосипедом его надо изобрести.
То есть давайте уйдем от чужих наработок. Вообще с чистого листа посмотрим на проблему.
Не все кто уехал, предал Россию.
Re[6]: Безопасность ОС. Можно ли решить кардинально?
От: Andrew.W Worobow https://github.com/Worobow
Дата: 18.09.14 10:10
Оценка:
Здравствуйте, ononim, Вы писали:

O>Как раз таки архитектуру надо придумывать с учетом этого фактора в первую очередь, а не придумывать нечто сферическое в котором потом сверлить отверстия и вставлять в них костыли — тогда точно выйдет дырявое решето на костылях.


Дело в том, что когда придумывали ЭТИ ( нашу, текущую) архитектуру никто о безопасности не думал. Все думали только о том, как бы хоть как-то сделать. ИМХА сейчас уже количество перешло в качество, можно попробовать решить задачу еще раз, но уже принимая во внимание что есть проблема беопасности, да не только она кстати. Но вот сейчас хочется поговорить именно с позиции про безопасность.
Не все кто уехал, предал Россию.
Re[3]: Безопасность ОС. Можно ли решить кардинально?
От: Sharowarsheg  
Дата: 18.09.14 10:19
Оценка:
Здравствуйте, ononim, Вы писали:

S>>Начните с гарвардской архитектуры вместо фонНеймановской. Сразу станет полегче.

O>Только почемуто практические реализации гарвардской архитектуры содержат в себе потайные ходы, которые придают ей что-то неуловимо-фоннеймановское

Ну дык вот, сделать уже гарвардскую один раз.
Re[7]: Безопасность ОС. Можно ли решить кардинально?
От: ononim  
Дата: 18.09.14 10:47
Оценка: +1
O>>Как раз таки архитектуру надо придумывать с учетом этого фактора в первую очередь, а не придумывать нечто сферическое в котором потом сверлить отверстия и вставлять в них костыли — тогда точно выйдет дырявое решето на костылях.
AWW>Дело в том, что когда придумывали ЭТИ ( нашу, текущую) архитектуру никто о безопасности не думал. Все думали только о том, как бы хоть как-то сделать.
Когда придумывали текущую архитектуру NT о безопасности очень даже отлично подумали. И она отлично выполняет свои задачи. Ее проблема — она слишком универсальна и изначально рассчитана на грамотных админов и программистов. В ней сущности logon session, security domain, application, process — раздельные вещи. Если объединим security domain + application + process, убрав logon sessions и запретим администраторов вообще, + к этому включим в политиках безопасности запуск только подписанных определенными вендорами исполняемых образов (включая длл) — получим по сути модель безопасности современных мобильных осей, включая ios и winrt'шные песочницы.
То есть можно административно-программно раскорячить NT так, что в неплохой мере будет удовлетворять требованиям которые вы выкатили. Но при этом она потеряет совместимость с туевой кучей софта, в определенной мере перестав быть той NT, к которой все привыкли.
И да — даже просто минимально-корректно настроенная NT фактически не подхватывает вирусов. В который раз приведу пример из жизни — моя 2я половинка, совершенно не из мира IT, пользуется лаптопом без антивиря уже 6 лет (лаптоп менялся . Ходит по контактам, форумам, фильмы смотрит с каких то сайтов. И ни разу не было обнаружено ни одного малвара. Секрет? Она сидит под юзером, если чтото требует админских прав — приходит админ (то есть я ) и решает вопрос.
Как много веселых ребят, и все делают велосипед...
Re: Безопасность ОС. Можно ли решить кардинально?
От: Pavel Dvorkin Россия  
Дата: 18.09.14 11:05
Оценка:
Здравствуйте, Andrew.W Worobow, Вы писали:

Из довольно древнего файла о поимке льва в пустыне

///////////////////////////////////////////////////////////////

Админ.
Выкапывает вокруг клетки ров, заполняет его концентрированной кислотой,
устанавливает вдоль берега противотанковые ежи и противопехотные мины,
все это опутывает колючей проволокой. К проволоке и прутьям клетки
подключает провода от генератора высокого напряжения. Вешает на клетку
10 кодовых и 12 амбарных замков. Заходит внутрь, запирается на все
замки, пускает ток, ключи проглатывает, коды забывает и говорит, что
теперь ему никакой лев не страшен.

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

///////////////////////////////////////////////////////////////

Если серьезно...

Наверное, можно, а вот нужно ли ? Какие средства для этого понадобятся, сколько стоить будет, какие неудобства создаст ? Оправдывает ли это то увеличение безопасности, которое мы получим ?

Чаще ведь требуется не абсолютный идеал получить, а добиться оптимального с той или иной точки зрения. И зависит это от того, для какой цели ПО применяется.

Можно сделать автобусы безопасными, чтобы они людей не давили ? Можно! В 19 веке еще в Лондоне сделали. По тогдашнему закону перед каждым автобусом должен был идти человек с красным флагом, предупреждая тем самым пешеходов о той страшной опасности, которая на них надвигается. И все — автобусы людей не давили.

Правда, этот закон недолго продержался . А нынешние автобусы людей иногда давят, но только этот закон реанимировать что-то никто не предлагает.
With best regards
Pavel Dvorkin
Отредактировано 18.09.2014 11:23 Pavel Dvorkin . Предыдущая версия . Еще …
Отредактировано 18.09.2014 11:20 Pavel Dvorkin . Предыдущая версия .
Re[3]: Безопасность ОС. Можно ли решить кардинально?
От: Sinix  
Дата: 18.09.14 11:25
Оценка:
Здравствуйте, kochetkov.vladimir, Вы писали:

AWW>>>Проблема "Вирусы", это в первую очередь распостранение, можно ли как то в принципе придумать так чтобы вирусы не могли распостраняться?

WH>>Verve OS
KV>Что именно в Verve помешает распространяться вирусам? o_O

Чую подвох, т.к. ответ на мой взгляд очевиден.

Verve здесь оверкилл.

Для разумной уверенности в "всё ок" достаточно распространения софта только через доверенные каналы с проверкой на предмет использования небезопасного API (см на WinRT). Разумеется, считаем весь системный код доверенным, целостность софта проверяется начиная с момента загрузки (см на Secure Boot). Гарантия не абсолютная, но сопоставимая с стоимостью защищаемых данных.


KV>...и обеспечить их взаимодействие с ОС и друг с другом. И вот тут-то и начинается самое интересное

Взаимодействие только через стандартные системные контракты, контракты описаны в манифесте, разрешение спрашивается при первом использовании/при установке софта.
Дальше — только социальная инженерия, но от неё силами ОС не закроешься никак.

Что упустил?
Re[2]: Безопасность ОС. Можно ли решить кардинально?
От: Abyx Россия  
Дата: 18.09.14 11:36
Оценка:
Здравствуйте, Sinclair, Вы писали:

S>Здравствуйте, Andrew.W Worobow, Вы писали:


AWW>>Форум "философия", ... пофилосовствуем на тему — Можно ли как-то принципиально, раз и на всегда решить ворос безопасности?


S>Пока что всё выглядит как попытка решить социальную проблему техническими средствами.

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

вот приложение
scriptName = input()
scriptText = open(scriptName).read()
eval(scriptText)


расскажи что ты будешь тут подписывать, и как это поможет.
In Zen We Trust
Re[4]: Безопасность ОС. Можно ли решить кардинально?
От: AlexRK  
Дата: 18.09.14 12:40
Оценка:
Здравствуйте, ononim, Вы писали:

WH>>>Достаточно заставить все приложения устанавливаться в персональную песочницу.

KV>>...и обеспечить их взаимодействие с ОС и друг с другом. И вот тут-то и начинается самое интересное
O>Да-да. Пользователи, как ни странно, удобства хотят — открывать вордом документы скачанные в браузере и таскать картинки из ворда в скайп. Причем без тыщи подтверждений и проверок, а так чтоб просто работало.

Тут главное — четкий контроль, кто что может делать. Браузер может качать документы и класть их в соответствующее хранилище, а ворд может читать документы из этого хранилища. Все ОК, никаких лишних подтверждений. В современных осях в этом смысле царит полный хаос.
Re[3]: Безопасность ОС. Можно ли решить кардинально?
От: AlexRK  
Дата: 18.09.14 12:46
Оценка:
Здравствуйте, Abyx, Вы писали:

A>вот приложение

A>
A>scriptName = input()
A>scriptText = open(scriptName).read()
A>eval(scriptText)
A>


A>расскажи что ты будешь тут подписывать, и как это поможет.


В данном случае мы вправе ожидать, что произвольный скрипт может выполнить любые действия, доступные интерпретатору.
Re[5]: Безопасность ОС. Можно ли решить кардинально?
От: ononim  
Дата: 18.09.14 12:50
Оценка:
WH>>>>Достаточно заставить все приложения устанавливаться в персональную песочницу.
KV>>>...и обеспечить их взаимодействие с ОС и друг с другом. И вот тут-то и начинается самое интересное
O>>Да-да. Пользователи, как ни странно, удобства хотят — открывать вордом документы скачанные в браузере и таскать картинки из ворда в скайп. Причем без тыщи подтверждений и проверок, а так чтоб просто работало.

ARK>Тут главное — четкий контроль, кто что может делать. Браузер может качать документы и класть их в соответствующее хранилище, а ворд может читать документы из этого хранилища. Все ОК, никаких лишних подтверждений. В современных осях в этом смысле царит полный хаос.

А если я захочу браузером отправить документ?
Как много веселых ребят, и все делают велосипед...
Re[4]: Безопасность ОС. Можно ли решить кардинально?
От: Andrew.W Worobow https://github.com/Worobow
Дата: 18.09.14 12:55
Оценка:
Здравствуйте, AlexRK, Вы писали:

A>>расскажи что ты будешь тут подписывать, и как это поможет.


ARK>В данном случае мы вправе ожидать, что произвольный скрипт может выполнить любые действия, доступные интерпретатору.


Вообще-то скрипты подписываются уже давно-давно, причем они шифруются еще при этом, ну типа проверяется ЭЦП, затем расшифровывается закрытым ключом если ЭЦП верна.
Выглядят они внутри как бинарники, можно хранить в виде текстовых base64. Тут как раз проблем нет.
Проблемы в том, что надо иметь такую систему, где можно было бы выполнять любой код, и это бы ни приводило к нарушению системы. То есть не нужно ни ЭЦП ни рутовские права.
Не все кто уехал, предал Россию.
Re[6]: Безопасность ОС. Можно ли решить кардинально?
От: AlexRK  
Дата: 18.09.14 13:02
Оценка:
Здравствуйте, ononim, Вы писали:

ARK>>Тут главное — четкий контроль, кто что может делать. Браузер может качать документы и класть их в соответствующее хранилище, а ворд может читать документы из этого хранилища. Все ОК, никаких лишних подтверждений. В современных осях в этом смысле царит полный хаос.

O>А если я захочу браузером отправить документ?

Я думаю, что отправка через браузер различных типов файлов — вполне ожидаемое действие, и соответствующее разрешение по умолчанию будет. А вот если инсталлятор программы VasyaPupkendMegaApp захочет слелать то же самое, или захочет записать некий файлик в репозиторий драйверов, то ему в этом будет отказано.
Re[5]: Безопасность ОС. Можно ли решить кардинально?
От: AlexRK  
Дата: 18.09.14 13:10
Оценка:
Здравствуйте, Andrew.W Worobow, Вы писали:

ARK>>В данном случае мы вправе ожидать, что произвольный скрипт может выполнить любые действия, доступные интерпретатору.

AWW>Вообще-то скрипты подписываются уже давно-давно

Вообще-то слово "input" намекает на произвольное происхождение скрипта, например ввод его с клавиатуры.

AWW>Проблемы в том, что надо иметь такую систему, где можно было бы выполнять любой код, и это бы ни приводило к нарушению системы. То есть не нужно ни ЭЦП ни рутовские права.


Что понимается под "нарушением системы" и как отличить нарушение от желаемого действия? Удаление документа — это нарушение системы?
Re[6]: Безопасность ОС. Можно ли решить кардинально?
От: Andrew.W Worobow https://github.com/Worobow
Дата: 18.09.14 13:21
Оценка:
Здравствуйте, AlexRK, Вы писали:

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


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

AWW>>Проблемы в том, что надо иметь такую систему, где можно было бы выполнять любой код, и это бы ни приводило к нарушению системы. То есть не нужно ни ЭЦП ни рутовские права.


ARK>Что понимается под "нарушением системы" и как отличить нарушение от желаемого действия? Удаление документа — это нарушение системы?


Нарушение это не контролируемое, не регламентированное действие. То есть если по регламенту можно удалить документ, то это не нарушение.
А вот если при наличии "запрета" удалять, допумент все же можно ( как-то, внедрив код, взломав ядро и пр ) удалить, то это нарушение системы.
Не все кто уехал, предал Россию.
Re[3]: Безопасность ОС. Можно ли решить кардинально?
От: WolfHound  
Дата: 18.09.14 13:37
Оценка: +1
Здравствуйте, kochetkov.vladimir, Вы писали:

WH>>Verve OS

KV>Что именно в Verve помешает распространяться вирусам? o_O
Как устроить эскалацию привилегий через код который не может портить память?
Добавляем сюда, что Verve является развитием Singularity, в которой безопасность построена на CBS.
И теперь расскажи, как через это пролезет вирь?

KV>...и обеспечить их взаимодействие с ОС и друг с другом. И вот тут-то и начинается самое интересное

Ничего интересного. Всё скучно и банально.
1)Системные файлы убираем с глаз долой. Они не нужны никому и никогда. Нет у пользователей задачи ковыряться в системных файлах.
2)Даём каждому приложения персональную папочку, в которой оно может делать что угодно.
3)Для того чтобы приложения могли получать доступ к файлам за приделами своей папочки достаточно сделать так чтобы приложение могло попросить оболочку показать пользователю диалог открытия файла.
То же самое касается drag&drop и copy&paste. Всё что нужно чтобы оболочка убедилась, что это делает пользователь руками. А не левый софт шалит.

Наличие такой системы безопасности обычные пользователи не заметят вообще.
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
Re[4]: Безопасность ОС. Можно ли решить кардинально?
От: ononim  
Дата: 18.09.14 13:40
Оценка:
WH>>>Verve OS
KV>>Что именно в Verve помешает распространяться вирусам? o_O
WH>Как устроить эскалацию привилегий через код который не может портить память?
WH>Добавляем сюда, что Verve является развитием Singularity, в которой безопасность построена на CBS.
WH>И теперь расскажи, как через это пролезет вирь?
KV>>...и обеспечить их взаимодействие с ОС и друг с другом. И вот тут-то и начинается самое интересное
WH>Ничего интересного. Всё скучно и банально.
WH>1)Системные файлы убираем с глаз долой. Они не нужны никому и никогда. Нет у пользователей задачи ковыряться в системных файлах.
WH>2)Даём каждому приложения персональную папочку, в которой оно может делать что угодно.
WH>3)Для того чтобы приложения могли получать доступ к файлам за приделами своей папочки достаточно сделать так чтобы приложение могло попросить оболочку показать пользователю диалог открытия файла.
WH>То же самое касается drag&drop и copy&paste. Всё что нужно чтобы оболочка убедилась, что это делает пользователь руками. А не левый софт шалит.
WH>Наличие такой системы безопасности обычные пользователи не заметят вообще.

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