Построение безопасной системы из небезопасных компонентов.

Любые разговоры которые хоть как-то связаны с тематикой форума

Модератор: Модераторы разделов

Ответить
max100
Сообщения: 12

Построение безопасной системы из небезопасных компонентов.

Сообщение max100 »

Только сразу просьба не уходить в сторону оффтопа.

В общем ситуация такая:
как можно сделать систему максимально безопасной зная что все её компоненты не надежны и им нельзя доверять? В том числе (и даже в первую очередь) нельзя доверять двум ключевым компонентам - ядру и библиотеке си. Их пишут обычные люди которым могут, а кому-то уже сделали предложение от которого нельзя отказаться. Мы не можем сами все переписать с "0" значит нужно что-то придумать. Полная безопасность конечно не достижима, но мы тоже можем что-то сделать и где-то затруднить атаку против нас. Вопрос что и как мы это можем сделать?
Спасибо сказали:
Аватара пользователя
/dev/random
Администратор
Сообщения: 5289
ОС: Gentoo

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение /dev/random »

max100 писал(а):
09.08.2013 10:15
В том числе (и даже в первую очередь) нельзя доверять двум ключевым компонентам - ядру и библиотеке си. Их пишут обычные люди которым могут, а кому-то уже сделали предложение от которого нельзя отказаться.

Если аудит кода вам не по карману, то остаётся только надеяться на принцип "больше глаз - меньше ошибок".
Спасибо сказали:
Аватара пользователя
Stauffenberg
Сообщения: 2042
Статус: ☮ PEACE ☮
ОС: открытая и свободная

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение Stauffenberg »

max100 писал(а):
09.08.2013 10:15
как можно сделать систему максимально безопасной зная что все её компоненты не надежны и им нельзя доверять?

* провести аудит кода
* открыть исходники и пригласить сообщество к разработке
* добавляем unit-тесты

max100 писал(а):
09.08.2013 10:15
В том числе (и даже в первую очередь) нельзя доверять двум ключевым компонентам - ядру и библиотеке си.

Долго думал над этим предложением. Вообще-то... именно ядру и библиотеке Си можно доверять больше всего. Либо я Вас не понял (похоже, что тут проблема с запятыми).

max100 писал(а):
09.08.2013 10:15
Их пишут обычные люди которым могут, а кому-то уже сделали предложение от которого нельзя отказаться.

Ядро и библиотечные функции Си пишут не совсем "обычные люди". Разработчики, занимающиеся этими компонентами, это как правило профессиональные программисты. И что за предложение?

max100 писал(а):
09.08.2013 10:15
Мы не можем сами все переписать с "0" значит нужно что-то придумать. Полная безопасность конечно не достижима, но мы тоже можем что-то сделать и где-то затруднить атаку против нас. Вопрос что и как мы это можем сделать?

Для начала опишите хотя бы в общих чертах систему, стабильность работы которой Вы хотите повысить.
Labor omnia vincit

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” (Brian Kernighan)
Спасибо сказали:
Аватара пользователя
serzh-z
Бывший модератор
Сообщения: 8259
Статус: Маньяк
ОС: Arch, Fedora, Ubuntu
Контактная информация:

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение serzh-z »

max100
http://russian.joelonsoftware.com/Articles...stractions.html

QUOTE писал(а):Волшебство же состоит в том, что TCP основан на IP. Иными словами, TCP обязуется работать надёжно, используя лишь ненадёжные детали.
Спасибо сказали:
max100
Сообщения: 12

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение max100 »

Если аудит кода вам не по карману

Конечно не по карману, а с верой и надеждой это в церковь нужно, а не на тех. форум.

Долго думал над этим предложением. Вообще-то... именно ядру и библиотеке Си можно доверять больше всего. Либо я Вас не понял (похоже, что тут проблема с запятыми).

Ядро и библиотечные функции Си пишут не совсем "обычные люди". Разработчики, занимающиеся этими компонентами, это как правило профессиональные программисты.

Речь не идет о надежности, я говорю о "безопасной системе" которой хоть немного можно доверять. И у меня нет никаких разумных оснований доверять всем разработчикам ядра, чей код работает в моем kernel. Такая же фигня с libc.
Я думал понятно что речь о тотальном шпионаже всех за всеми, когда каждого разработчика/компанию могут принудить по закону или подкупить или шантажировать. И мы больше не можем полагаться на магическое слово Open source, это не дает никаких реальных гарантий.
Спасибо сказали:
azsx
Сообщения: 3684
ОС: calculate linux, debian, ubuntu

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение azsx »

надо дублировать системы и людей отвественные за технологические процессы. Например, мы не можем доверять циско, так как его могут обязать встроить бэкдоры именно для нашей организации. Значит надо мониторить трафик с свитча, иметь на складе 5 разных фирм на замену свитчей )и менять при первой необходимости), а также иметь людей которые мониторят трафик. И куча организационных моментов, например, давать премию за найденные проблемы в безопасности, менять работников по объектам через какое то время и т.п. Если бы я по блату залез в отдел ИТ безопасности какой либо аэс - я бы начинал копать отсюда. Но было бы куча всего еще...
зы
И мы больше не можем полагаться на магическое слово Open source

а где фраза, покупайте продукцию майкрософт?
Спасибо сказали:
Аватара пользователя
Stauffenberg
Сообщения: 2042
Статус: ☮ PEACE ☮
ОС: открытая и свободная

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение Stauffenberg »

max100 писал(а):
09.08.2013 16:22
Если аудит кода вам не по карману

Конечно не по карману, а с верой и надеждой это в церковь нужно, а не на тех. форум.

А тут третьего не дано. Либо Вы покупаете ИБ-специалиста, либо верите в аудит кода со стороны, к примеру, сообщества.

max100 писал(а):
09.08.2013 16:22
Долго думал над этим предложением. Вообще-то... именно ядру и библиотеке Си можно доверять больше всего. Либо я Вас не понял (похоже, что тут проблема с запятыми).

Ядро и библиотечные функции Си пишут не совсем "обычные люди". Разработчики, занимающиеся этими компонентами, это как правило профессиональные программисты.

Речь не идет о надежности, я говорю о "безопасной системе" которой хоть немного можно доверять. И у меня нет никаких разумных оснований доверять всем разработчикам ядра, чей код работает в моем kernel. Такая же фигня с libc.

Ни одна система не даст Вам 100% гарантий. Повысить безопасность системы можно только глубоким пониманием процессов, выполняющихся в этой системе.

max100 писал(а):
09.08.2013 16:22
Я думал понятно что речь о тотальном шпионаже всех за всеми, когда каждого разработчика/компанию могут принудить по закону или подкупить или шантажировать. И мы больше не можем полагаться на магическое слово Open source, это не дает никаких реальных гарантий.

Магическое слово, а точнее словосочетание - это Free Software, а не Open Source :)
В ядро системаы, которая по праву считается самой безопасной в мире (OpenBSD), были помещенны закладки. Сейчас их оттуда убрали, но 100% гарантий ее безопасности Вам все равно никто не даст :)



max100 писал(а):
09.08.2013 16:22
Я думал понятно что речь о...

Вы запрограммировать что-то хотите, или это вопрос о настройке сети?
Labor omnia vincit

"Debugging is twice as hard as writing the code in the first place.
Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.” (Brian Kernighan)
Спасибо сказали:
Аватара пользователя
SinClaus
Сообщения: 1951
Статус: Мучитель Мандривы
ОС: Arch,BSD

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение SinClaus »

Почему бы не посмотреть глубже? Топикстартер доверяет коду BIOS/UEFI? А зря, этот код в ППЗУ записывают вообще неизвестные китайцы, одержимые стремлением к мировому господству ;)
Вообще-то шутки шутками, но бывает...
Спасибо сказали:
Аватара пользователя
romuil
Сообщения: 2095
Статус: Ромунцель
ОС: ALTLinux Sisyphus

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение romuil »

SinClaus писал(а):
10.08.2013 10:40
Почему бы не посмотреть глубже? Топикстартер доверяет коду BIOS/UEFI? А зря, этот код в ППЗУ записывают вообще неизвестные китайцы, одержимые стремлением к мировому господству ;)
Вообще-то шутки шутками, но бывает...

Позволю себе цитатку
По ...[шандарахнутости] с кацапами сравнимы только китайцы, но китайцы сидят тихо. Потому что китайцы негромко 'прутся' себе по-китайски, на всё плотно 'забив'.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение drBatty »

serzh-z писал(а):
09.08.2013 16:03
Волшебство же состоит в том, что TCP основан на IP. Иными словами, TCP обязуется работать надёжно, используя лишь ненадёжные детали.

а при чём тут надёжность? Надёжная и безопасная система это деление на ноль.


max100 писал(а):
09.08.2013 16:22
И у меня нет никаких разумных оснований доверять всем разработчикам ядра, чей код работает в моем kernel. Такая же фигня с libc.

Ну КаГБэ код ядра и libc УЖЕ проверен. Да, именно так, САМИМ проверен. У НЕГО есть бюджет на аудит.

max100 писал(а):
09.08.2013 16:22
Я думал понятно что речь о тотальном шпионаже всех за всеми, когда каждого разработчика/компанию могут принудить по закону или подкупить или шантажировать. И мы больше не можем полагаться на магическое слово Open source, это не дает никаких реальных гарантий.

1. 100% гарантии даёт только морг.
2. Я лучше буду доверять OpenSource, странное поведение которого я всегда могу изучить.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
max100
Сообщения: 12

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение max100 »

а где фраза, покупайте продукцию майкрософт?

Это еще в 100 раз хуже.

Топикстартер доверяет коду BIOS/UEFI?

Нет, никому же нельзя доверять.
Спасибо сказали:
max100
Сообщения: 12

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение max100 »

Вот и до ядра добрались
до стандартов и реализаций
http://www.mail-archive.com/cryptography@m...m/msg12325.html

Я лучше буду доверять OpenSource, странное поведение которого я всегда могу изучить.

изучайте теперь, может еще что странное найдете
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение drBatty »

SinClaus писал(а):
10.08.2013 10:40
Топикстартер доверяет коду BIOS/UEFI? А зря, этот код в ППЗУ

...не работает. Да, ВНЕЗАПНО он нужен только при загрузке. Причём в однозадачном режиме, в котором оно может только первичный загрузчик lilo загрузить. В принципе. Это я про BIOS.

max100 писал(а):
08.09.2013 14:39
изучайте теперь, может еще что странное найдете

что значит "ещё"? Вы меня ни с кем не спутали?
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Аватара пользователя
bormant
Сообщения: 1354

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение bormant »

drBatty писал(а):
09.09.2013 09:16
Да, ВНЕЗАПНО он нужен только при загрузке. Причём в однозадачном режиме, в котором оно может только первичный загрузчик lilo загрузить. В принципе. Это я про BIOS.
Слишком красиво, чтобы быть правдой. Тем не менее, ядро в отдельных случаях грешит вызовом кода BIOS, увы. См. apm, acpi, call_pnp_bios() и т.п. Кроме того, сервера обычно имеют средства мониторинга, работающие параллельно с и независимо от ОС.
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение drBatty »

bormant писал(а):
09.09.2013 10:50
drBatty писал(а):
09.09.2013 09:16
Да, ВНЕЗАПНО он нужен только при загрузке. Причём в однозадачном режиме, в котором оно может только первичный загрузчик lilo загрузить. В принципе. Это я про BIOS.
Слишком красиво, чтобы быть правдой. Тем не менее, ядро в отдельных случаях грешит вызовом кода BIOS, увы. См. apm, acpi, call_pnp_bios() и т.п. Кроме того, сервера обычно имеют средства мониторинга, работающие параллельно с и независимо от ОС.

не то чтобы "красиво", а скорее упрощённо. Ну да, всякие apm таки вызываются, согласен. Вы тоже думаете, что это повод для паранойи? Я так считаю, что будет сложновато встроить следящий код в BIOS-apm так, что-бы он абсолютно прозрачно работал на _любых_ ядрах, и Linux и Win. Вангую, что если не будет прозрачно работать, то начнут копать. И таки вскроют. И если это будет не какой-нибудь никому не нужный noname, а скажем ASUS, то последствия будут глобальными... Я что-то очень сомневаюсь, что ASUS на такое пойдёт, ведь код в BIOS может прочитать кто угодно. Это вам не гугл, в котором отслеживание/шпионаж зарыто на стороне сервера.
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Aliech
Сообщения: 954
Статус: дилетант широкого профиля
ОС: Gentoo arm64 musl hardened
Контактная информация:

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение Aliech »

Не забываем, что есть вещи, которые исполняются "ниже" ОС. Посмотрите на встроенный IPMI intel'а, и поймёте, о чём я.
Это - бэкдор. Явный.

Но тысячам пофиг. Ибо intel не может желать нам зла, да...
С уважением,
Павел Алиев
Спасибо сказали:
Аватара пользователя
chitatel
Сообщения: 2063

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение chitatel »

Построение безопасной системы из небезопасных компонентов.
C умозрительной точки зрения все безопасные системы строятся из небезопсных компонентов. Небезопасные элементы одного компонента нивелируются безопасными элементами другого/других. И vice versa.

Отностися не только к окмпьютерам.
Спасибо сказали:
max100
Сообщения: 12

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение max100 »

Ибо intel не может желать нам зла, да...


Кто теперь им поверит то?
I am so glad I resisted pressure from Intel engineers to let /dev/random rely only on the RDRAND instruction.


https://plus.google.com/1170913804547429340...sts/SDcoemc9V3J
Спасибо сказали:
Аватара пользователя
drBatty
Сообщения: 8735
Статус: GPG ID: 4DFBD1D6 дом горит, козёл не видит...
ОС: Slackware-current
Контактная информация:

Re: Построение безопасной системы из небезопасных компонентов.

Сообщение drBatty »

Aliech писал(а):
09.09.2013 17:33
Это - бэкдор. Явный.

КСЖ
http://emulek.blogspot.ru/ Windows Must Die
Учебник по sed зеркало в github

Скоро придёт
Осень
Спасибо сказали:
Ответить