vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
Вот интересно, почему проект DigSig сдох почти десять лет назад, а от bsign-а вообще следов не найдешь, кроме как в древних-древних архивах дебиана и убунты?

В принципе ж классная идея. Намного лучше чем всякие aide и integrit.

Особенно если вместо gpg-шных подписей туда положить CMS-ные. Ну и соответствующую ключевую инфраструктуру выстроить (ровно ту, которая у меня в Детях Пространства описана - корень доверия - ключ владельца компьютера, который выписывает на ключ производителя дистрибутива сертификат с pathLen=1).

По нынешним временам, когда все ломают всех верификация бинарника при загрузке - это очень полезная вещь. Причем, при налаженном процессе разработки это не сложнее. чем подписывать пакеты (что делают все rpm-based дистрибутивы) или их метаинформацию
(что делают некоторые rpm-based и все deb-based)

Date: 2018-03-21 08:12 pm (UTC)
From: [identity profile] tzirechnoy [lj.rossia.org]
libdl переписывать? Можно.

Date: 2018-03-21 08:52 pm (UTC)
filin: (Default)
From: [personal profile] filin
... причем верификация тремя разными бинарниками, написанными на языках с _различными_ компиляторами в нативный код.

Date: 2018-03-22 10:57 am (UTC)
filin: (Default)
From: [personal profile] filin
Ты ведь должен быть в курсе понятия "эшелонированная оборона"...

(no subject)

From: [personal profile] yurikhan - Date: 2018-03-22 02:44 pm (UTC) - Expand

(no subject)

From: [personal profile] livelight - Date: 2018-03-22 03:27 pm (UTC) - Expand

Date: 2018-03-22 12:18 pm (UTC)
filin: (Default)
From: [personal profile] filin
И еще. Процесс разработки. Сейчас он (там, где что-либо подписывается) делается на машине, где нет проверки подписи загружаемых бинарников. И тут же лежит закрытый ключ. Что изрядно профанирует систему подписи.

И это не специальная система админа, которую можно засекьюрить очень изрядно. Если изрядо засекьюрить систему разработчика, разработка встанет.

(no subject)

From: [personal profile] filin - Date: 2018-03-22 01:50 pm (UTC) - Expand

(no subject)

From: [personal profile] z3vv5yqifqx6 - Date: 2018-03-26 04:32 pm (UTC) - Expand

(no subject)

From: [personal profile] filin - Date: 2018-03-27 07:05 am (UTC) - Expand

(no subject)

From: [personal profile] yurikhan - Date: 2018-03-27 10:37 am (UTC) - Expand

(no subject)

From: [personal profile] yurikhan - Date: 2018-03-27 03:36 pm (UTC) - Expand

(no subject)

From: [personal profile] z3vv5yqifqx6 - Date: 2018-03-27 02:30 pm (UTC) - Expand

(no subject)

From: [personal profile] z3vv5yqifqx6 - Date: 2018-03-27 02:34 pm (UTC) - Expand

Date: 2018-03-22 08:19 am (UTC)
lumag: (Default)
From: [personal profile] lumag
Можно оживить DigSig. Вернее переосмыслить и переписать его. В ядре есть проверка PKCS#7 для загрузки модулей, работа с сертификатами и т.п. Можно переиспользовать эти компоненты. Вопрос, кому это будет полезно, кто будет реально пользоваться этой возможностью. Удастся ли, например, убедить Debian, Canonical или RH начать подписывать бинари.

Date: 2018-03-22 08:30 am (UTC)
lumag: (Default)
From: [personal profile] lumag
А если добавить возможность загружать detached signatures, так вообще их можно раскладывать отдельными пакетами.

Про PKI. Я не думаю, что в данном случае нужна именно древовидная структура. Я бы делал одноуровневый keyring. Т.е. владелец может добавить свои ключи, может выкинуть дистрибутивный ключ и подменить своим, но это все без PKI. Подход apt-key проще и понятнее большинству.

(no subject)

From: [personal profile] lumag - Date: 2018-03-22 09:50 am (UTC) - Expand

(no subject)

From: [personal profile] lumag - Date: 2018-03-22 10:27 am (UTC) - Expand

(no subject)

From: [personal profile] avnik - Date: 2018-03-22 06:13 pm (UTC) - Expand

(no subject)

From: [personal profile] filin - Date: 2018-03-22 09:52 pm (UTC) - Expand

(no subject)

From: [personal profile] avnik - Date: 2018-03-22 10:40 pm (UTC) - Expand

(no subject)

From: [personal profile] yurikhan - Date: 2018-03-23 07:02 am (UTC) - Expand

Date: 2018-03-26 03:44 pm (UTC)
golosptic: (Default)
From: [personal profile] golosptic
1) А что это за дистрибутив?
2) Можно придумать signing proxy. А велика ли с Вашей т.з. трудоёмкость?

Date: 2018-04-26 09:30 pm (UTC)
golosptic: (Default)
From: [personal profile] golosptic
Насколько, с Вашей точки зрения, была бы трудоёмкой такая задача?

(no subject)

From: [personal profile] golosptic - Date: 2018-04-27 07:07 am (UTC) - Expand

(no subject)

From: [personal profile] lumag - Date: 2018-04-28 07:59 am (UTC) - Expand

(no subject)

From: [personal profile] golosptic - Date: 2018-04-29 05:28 pm (UTC) - Expand

(no subject)

From: [personal profile] golosptic - Date: 2018-04-29 05:30 pm (UTC) - Expand

Date: 2018-04-27 06:32 am (UTC)
lumag: (Default)
From: [personal profile] lumag
Я бы оценил в 2 MW до первого proof of concept, плюс 1 MM до минимально работающей версии, еще примерно 1.5–2 MM до объективно полноценной версии. Потом можно заниматься разными плюшками вида подборки вариантов кэширования, доведения до upstream и т.п.

Поскольку это будет делаться в свободное от работы время, то сроки это, примерно, трудозатраты, увеличенные в два — три раза.

(no subject)

From: [personal profile] golosptic - Date: 2018-04-29 05:25 pm (UTC) - Expand

(no subject)

From: [personal profile] lumag - Date: 2018-04-30 02:15 pm (UTC) - Expand

(no subject)

From: [personal profile] golosptic - Date: 2018-04-30 11:25 pm (UTC) - Expand

(no subject)

From: [personal profile] golosptic - Date: 2018-05-01 07:21 pm (UTC) - Expand

(no subject)

From: [personal profile] lumag - Date: 2018-05-01 07:13 pm (UTC) - Expand

Date: 2018-03-22 06:09 pm (UTC)
avnik: (Default)
From: [personal profile] avnik
Я бы скорее смотрел в сторону reproducibility builds, и соотвественно система сможет представлять из себя честный content addressable storage).

А с подписями как вы предлагаете будет одна проблема -- пакет собраный на сборочной ферме и пакет собраный локально из одних исходников будут _разные_, и именно в силу того, что у нас разные ключи на ферме и в локальном сборщике (а всякие signing proxy это только усугубят).

То есть надо как-то комбинировать зашитые в elf подписи, и detachable подписи.
(и возможно уметь смотреть на чексумму бинарника внутри fs (а приличная часть fs имеет внутреннее дерево хешей)

Date: 2018-03-22 06:49 pm (UTC)
lumag: (Default)
From: [personal profile] lumag
Да, с этой точки зрения тоже detachable signatures в плюсе получаются.

Date: 2018-03-23 10:24 am (UTC)
From: [personal profile] hungry_ewok
>Ну и соответствующую ключевую инфраструктуру выстроить

Тут недавно у владельцев шлемов окулус рифт их честно купленная техника превращалась в тыкву. Потому что ключевая инфраструктура и сертификаты, да...

Date: 2018-03-29 07:29 pm (UTC)
From: [personal profile] legolegs
Мне идея подписывания бинарников кажется беспрерспективной.

Во-первых, бинарники - это не то-же самое, что исполняемый код.

Во-вторых, исполныемый код - это есть то же самое, что и данные.

Надо ли подписывать *.py и *.sh? Как насчёт bash < котики.jpg и perl < рассказ.txt? Существуют невинные на первый взгляд файлы конфигурации с кодом, такие как ~/.xbindkeysrc. Конфиги все будем подписывать? Что будем делать с *.doc и другими форматами с макросами?

Есть, конечно, и другие способы *программировать* компьютер.

Недавно видел на ютубе, как путём манипуляций в игре Марио за счёт ошибок при подгрузке спрайтов в память была записана другая игра. С геймпада!

Подытожу сказанное: если делать вид, что мы подписываем код, то подписывать придётся вообще всё, включая юзерский ввод. Это абсурд.

Более здравым (хотя практически трудноосуществомым) мне представляется путь формальной верификации программ в рамках source-based дистрибутива и, вероятно, отказ от тюринг-полных ЯП (для упрощения доказательств).

Date: 2018-03-31 07:49 am (UTC)
From: [personal profile] legolegs
>Оно решает задачу "гарантировать, что то, что пришло из дистрибутива, не подменили".

Разве подписи_пакетов+система_прав+драйвер_фс не решают эту задачу?

Date: 2018-04-29 05:38 pm (UTC)
golosptic: (Default)
From: [personal profile] golosptic
Вот это вот путь формальной верификации программ в рамках source-based дистрибутива и, вероятно, отказ от тюринг-полных ЯП (для упрощения доказательств). конечно очень крутая история для такой темы, как "поболтать в курилке".

А есть несколько более приземлённые задачи, где вопрос о том, чтобы исправленные/заменённые бинарники не могли запуститься - вполне актуален.

Date: 2018-05-10 03:18 pm (UTC)
lumag: (Default)
From: [personal profile] lumag
[personal profile] vitus_wagner, набросал мыслей на тему. Буду рад комментариям.

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

August 2025

S M T W T F S
     1 2
3456789
10111213141516
17181920212223
24252627282930
31      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Aug. 3rd, 2025 07:59 pm
Powered by Dreamwidth Studios