vitus_wagner: My photo 2005 (Default)
[personal profile] vitus_wagner
Почему такая простая концепция, как X.509 PKI никак не укладывается в голове большинства людей.
Даже профессиональных программистов.

Казалось бы чего проще - есть понятие электронной подписи:

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

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

И есть второй черный ящик, куда пихается сообщение, подпись, и открытый ключ, и на выходе получается вывод - выработана подпись тем секретным ключом, открытую половинку которого мы пихнули в ящик, или не тем.

Очевидно, что то, что подпись выработана на данном ключе, ничего не говорит нам о том, какой именно человек или какой именно компьютер ее выработал. Соответсвенено появляется понятие доверия ключу. Поскольку собрать открытые ключи всех, чью подпись потребуется проверить заранее и надежным способом - нереально, появлется PKI, public key infrasturcture - способ получить открытый ключ кого надо (или открытый ключ, которым подписано данное сообщение) и убедиться что это именно ключ данного конкретного персонажда. Обычно для этого комбинация из ключа и данных о ее владельце подписывается кем-то, чьему ключу мы уже доверяем (например потому, что ему доверяет поставщик нашей операционной системы и включил его сертификат в дистрибутив). Такой электронный документ называется сертификатом.

Очевидно, что самоподписанный сертификат не удостоверяет ничего, кроме того, что с момента как владелец ключа его подписал, никто его не редактировал. То что владелец ключа - именно тот, чье имя написано в сертификате - ничего не значит. Вот возьму и сделаю себе самоподписанный сертификат на имя Рене де Карт. От этого я изобретателем прямоугольных координат не стану.

Очевидно, что когда мы хотим установить защищенное соединение по TLS, мы должны убедиться что мы устанавливаем соединение именно с тем, с кем хотели. Потому что в противном случае сколь угодно сильное шифрование бесполезно. "Человек посередине" легко перехватит наш пароль, потому что именно ему-то мы его и пошлем, из-за того, что не проверили что он не является нашим сервером.

И ведь создать внутрикорпоративный удостоверяющий центр чтобы выдать пять сертификатов на свои сервера, и выложить сертификат этого УЦ, чтобы пользователи его себе установили не просто, а очень просто.

Такое впечатление, что 90% тех, кто пользуется TLS и электронной почты защита не нужна. И даже security theater не нужен. Потому что свежий firefox такой театр с security exceptions устраивает, что можно было бы задуматься. Нет, продолжают выполнять чисто ритуальные действия по включению tls с самоподписанными сертификатами (или еще смешнее - создают честный УЦ, а его сертификат не распространяют).

Date: 2010-10-06 10:28 am (UTC)
From: [identity profile] stddjuffin.livejournal.com
Такой TSL позволяет обезопасить себя от пассивного прослушивания, когда у злоумышленника нет возможности изображать из себя сервер.

(no subject)

From: [identity profile] wrar.livejournal.com - Date: 2010-10-06 11:39 am (UTC) - Expand

(no subject)

From: [identity profile] partizan.livejournal.com - Date: 2010-10-06 12:25 pm (UTC) - Expand

Date: 2010-10-06 10:29 am (UTC)
From: [identity profile] http://users.livejournal.com/_iga/
> Очевидно, что когда мы хотим установить защищенное соединение по TLS, мы должны убедиться что мы устанавливаем соединение именно с тем, с кем хотели.

Это не всегда очевидно. Более того, в TLS может работать вообще без сертификатов (ephemeral key exchange).

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-06 10:45 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 10:59 am (UTC) - Expand

(no subject)

From: [personal profile] wizzard - Date: 2010-10-06 01:00 pm (UTC) - Expand

(no subject)

From: [personal profile] wizzard - Date: 2010-10-06 01:02 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 02:25 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-06 04:13 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 04:27 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-06 04:09 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 04:22 pm (UTC) - Expand

(no subject)

From: [identity profile] kouzdra.livejournal.com - Date: 2010-10-07 07:46 am (UTC) - Expand

(no subject)

From: [identity profile] kouzdra.livejournal.com - Date: 2010-10-07 08:00 am (UTC) - Expand

(no subject)

From: [identity profile] kouzdra.livejournal.com - Date: 2010-10-07 08:09 am (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-07 09:56 am (UTC) - Expand

(no subject)

From: [identity profile] hoverhell.livejournal.com - Date: 2010-11-07 10:46 am (UTC) - Expand

Date: 2010-10-06 10:30 am (UTC)
andrzejn: (Default)
From: [personal profile] andrzejn
Такое впечатление, что 90% тех, кто пользуется TLS и электронной почты защита не нужна.

Совершенно верное впечатление. Я думаю, что даже 99%. Или даже 99.9%. Именно не нужна, за исключением редких манипуляций с платёжными системами и логина в GMail, у которых с сертификатами как раз всё в порядке.

(no subject)

From: [personal profile] andrzejn - Date: 2010-10-06 10:48 am (UTC) - Expand

(no subject)

From: [personal profile] andrzejn - Date: 2010-10-06 11:52 am (UTC) - Expand

Date: 2010-10-06 10:57 am (UTC)
From: [identity profile] besm6.livejournal.com
Знаешь, Витус, у тебя этот текст написан так, что я, будучи вполне в курсе всего этого материала, не без труда понял, что ты хотел сказать.

Есть мнение, что и остальные источники информации про TLS по большей части примерно такие же.

P.S. Ну а смысл "выложить сертификат этого УЦ, чтобы пользователи его себе установили"? Чем это принципиально отличается от самоподписанного сертификата? Я точно так же выпишу себе сертификат на имя В Натуре Бил Гейц и выложу его на тот свой сервер, который будет server-in-the-middle, прикидывающимся microsoft.com. И?

Date: 2010-10-06 11:03 am (UTC)
elentin: (Default)
From: [personal profile] elentin
Есть мнение, что и остальные источники информации про TLS по большей части примерно такие же.

О! :-)

(no subject)

From: [identity profile] blog.vnaum.com - Date: 2010-10-06 11:56 am (UTC) - Expand

Агащазблин!

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 12:05 pm (UTC) - Expand

Re: Агащазблин!

From: [personal profile] alll - Date: 2010-10-06 12:20 pm (UTC) - Expand

Re: Агащазблин!

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 01:53 pm (UTC) - Expand

Re: Агащазблин!

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 02:13 pm (UTC) - Expand

Date: 2010-10-06 12:18 pm (UTC)
From: [personal profile] alll
Вообще-то, поскольку софт корпоративным пользователям устанавливает корпоративный же сисадмин, то корневой сертификат (ну или сертификат УЦ) никуда выкладывать и не надо - он уже есть в системе, попав туда от источника доверенней некуда и путём надёжнее некуда (ну то есть проблемы с безопасностью есть конечно и там, но они вне плоскости IT).

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

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 02:00 pm (UTC) - Expand

(no subject)

From: [personal profile] alll - Date: 2010-10-06 02:28 pm (UTC) - Expand

Казалось бы чего проще ... :)

Date: 2010-10-06 11:04 am (UTC)
From: [identity profile] zzfi.livejournal.com
секретный ключ и открытый. Открытый по секретному сгенерировать легко, наоборот - практически невозможно. - вообще-то симметрично - оба ключа генерируется одновремено! И более того, разделение на секретный ключ и открытый искуственно - только для определенности.

(no subject)

From: [personal profile] kastaneda - Date: 2010-10-06 11:14 am (UTC) - Expand

Date: 2010-10-06 11:22 am (UTC)
From: [identity profile] viliar.livejournal.com
Буквально недавно добрался до того, чтобы свой УЦ сделать и везде по служебным серверам распихать подписанные им сертификаты. А до этого довольно долго сидел на самоподписанных. Незнание и лень делают свое дело :-(

(no subject)

From: [identity profile] viliar.livejournal.com - Date: 2010-10-06 12:12 pm (UTC) - Expand

(no subject)

From: [identity profile] arkanoid.livejournal.com - Date: 2010-10-08 02:16 pm (UTC) - Expand

(no subject)

From: [identity profile] dev26.livejournal.com - Date: 2010-10-06 12:16 pm (UTC) - Expand

(no subject)

From: [identity profile] dev26.livejournal.com - Date: 2010-10-06 12:23 pm (UTC) - Expand

(no subject)

From: [personal profile] tobotras - Date: 2010-10-06 01:14 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-06 04:33 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-06 05:22 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-06 07:59 pm (UTC) - Expand

Date: 2010-10-06 12:23 pm (UTC)
From: [identity profile] aceler.ru (from livejournal.com)
Это ладно, FF хотя бы запоминает сам сертификат, и если ты один раз вошёл и всё нормально, при попытке организовать MiM хотя бы сам сертификат сменится, и FF заорёт тревогу, что сертификат сменился, он по прежнему самоподписанный, но другой. Хром же ничего не запоминает и каждый раз пишет, что сертификат самоподписанный. Можно менять сертификаты хоть каждый день — предупреждение будет одно и то же.

Date: 2010-10-06 01:14 pm (UTC)
From: [identity profile] viliar.livejournal.com
Через одно место можно и сейчас установить сертификат. Это, конечно, уродство, но в некоторых случаях подойдет. Ну ubuntu например так:
sudo apt-get install libnss3-tools
certutil -d sql:~/.pki/nssdb -A -t "C,," -n test -i cert.crt

(no subject)

From: [identity profile] aceler.ru - Date: 2010-10-06 01:24 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 02:27 pm (UTC) - Expand

Date: 2010-10-06 12:25 pm (UTC)
From: [personal profile] alll
Объяснений данному явлению много, одно из них простое: изрядное количество людей сколь-либо систематическому подходу предпочитает старое-доброе "вертеть в руках пока не заработает". Заработало с левым сертификатом? - Отлично, следующий.

Date: 2010-10-06 12:38 pm (UTC)
From: [personal profile] alll
Вообще-то вся история шифрования с ассиметричными ключами - она про очень простую вещь: стоимость передачи по гарантированно защищённому (и очень дорогому) каналу ключа, который ляжет в фундамент всей системы шифрования.

В старые добрые времена ключи для каждого отдельного сообщения (шифроблокноты) таскали особо доверенными курьерами, потом стало возможным ограничится пересылкой одного ключа на один контакт (шифрование с публичным/закрытым ключом), PKI позволяет передавать один ключ на целую пачку контактов.

В этом смысле "и выложить сертификат этого УЦ, чтобы пользователи его себе установили не просто, а очень просто" никак не получится. Сертификат должен быть доставлен по каналу, чья надёжность уже обеспечена. В простейшем случае - сисадмином, собственными ручками, с защищёного носителя.

(no subject)

From: [personal profile] alll - Date: 2010-10-06 01:12 pm (UTC) - Expand

Date: 2010-10-06 01:29 pm (UTC)
From: [identity profile] malx.livejournal.com
Вопрос ко всем - вы проверяли список предустановленных в вашем броузере сертификатов CA? Удаляли ли те, которым доверять не собираетесь? Или доверяете выбору производителя?

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

И еще - про абсолютную защиту говорить нет смысла. Надо представлять от чего именно мы защищаемся в каждый момент времени. Что дает самоподписанный сертификат?
- защита от простой бессистемной прослушки протоколов http/ftp (отлов логина пароля)
- защита от пассивной прослушки без модификации передаваемых данных (wifi)
- user_pref("browser.cache.disk_cache_ssl", false); //don't cache SSL pages

Понятно что есть атаки от которых он не защищает. Но иногда достаточно и того что есть :) Разве нет?

(no subject)

From: [identity profile] malx.livejournal.com - Date: 2010-10-06 02:58 pm (UTC) - Expand

(no subject)

From: [identity profile] malx.livejournal.com - Date: 2010-10-06 06:21 pm (UTC) - Expand

(no subject)

From: [identity profile] tzirechnoy.livejournal.com - Date: 2010-10-06 03:52 pm (UTC) - Expand

(no subject)

From: [identity profile] arkanoid.livejournal.com - Date: 2010-10-08 02:26 pm (UTC) - Expand

(no subject)

From: [identity profile] arkanoid.livejournal.com - Date: 2010-10-08 06:21 pm (UTC) - Expand

(no subject)

From: [identity profile] arkanoid.livejournal.com - Date: 2010-10-08 07:16 pm (UTC) - Expand

(no subject)

From: [identity profile] http://users.livejournal.com/_iga/ - Date: 2010-10-06 04:24 pm (UTC) - Expand

(no subject)

From: [identity profile] besm6.livejournal.com - Date: 2010-10-06 04:33 pm (UTC) - Expand
From: [identity profile] freedom_of_sea.livejournal.com
удостоверяет, что вы общаетесь теперь с тем же, с кем общались всегда. Как правило, большего не требуется.

Date: 2010-10-06 05:35 pm (UTC)
From: [identity profile] mmv-ru.livejournal.com
Просто не надо смешивать аутентификацию и PKI. Аутентификацию можно проводить и без инфраструктуры. SSH считается надёжным протоколом, хотя не использует PKI.
MiTM атака, если PKI не используется, возможна только при первом сеансе связи с сервером, потом ключ запоминается и изменение ключа будет обнаружено.

А самоподписанный сертефикат используется только по тому что без сертификата (только с приватным и публичным ключём) TLS сервер нелзя запустить (или можно?).

Так что для защиты например почты, TLS без PKI помоему оправдан.

Другое дело что не всякий софт правильно отрабатывает ситуации с недоверенным или не верным сертификатом.

Удобный, хорошо документированный и легко устанавливающийся софт обеспечивающий PKI почему то не встречается. Пока мне удобным и понятным показался только EasyRSA, но и там куча ограничений.

Теоретически на основе SSL/TLS, используя наборы сертификатов, можно было бы строить не только дерево доверия но и сеть. Но это вообще нигде не поддерживается.

(no subject)

From: [identity profile] mmv-ru.livejournal.com - Date: 2010-10-06 07:46 pm (UTC) - Expand

(no subject)

From: [identity profile] pargentum.livejournal.com - Date: 2010-10-07 06:05 am (UTC) - Expand

(no subject)

From: [identity profile] pargentum.livejournal.com - Date: 2010-10-07 08:30 am (UTC) - Expand

(no subject)

From: [identity profile] arkanoid.livejournal.com - Date: 2010-10-08 06:27 pm (UTC) - Expand

Date: 2010-10-06 06:17 pm (UTC)
From: [identity profile] igoretz.livejournal.com
В духе ваших утверждений о том, что пользователь устройства должен сдавать на права пользования, как автомобилист - вопрос: А Ирина сумеет построить PKI? А Катя? А Бертиль Бертильевич? Я безо всякой подковырки спрашиваю, если нет, не страшно, все мы знаем, что мир неидеален; но если да, мне (и не только) очень хотелось бы знать, как подобные вещи объяснять неспециалисту (очевидно, что вышеприведенное объяснение подходит только для собеседников не просто технически грамотных, но имеющих представление о несимметричном шифровании, иначе не понять, почему вообще кому-то можно доверять; доверять ли верисайну etc. - другой вопрос).

Даже не PKI строить, а просто объяснить, что делать, если выскакивает окошко 'сертификат просрочен' (а такое встречается довольно часто, если не путаю, даже на каких-то из мозилловских сайтов недавно было)? Услуга-то нужна сейчас. Или самоподписанные сертификаты у вполне солидно выглядящих фирм? Пользователи жмут "Ok", задумываясь не больше, чем при нажатии кнопочки "Я согласен" под лицензионным соглашением. Понятно, в случае чего, больше одного раза, как и на нигерийский спам, вряд ли кто попадется; но как сделать, чтобы не повелись и в первый раз?

Если окружающие вас люди - далекие от IT - в таких случаях полностью понимают, что происходит, то или это всесторонне одаренные люди - тогда понятна ваша требовательность к другим, но, увы, это редкость, у большинства людей голова занята иным, формула "талантливый в одном талантлив во всем" чаще не работает, чем работает; или вы обладаете редким умением подобные вещи доходчиво объяснять - тогда хочтся попросить вас этим умением поделиться.

(no subject)

From: [identity profile] igoretz.livejournal.com - Date: 2010-10-06 07:54 pm (UTC) - Expand

ещё раз повторяю:

Date: 2010-10-07 05:25 am (UTC)
From: [identity profile] silly_sad.livejournal.com
> Почему такая простая концепция, как X.509 PKI никак не укладывается в голове большинства людей.

потому что x.509 переворачивает с ног на голову всё нормальное человекческое понимание доверия, и заменяет его вертикалью власти.

> Такое впечатление, что 90% тех, кто пользуется TLS и электронной почты защита не нужна. И даже security theater не нужен. Потому что свежий firefox такой театр с security exceptions устраивает, что можно было бы задуматься. Нет, продолжают выполнять чисто ритуальные действия по включению tls с самоподписанными сертификатами

они делают это ровно потому что (1) вся секурити силами браузеров и поставщиков ОС превращена в театр и вообще ВСЯ РАБОТА ПОЛЬЗОВАТЕЛЯ ДАВНО ПРЕВРАЩЕНА В РИТУАЛ (если не в придаток к компутеру) (спасибо вендам) (2) юзера приучили что добрый билгейц решит за него сам кому надо доверять (синтез) "FAQ: Q:как убрать назойливое предупреждение? A:нажмите ОК."

програмисты на стороне сервера устали бороться с говном и тупостью, им проще велеть всем жать ОК.
А на стороне клиента браузер слишком часто кричал "волки! волки!"

(no subject)

From: [identity profile] silly_sad.livejournal.com - Date: 2010-10-07 11:27 am (UTC) - Expand

(no subject)

From: [identity profile] silly_sad.livejournal.com - Date: 2010-10-07 11:35 am (UTC) - Expand

(no subject)

From: [identity profile] silly_sad.livejournal.com - Date: 2010-10-07 11:38 am (UTC) - Expand

(no subject)

From: [identity profile] arkanoid.livejournal.com - Date: 2010-10-08 02:08 pm (UTC) - Expand

Date: 2010-10-07 11:10 am (UTC)
From: [identity profile] http://users.livejournal.com/__sergio__/
А ещё проще, чем создавать свой CA, воспользоваться cacert'ом или startcom'ом.

(no subject)

From: [identity profile] http://users.livejournal.com/__sergio__/ - Date: 2010-10-07 12:00 pm (UTC) - Expand

ТОП: 22:40 MSK

Date: 2010-10-07 06:40 pm (UTC)
From: [identity profile] magictop30.livejournal.com
Вы попали в ТОП30 (http://t30p.ru) самых обсуждаемых тем в блогосфере.
Почитать текст со всеми комментариями по ссылке (http://topbloger.ru/?http%3a%2f%2fvitus-wagner.livejournal.com%2f548941.html).
Это Ваш 15-й ТОПовый пост за последний год.
Посмотреть статистику автора можно в карточке топблогера (http://t30p.ru/blog.aspx?vitus_wagner.livejournal.com).Image

Date: 2010-10-08 02:04 pm (UTC)
From: [identity profile] arkanoid.livejournal.com
Ничего нет плохого в самоподписанных сертификатах. А вот за то, как с ними работают браузеры, надо отрывать все выступающее. Как и вообще за то, как себе авторы браузеров представляют PKI.

Date: 2010-10-11 03:40 pm (UTC)
From: [identity profile] alexkuklin.livejournal.com
Ну кроме того, что они пригодны для внутреннего применения - когда ты их контрольную сумму можешь проверить.

Date: 2010-10-11 06:03 pm (UTC)
From: [identity profile] captain-hell.livejournal.com
dnssec в теории должен помочь.

а самоподписанные не нужны, startssl генерит бесплатно...

Date: 2010-10-27 08:44 pm (UTC)
From: [identity profile] edo-rus.livejournal.com
создать внутрикорпоративный удостоверяющий центр чтобы выдать пять сертификатов на свои сервера,

а можно подробнее?
какой штатный способ в linux создать свой CA? просто каталог с сертификатами и секретными ключами + openssl?
как клиент взоимодействует с CA? например как он узнает об отзыве сертификата?

Profile

vitus_wagner: My photo 2005 (Default)
vitus_wagner

June 2025

S M T W T F S
1 23 4567
891011121314
15161718192021
22232425262728
2930     

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 4th, 2025 09:54 am
Powered by Dreamwidth Studios