Вопрос: Является ли самоподписанный SSL-сертификат менее безопасным?


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

Вопрос заключается в следующем: если я использую этот самоподписанный сертификат, и мои одноклассники посещают веб-сайт в любом случае, они менее безопасны от хакеров, а вредоносных атак a.s.o?

Веб-сайт не требует максимальной безопасности: единственная цель веб-сайта - общаться в чате и заказывать билеты; оплата не происходит на веб-сайте!

РЕДАКТИРОВАТЬ:

При вводе незашифрованного веб-сайта предупреждение не отображается. Это значит нет шифрования лучше, чем самодельное шифрование? Я так не думаю!


2
2018-02-28 16:19


Источник


Вы также можете получить сертификат от Давайте зашифровать, Ему бы доверяли все современные браузеры. - Daniel B
Любой сертификат является безопасным только в том случае, если вы доверяете подписчику сертификата. - Ramhound
Реальный вопрос в том, почему внедрение SSL / TLS в первую очередь? Какие функции вы надеетесь получить, предоставив шифрование? Самоподписанные сертификаты могут работать так же хорошо, как и любой другой сертификат, но обычно он несет бремя проверки доверия пользователя. Если пользователь не собирается действительно проверять это доверие (или не знает, как это сделать), использование самоподписанного сертификата только немного лучше, чем незашифрованное (и не стоит проблем с IMHO). - heavyd
Чтобы ответить на ваше редактирование, да, это лучше ИМХО, самоподготовленное шифрование не равно шифрованию в безопасности, но оно дает людям ложное чувство безопасности, поэтому они в конечном итоге делают то, чего они не сделали бы в незашифрованном соединении, вот что делает само сделанное хуже. - Scott Chamberlain
Ответы, данные до сих пор, являются технически правильными, но они пропускают один пункт: Вы хотите обучить / узнать своих посетителей, что самозаверяющие сертификаты являются приемлемыми? Я предлагаю вам этого не делать. Поскольку вы также упоминаете в ответе на комментарий, что посетители тура не разбираются в технологии, лучшим решением является путь LetsEncrypt. Это работает так, как предполагалось, поэтому нет оснований для взлома и «делайте свои собственные вещи». - Jan Doggen


Ответы:


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

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

Другая проблема с сертификатами, не выпущенными публичным ЦС, - это когда перехват SSL выполняется. Это часто место в компаниях, но также и несколько антивирусных продуктов. В этом случае сайты, использующие сертификат, который не может быть проверен, часто просто блокируются перехватом SSL, и нужно будет явно добавлять исключения.


3
2018-02-28 16:59



Большое спасибо! К сожалению, ваше предложение не будет работать, так как наименьшее из моих одноклассников будет знать, как это сделать. Но я не думаю, что человек в средней атаке будет иметь место в ближайшие несколько месяцев, когда понадобится веб-сайт. - Aloso
@Aloso: Если вы не боитесь нападения, то почему вы используете SSL вообще? Кроме того: таким образом вы научите других слепо щелкнуть эти предупреждения о ненадежности, и в следующий раз, когда они это сделают, это была настоящая атака. Лучше просто получить один из бесплатных сертификатов вместо того, чтобы перевернуть свою собственную небезопасную вещь. - Steffen Ullrich
@Aloso: также см. Редактирование, которое я только что сделал о проблемах, которые могут возникнуть с несколькими антивирусными продуктами. - Steffen Ullrich
@Aloso, если вы не боитесь нападения «человек в середине» и не беспокоитесь об этом предупреждении, вы в порядке, чтобы использовать самоподписанный SSL-сертификат, который сказал бы, что это будет мало смысла! - davidgo
@davidgo Может быть и точка. Например: давайте просто предположим, что я доверяю соединению достаточно хорошо, чтобы полагать, что информация, которую я получаю, на самом деле поступает с нужного сервера. SSL по-прежнему помогает шифровать трафик, чтобы другие, такие как мой интернет-провайдер, которые могли записывать трафик, не смогут увидеть содержимое трафика, если они просмотрят зарегистрированную (сохраненную) копию трафика. Таким образом, идентификация удаленной системы для предотвращения атак MITM является одним из преимуществ SSL, но это не обязательно единственное преимущество, и использование самозаверяющего сертификата может предоставить некоторую выгоду, даже если другие (-ы) не являются предоставлена. - TOOGAM


Возможная атака

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

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

Бесплатная подписка на сертификаты

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

Вот несколько примеров:


2
2018-02-28 19:01





Самозаверяющий сертификат будет по-прежнему шифровать связь между клиентом (браузером) и вашим сервером.

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

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


1
2018-02-28 16:37



«за исключением того, что вы рассказываете им какой-то внеполосный метод» - правильно. Итак, до тех пор, пока вы можете эффективно использовать внеполосный метод, тогда вы в порядке. например, распространять сертификат через уже защищенную сеть или на доверенное оборудование (например, на карту памяти USB, которой вы доверяете), которыми обладают только доверенные курьеры (например, вы сами). - TOOGAM
@TOGOGRAM - сертификат будет передан сервером вашему клиенту (браузеру), после чего браузер будет жаловаться, что ему не доверяют. Если пользователь хочет просмотреть сертификат, он увидит его отпечаток (хэш). Этот хэш уникален для этого сертификата. Если они затем (например) позвонили вам и попросили подтвердить хеш-значение, то это подтвердит, что сертификат был получен от вас, а не злоумышленник. Проблема в том, что 99.99999% уверены, что пользователи не настолько разбираются в технологиях и не будут этого делать. - garethTheRed
Похоже, что реальная проблема в описываемом вами сценарии заключается в том, что эксперты не заботятся о развертывании сертификатов. В качестве примера я использую Microsoft Windows, я понимаю, что профессиональные сети, использующие Active Directory, могут иметь контроллер домена, чтобы настроить параметры конфигурации на рабочие станции, настроенные на доверие контроллеру домена. Таким образом, частный сертификат может быть развернут без пользователя, которому нужно вручную сделать что-либо, чтобы доверять этому сертификату, поэтому вам не нужно беспокоиться о том, насколько технологичны пользователи. Компания может использовать «самозаверяющий» доверенный сертификат; немного проблема. - TOOGAM
@TOOGAM. В среде MS Windows вы можете управлять собственным корпоративным центром сертификации. Сертификат Root CA может быть распространен с использованием AD, чтобы все устройства Windows доверяли этому сертификату. Оттуда сертификаты могут выдаваться ЦС на (например) веб-серверах, которым доверяют все устройства Windows, в силу того, что эти устройства доверяют корневому ЦС. Не было бы необходимости в самоподписанных сертификатах, так как вы бы использовали «правильный» CA. - garethTheRed
Определение, которое я понял о «самоподписанном» сертификате, заключается в том, что он в конечном итоге подписан «я», а не один из широко распространенных в мире центров сертификации (основанных на том, что предварительно связано в большинстве браузеров). Вместо того, чтобы доверять всемирным сетям ЦА, доверие основано на том, что я сам являюсь подписывающим лицом. Это имеет отношение к подписанию во время процесса создания сертификата и не имеет никакого отношения к тому, предоставляет ли CA сертификат. По этому определению частный CA может распространять самозаверяющий сертификат; они не являются взаимоисключающими. Вы, похоже, работаете под другим определением - TOOGAM


Конечно. Просто сделай это.

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

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

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


1
2018-02-28 16:51



«Предоставление людям доверия сертификату является ключевым вызовом». - Нет, я могу сказать им на facebook, что это заслуживает доверия :) Я не хочу платить за это деньги. - Aloso
@Aloso: Мне жаль, что я не знал, что «доверять сертификату» означает техническую фразу, ссылаясь на акт получения сертификата в «хранилище сертификатов» веб-браузера. Таким образом, задача состоит в том, чтобы заставить пользователей на самом деле это делать, если вы не можете развернуть сертификат с помощью автоматических средств. (Например, компьютеры могут подключать сертификаты к ним, если они настроены на доверие контроллеру домена Active Directory.) Я понимаю, что вы можете не платить, поэтому большая часть второго абзаца обсуждала альтернативу. (Конечно, другой вариант может быть бесплатным, на StartSSL.com) - TOOGAM


Абсолютно он менее безопасен. Сертификаты не предназначены для «доверяете ли вы этому веб-сайту или нет», они предназначены для «как любой компьютер в цепочке между мной и пользователем, который просматривает веб-сайт, модифицировал или просмотрел то, что было опубликовано».

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

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

Честно говоря, если сайт предназначен только для общения и заказа билетов (но не для их оплаты), SSL не требуется.


-1
2018-02-28 16:31



Этот сценарий применим только в том случае, если этот пользователь впервые подключается к службе. После этого сертификат известен и ваша атака может быть обнаружена. Кроме того, сегодня вопрос скорее должен быть: почему не использовать SSL / TLS? С Let's Encrypt и SNI и всеми, практически нет причин не использовать его. - Daniel B
Много неправильных деталей; сертификаты также удостоверяют личность веб-сайта (который может обнаружить сайт самозванца, влияющий на доверие). Без правильных секретных ключей вы также не сможете использовать « точно такой же информация », в том числе возможность надлежащего шифрования / дешифрования сообщений. (У вас может быть эквивалентный ключ, но не тот же.) Четвертый абзац обобщает предположения о цели, люди могут захотеть общаться в частном порядке и иметь разные приоритеты, чем крупные сайты торговли 3-й абзац является единственным полностью правильным, хотя право Даниэля Б: главная проблема - это только распределение до доверительного управления. - TOOGAM