Jump to content

HTTP Public Key Pinning

(Перенаправлено из закрепления сертификата )

HTTP Public Key Pinning ( HPKP ) - это устаревший механизм безопасности в Интернете, поставляемый через HTTP заголовок , который позволяет веб -сайтам HTTPS сопротивляться импористам злоумышленниками, использующими неправильные или иные мошеннические цифровые сертификаты . [ 1 ] Сервер использует его для доставки клиенту ( например, веб -браузере ) набор хешей общедоступных ключей , которые должны появляться в цепочке сертификатов будущих подключений с тем же доменным именем .

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

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

Из -за сложности механизма HPKP и возможности случайного неправильного использования (потенциально вызывая условия блокировки системными администраторами), в 2017 году браузеры установили HPKP, а в 2018 году удалили свою поддержку в пользу прозрачности сертификата . [ 2 ] [ 3 ]

Механизм

[ редактировать ]

Сервер передает политику HPKP с агентом пользователя через HTTP поле заголовка ответа Public-Key-Pins (или Public-Key-Pins-Report-Only для целей только для отчетности).

Политика HPKP определяет хэши информирования об открытом ключе предмета одного из сертификатов в подлинной цепочке сертификатов веб -сайта x.509 (и, по крайней мере, одного резервного ключа) в pin-sha256 Директивы и период времени, в течение которого пользовательский агент должен обеспечить закрепление открытого ключа в max-age Директива, необязательная includeSubDomains Директива включить все субдомены (из домена, который отправил заголовок) в политику закрепления и необязательные report-uri Директива с URL, куда отправить отчеты о нарушении прикрепления. По крайней мере, один из общественных ключей сертификатов в цепочке сертификатов должен соответствовать закрепленному открытому ключу, чтобы цепочка была признана действительной пользовательским агентом.

Во время публикации, RFC   7469 только позволил алгоритм хэш-хаш SHA-256 . ( Приложение A. RFC 7469 упоминает некоторые инструменты и необходимые аргументы, которые можно использовать для производства хэшей для политик HPKP.)

Оператор веб -сайта может выбрать либо привязать общедоступный ключ CORT Certificate Comtine Compity Authority, позволяя только этот авторитет сертификата (и все промежуточные органы, подписанные его ключом) для выпуска действительных сертификатов для домена Веб -сайта и/или для закрепления Ключи (ы) одного или нескольких промежуточных сертификатов выпуска или для закрепления открытого ключа конечного фактора.

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

HPKP стандартизирован в RFC 7469. [ 1 ] Он расширяет статическое закрепление сертификата , которое жестко хард-ключ из общедоступных ключей из хорошо известных веб-сайтов или услуг в веб-браузерах и приложениях. [ 5 ]

Большинство браузеров отключают пиннинг для цепочек сертификатов с частными корневыми сертификатами , чтобы обеспечить различные инспекции корпоративного контента сканеры [ 6 ] и инструменты веб -отладки (такие как MITMProxy или Fiddler ). Стандарт RFC 7469 рекомендует отключить отчеты о нарушении закрепления для «определенных пользовательских» корневых сертификатов, где это «приемлемо» для браузера отключить проверку PIN. [ 7 ]

Репортаж

[ редактировать ]

Если пользовательский агент выполняет проверку PIN-кода и не сможет найти действительный отпечаток SPKI Finger в цепочке обслуживания, он опубликует отчет о нарушении форматированного JSON для хоста, указанного в директиве отчета-URI, содержащей подробную информацию о нарушении. Этот URI может быть подан через HTTP или HTTPS ; Тем не менее, пользовательский агент не может отправить отчеты о нарушении нарушения HPKP в HTTPS URI в том же домене, что и домен, для которого он сообщает об этом нарушении. Хосты могут либо использовать HTTP для report-uriИспользуйте альтернативный домен или используйте службу отчетности. [ 8 ]

Некоторые браузеры также поддерживают Public-Key-Pins-Report-Only, который только запускает эту отчетность, не показывая ошибку пользователю.

Критика и снижение

[ редактировать ]

Во время своего пикового принятия, как сообщалось, HPKP использовался 3500 из 1 миллиона интернет -сайтов, показатель, который снизился до 650 в конце 2019 года. [ 9 ]

Критика и беспокойство вращались вокруг злонамеренных или человеческих сценариев ошибок, известных как самоубийство HPKP и Ransompkp. [ 10 ] В таких сценариях владелец веб -сайта будет иметь свою способность публиковать новое содержимое в своем домене, сильно затрудненное либо из -за потери доступа к своим собственным ключам, либо объявление о новых ключах злоумышленника.

Поддержка браузера и искажение

[ редактировать ]
Поддержка браузера для закрепления открытого ключа HTTP
Браузер Версия добавлена Версия устарела Версия удалена Примечания
Google Chrome 46 [ 11 ] 67 [ 12 ] 72 [ 13 ] [ 14 ]
Опера 33 [ 15 ] 54 [ 16 ] 60
Firefox 35 72 [ 17 ] [ 18 ] Можно включить, установив флаг security.cert_pinning.hpkp.enabled к true. [ 19 ]
Internet Explorer [ 20 ]
Microsoft Edge [ 20 ]
Сафари

Смотрите также

[ редактировать ]
  1. ^ Подпрыгнуть до: а беременный Эванс, Крис; Палмер, Крис; Sleevi, Райан (апрель 2015 г.). Открытый ключ расширение для http . IETF . doi : 10.17487/rfc7469 . ISSN   2070-1721 . RFC 7469 .
  2. ^ Лейден, Джон (2017-10-30). «RIP HPKP: Google отказывается от общедоступного ключа» . Реестр . Получено 2018-12-18 .
  3. ^ Тунг, Лиам (2017-10-30). «Google: Chrome отступает от общедоступного ключа, и вот почему» . Zdnet . Получено 2018-12-18 .
  4. ^ «О публичном закреплении ключа» . noncembatant.org . Получено 2015-05-07 .
  5. ^ «Сертификат и общедоступный ключ - OWASP» . www.owasp.org . Получено 2015-05-07 .
  6. ^ «FAQ безопасности - проекты хрома» . www.chromium.org . Получено 2015-07-07 .
  7. ^ Эванс, C.; Palmer, C.; Sleevi, R. (2015). «RFC 7469 - расширение общедоступного ключа для HTTP» . Tools.ietf.org . doi : 10.17487/rfc7469 . Получено 2015-07-07 .
  8. ^ «Отчеты о нарушении нарушения HPKP» . Скотт Хельм.
  9. ^ «HPKP больше нет» . Скотт Хельм. 2020-01-20 . Получено 2020-01-30 .
  10. ^ «Использование функций безопасности, чтобы делать плохие вещи» . Скотт Хельм. 2016-08-15 . Получено 2020-01-30 .
  11. ^ Старк, Эмили (2015-08-31). «Развертывание открытого ключа с отчетностью HPKP» . Разработчики хрома . Архивировано из оригинала 2023-01-16 . Получено 2023-03-10 .
  12. ^ Medley, Joe (2018-06-07). «Объяснения и удаления в хроме 67» . Разработчики Google . Архивировано из оригинала 2023-03-10 . Получено 2023-03-10 .
  13. ^ Палмер; Estark; Rsleevi (2022-09-13). «Удалить HTTP Public Key Pinning - состояние платформы Chrome» . www.chromestatus.com . Архивировано из оригинала 2022-05-25 . Получено 2019-11-18 .
  14. ^ Medley, Joe (2020-06-27). «Объяснения и удаление у Chrome 72 - разработчиков Chrome» . Разработчики хрома . Архивировано из оригинала 2022-11-18 . Получено 2023-03-10 .
  15. ^ Bynens, Mathias (2015-10-27). "Opera 33 выпущена" . GitHub . Опера Архивировано из оригинала 2023-03-10 . Получено 2023-03-10 .
  16. ^ «Что нового в Chromium 67 и Opera 54» . GitHub . Опера 2018-06-28. Архивировано из оригинала 2023-03-10 . Получено 2023-03-10 .
  17. ^ «HTTP Public Key Pinning больше не поддерживается» . Совместимость с сайтами Firefox . 14 ноября 2019 года. Архивировано с оригинала 2020-05-29 . Получено 2020-02-19 .
  18. ^ Килер, Дана (2019-11-13). «Изменение исходного кода Mozilla, удаляющее HPKP, включая обсуждение и причины этого изменения (ошибка 1412438)» . Mozilla Firefox контроль версий . Архивировано из оригинала 2023-03-10 . Получено 2023-03-10 .
  19. ^ "mozilla-central: changeset 501812:d791bfa31f08ec478b2ef6ca4f89b3a8849d723b" . hg.mozilla.org . Получено 2019-11-18 .
  20. ^ Подпрыгнуть до: а беременный «Статус расширения общедоступного ключа для HTTP в Microsoft Edge находится рассмотрено» . Microsoft Edge Development . Архивировано с оригинала 2016-12-20 . Получено 2018-09-21 .


Arc.Ask3.Ru: конец переведенного документа.
Arc.Ask3.Ru
Номер скриншота №: bfef5db94c3d47d1befe2335ec354d87__1721440140
URL1:https://arc.ask3.ru/arc/aa/bf/87/bfef5db94c3d47d1befe2335ec354d87.html
Заголовок, (Title) документа по адресу, URL1:
HTTP Public Key Pinning - Wikipedia
Данный printscreen веб страницы (снимок веб страницы, скриншот веб страницы), визуально-программная копия документа расположенного по адресу URL1 и сохраненная в файл, имеет: квалифицированную, усовершенствованную (подтверждены: метки времени, валидность сертификата), открепленную ЭЦП (приложена к данному файлу), что может быть использовано для подтверждения содержания и факта существования документа в этот момент времени. Права на данный скриншот принадлежат администрации Ask3.ru, использование в качестве доказательства только с письменного разрешения правообладателя скриншота. Администрация Ask3.ru не несет ответственности за информацию размещенную на данном скриншоте. Права на прочие зарегистрированные элементы любого права, изображенные на снимках принадлежат их владельцам. Качество перевода предоставляется как есть. Любые претензии, иски не могут быть предъявлены. Если вы не согласны с любым пунктом перечисленным выше, вы не можете использовать данный сайт и информация размещенную на нем (сайте/странице), немедленно покиньте данный сайт. В случае нарушения любого пункта перечисленного выше, штраф 55! (Пятьдесят пять факториал, Денежную единицу (имеющую самостоятельную стоимость) можете выбрать самостоятельно, выплаичвается товарами в течение 7 дней с момента нарушения.)