The OpenNET Project / Index page

[ новости /+++ | форум | wiki | теги | ]

Let's Encrypt опубликовал описание атаки и план по устранению проблемы

10.01.2018 21:08

Сервис Let's Encrypt опубликовал описание уязвимости, из-за которой сегодня утром был отключен метод проверки владения доменом TLS-SNI-01. Проблема была не на стороне Let's Encrypt и была вызвана предоставлением излишних полномочий на некоторых хостингах.

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

Если атакующий имеет доступ к хостинг-окружению, что и сайт жертвы (например, "example.com"), то он может запустить клиент ACME, инициировать проверку TLS-SNI-01, получить случайный токен, сгенерировать проверочный сертификат и загрузить его для домена "токен.acme.invalid" в конфигурацию общего web-сервера. Далее в рамках процедуры проверки сервер ACME определит IP-адрес домена example.com и отправит на него HTTPS-запрос проверочного домена "токен.acme.invalid" с использованием расширения SNI. Http-сервер провайдера на данный запрос вернёт загруженный атакующим сертификат, что для ACME-сервера станет подтверждением владения доменом, хотя фактически атакующий не контролирует домен example.com.

Разработчики Let's Encrypt намерены вернуть поддержку TLS-SNI-01 как только будут абсолютно уверены в безопасности предпринятых мер защиты. Пока в качестве пути для решения проблемы называется работа с хостинг-провайдерами, у которых используются недостаточно надёжные механизмы контроля за доменами пользователей. Представители Let's Encrypt уже связались с провайдерами, у которых проявляется проблема, и согласовывают пути по устранению уязвимости. В течение 48 часов будет представлен список проблемных провайдеров и связанных с ними IP-адресов. После завершения формирования списка, поддержка TLS-SNI-01 будет возвращена для всех адресов, за исключением чёрного списка.

Напомним, что метод TLS-SNI-01 позволяет выполнить проверку через обращение к хосту по HTTPS (443 порт). Альтернативными методами проверки являются http-01 (проверка по HTTP через 80 порт) и dns-01 (проверка при помощи DNS). При использовании TLS-SNI-01 ACME-сервер генерирует случайный токен и возвращает его клиенту. Клиент ACME использует токен для создания самоподписанного сертификата, который генерируется для несуществующего домена (например, 773c7d.13445a.acme.invalid). Далее клиент настраивает http-сервер для использования этого сертификата для данного фиктивного проверочного домена. ACME-сервер определяет IP-адрес реального проверяемого домена, инициирует TLS-соединение и обращается к фиктивному домену (773c7d.13445a.acme.invalid), используя TLS-расширение SNI. Если web-сервер вернул сертификат, содержащий данное имя хоста, то считается, что клиент подтвердил контроль над доменом и ему может быть выдан сертификат для реального проверяемого домена.

  1. Главная ссылка к новости (https://community.letsencrypt....)
  2. OpenNews: Инцидент с уязвимостью в сервисе Let's Encrypt
  3. OpenNews: Проект Let's Encrypt опубликовал планы на 2018 год
  4. OpenNews: Let's Encrypt занял 36% рынка удостоверяющих центров
  5. OpenNews: Проект Let's Encrypt представил модуль для http-сервера Apache
  6. OpenNews: Сервис Let's Encrypt преодолел рубеж в 100 млн сертификатов
Лицензия: CC-BY
Тип: Проблемы безопасности
Ключевые слова: letsencrypt, acme
При перепечатке указание ссылки на opennet.ru обязательно
Обсуждение (39) Ajax | 1 уровень | Линейный | Раскрыть всё | RSS
  • 1.1, Аноним (-), 21:12, 10/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    То есть проблема даже не в CA. Расходимся.
     
     
  • 2.4, тоже Аноним (ok), 21:50, 10/01/2018 [^] [^^] [^^^] [ответить]  
  • +7 +/
    Если CA выдает сертификаты не тем доменам, для которых они запрошены - это таки проблема в CA.
     
     
  • 3.22, КО (?), 09:40, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    В том то и проблема, что тем, которые запрошены. :)

    P.S. Интересно, причем тут провайдеры. Тут либо запрет всем, кто сидит на одном ip, получать LE сертификаты. Либо получать их сможет кто-то один (провайдер), а потом уж отдавать трафик клиенту. Чтоб тот даже не заморачивался с сертификатами.

     
     
  • 4.23, КО (?), 09:52, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Проблема в том, что те кто придумывал протокол, не подумали, что на одному ip могут быть сопоставлены несколько имен.
    У провайдера есть клиент1 с example1.com и клиент2 с example2.com.
    Сейчас, чтобы получать LE сертификат оба клиента должны иметь возможность поднять сервер *.acme.invalid.
    Причем по адресу и не скажешь зачем он нужен. Поэтому провайдер и проверить то ничего не может.
    Еслиб надо было бы поднимать сервак *.example.com.acme.invalid - провайдер мог бы ограничивать клиентов в своих хотелках (мол хочешь example2.com, можешь поднимать *.example2.com.acme.invalid, но не *.example1.com.acme.invalid).
     
     
  • 5.31, Аноним (-), 13:14, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Провайдер вообще должен запретить загрузку сертификатов для невалидных доменов. А если он хочет дать возможность юзерам нормально использовать LE, лучший способ — самому получать и продлевать сертификаты для клиентов.
     
     
  • 6.32, КО (?), 14:24, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Об чем и речь.
    Только вот должен ли? Одно дело, когда провайдер может предложить посреднические услуги (хоть xthtp LE, хоть через еще кого). Другое дело, когда по сговору с LE эти услуги навязываются.
     
     
  • 7.35, Аноним (-), 15:17, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Если ты не в курсе, это давно уже нормальная практика на многих хостингах применительно к другим CA.
     
  • 4.27, Анонимный Алкоголик (??), 12:17, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > В том то и проблема, что тем, которые запрошены. :)

    Тогда и проблемы нет. То есть не было бы. А за сертификаты отвечает эта Authority.


     
     
  • 5.33, КО (?), 14:29, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Проблема не в том, чтобы выдавать сертификат на запрошенный домен, а в том, чтобы не выдавать его кому-попало.
    Ущербен сам подход, что тот кто живет в квартире по адресу 3-я улица Строителей, д. 3. кв. 3 и знает ответ на вопрос: "У Вас продается славянский шкаф?" и есть Иванов. Особенно в случае если по этому адресу коммуналка.
     

  • 1.3, Аноним (-), 21:34, 10/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –4 +/
    Эпично.
     
  • 1.5, Nikodim (?), 21:54, 10/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +16 +/
    Let's Encrypt как всегда рулит и оперативно исправляет проблемы! В отличии от проприетарщиков и коммерциалов, которые годами замалчивают бэкдоры и эксплойты.
     
     
  • 2.6, пох (?), 22:13, 10/01/2018 [^] [^^] [^^^] [ответить]  
  • –12 +/
    > Let's Encrypt как всегда рулит и оперативно исправляет проблемы!

    да-да, как всегда, своим обычным способом - ничего не улучшая в технике, занимается банальным шантажом. На этот раз - провайдеров. "настраивайте хостинг как МЫ, великие и спонсируемые КЕМ НАДА велим, или мы занесем вас в черный список". Отличное "исправляет проблемы".

     
     
  • 3.7, XoRe (ok), 22:31, 10/01/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    >> Let's Encrypt как всегда рулит и оперативно исправляет проблемы!
    > да-да, как всегда, своим обычным способом - ничего не улучшая в технике,
    > занимается банальным шантажом.

    Предложите, что бы ему следовало сделать на самом деле?

     
     
  • 4.8, Аноним (-), 22:39, 10/01/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Для начала использовать действительно безопасные механизмы верификации.

    HTTP, DNS, SNI — все они уязвимы к MITM.

    Впрочем, спонсоры LE никогда не позволят сделать его безопасным – если появятся безопасные методы подтверждения, клиенты и  алгоритмы для SSL-шифрования, то лавочку тут же прикроют.

     
     
  • 5.10, пох (?), 22:50, 10/01/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    > HTTP, DNS, SNI — все они уязвимы к MITM.

    и не оставляют следов на стороне CA. Удобно. Бе фор безопастность!

    > Впрочем, спонсоры LE никогда не позволят сделать его безопасным

    "мущина, проснитесь, вы обоcpались!" Больно они этого хотят.
    Они хотят совсем другого - отжать максимум возможного, чтобы иметь еще больше вариантов диктовать свои условия. И в этом у них со спонсорами трогательное согласие. За то деньги и вбухивают. Лет через пять останутся только пара-тройка провайдеров EV за уже совсем безобразные деньги и сплошной летсдекрипт для всей остальной серой массы.
    Остальные либо разорятся, либо им "помогут".


     
     
  • 6.16, key (??), 05:46, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > Лет через пять останутся
    > только пара-тройка провайдеров EV за уже совсем безобразные деньги и сплошной
    > летсдекрипт для всей остальной серой массы.
    > Остальные либо разорятся, либо им "помогут".

    А че вы их так не любите? Я конечно тоже против монополии, но на моей памяти LE еще ни разу не подводили, наоборот, с таким количеством пользователей и работников, они реагируют очень чутко, оперативно и православненько.
    А что касается монополии, то ничего не мешает вам сделать свой СА хоть сейчас. Дело за малым - заслужить доверие и протолкнуть ваш корневой сертификат в браузеры пользователей. Переплюните в этом LE?

     
     
  • 7.21, Аноним (-), 09:27, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • –3 +/
    А вот и боты-добровольцы пожаловали.

    "Мы ради вас стараемся" и "так бесплатно же!" можно и про меланин в молоке сказать — а что, насыпали яду в жратву, — зато бесплатно!

    На практике, LE это активная группа лоббирования, которая совместно с разработчиками ряда браузеров проталкивает услуги CA по принципу "первая доза бесплатно". Первые шаги уже сделаны — не-SSL сайтами всё труднее пользоваться в Firefox и Chrome, в каждом поле ввода всплывающие окошки с предупреждениями, не работает часть современных API.

    Никаких гарантий, что Lets Encrypt продолжат существовать завтра или послезавтра нет и не может быть. Никакого прецедента появления независимого CA не было, — напротив, первым же делом они заручились поддержкой Гугла, Мозиллы и ещё толпы игроков, к которым тебя без пары миллиардов в приёмную не пустят.

    "А что касается монополии" — так эта монополия в систем сертификатов там by design. Нет никакого механизма "получения доверия" и быть не может.

    Самая красноречивая подтверждение, что доверять LE нельзя, — ненавязчивый уход Symantec из бизнеса (действительно ли они отошли от кормушки или нет, но формально от своего имени бизнес с сертификатами уже отвязали). Ни одна адеватная коммерческая компания не сделает такого с перспективной технологией. Т.е. с точки зрения Symantec — SSL и система CA настолько себя дискредитировали, что пора передавать батон медиа-компаниям. А уж святые гугол с мозиллой найдут способ очистить свои и без того покрытые г**ом имена, когда вся система навернётся. Может ещё и в создании её новой итерации поучаствуют.

     
     
  • 8.25, Аноним (-), 10:41, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Удивился Загуглил Ты долбoёб Меланин 8212 это пигмент, совершенно безвредн... текст свёрнут, показать
     
     
  • 9.37, другой Аноним (?), 16:11, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Удивился МелаМин Нашумевшие скандалы в Китае Но нет, кое-кто умудрился не усл... текст свёрнут, показать
     
     
  • 10.40, Аноним (-), 16:21, 12/01/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Да, удивился, что кто-то путает меламин с меланином Меня китайские проблемы мал... текст свёрнут, показать
     
     
  • 11.41, другой Аноним (?), 20:20, 12/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Неуклюжая попытка юлежа и спрыга Зарепорть 25, а то палишься аж два раза А в... текст свёрнут, показать
     
  • 8.28, Аноним (-), 12:39, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    А что бесплатно молоко или похороны ... текст свёрнут, показать
     
  • 8.34, Аноним (-), 15:17, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +2 +/
    То есть, если писать короче и без обличительного тона, LE обладает всеми теми же... текст свёрнут, показать
     
  • 5.17, angra (ok), 06:56, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Для начала использовать действительно безопасные механизмы верификации.

    Какие?

    > HTTP, DNS, SNI — все они уязвимы к MITM.

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

    > если появятся безопасные методы подтверждения

    О подтверждении чего именно идет речь?

     
     
  • 6.19, Аноним (-), 09:09, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > На данный момент тем, кому по силу осуществить MITM такого масштаба, это не нужно, а те, кому это обычно нужно, на такое не способны.

    Иными словами, SSL бесполезен? Громкое заявление.

     
     
  • 7.39, angra (ok), 20:27, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    У меня даже идей нет, как из моих слов можно было сделать столь идиотский вывод.
     
  • 3.9, Аноним (-), 22:39, 10/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Каким ещё шантажом? Клиенты таких хостингов в любом случае не имеют возможности нормально использовать TLS-SNI, так что они ничего не потеряют.
     
  • 2.24, КО (?), 09:54, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • –1 +/
    >Let's Encrypt как всегда рулит и оперативно исправляет проблемы!

    По принципу - мы пока не знаем как, поэтому объявим виновными кого-то еще и подождем, пока все устаканится? :)

     
  • 2.30, arisu (ok), 13:12, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • –2 +/
    > Let's Encrypt как всегда рулит

    …и как всегда — только после того, как смачно въехала таблом в стену. потому что сделана недоучками для идиотов.

     
     
  • 3.36, Аноним (-), 15:24, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Такая-то возможность выстрелить с отличным прибыльным бизнесом и показать и этим недоучкам, и их идиотам, как надо. Но ты вместо этого сидишь и комменты на опеннет строчишь… Придётся и дальше LE пользоваться?
     

  • 1.11, Аноним (-), 23:29, 10/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • –1 +/
    А если в роли атакующего будет хостинг провайдер? Который специально все неправильно настроит и сам получит сертификат.
     
     
  • 2.12, пох (?), 23:53, 10/01/2018 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > А если в роли атакующего будет хостинг провайдер?

    а ему-то зачем? У него уже все твои юзеры, пароли и явки - в расшифрованном виде, после ssl-фронтенда. Хочет, твой код патчит, хочет прокси между ним и вебсервером ставит, а хочет - прямо из твоей базы в удобном интерфейсе запросом вынимает что ему надо. И ключ от твоего сертификата у него, в любом случае, есть, иначе он и подключить-то его не сможет.

    проблема что оно ему-то обычно нахрен не надо - номер твоей кредитки ты же сам ему сообщил. Со всеми cvv и billing address. Но, почему-то, провайдеры редко убегают в туманную даль, попытавшись напоследок снять все денежки с карт клиентов.

    да, в счастливые до-летрстрешовые времена мы, обычно, сертификаты оформляли вместо клиентов.
    Поскольку там требовалось минимальное общение с CA, на которое те и способны-то не были.

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

     
     
  • 3.15, key (??), 05:39, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Мы хоть и не хостинг провайдеры но и сейчас оформляем вместо клиентов бесплатные сертификаты.
     
  • 3.29, Анонимный Алкоголик (ok), 12:50, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    >> А если в роли атакующего будет хостинг провайдер?
    > а ему-то зачем? У него уже все твои юзеры, пароли и явки
    > - в расшифрованном виде, после ssl-фронтенда.

    А если у него нет? >:-)
    Вот начинающий такой провайдер из Франции... Без твоих паролей и явок... пока что.

     
  • 2.13, Анонимус2 (?), 00:38, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    Ваш хостинг-провайдер сможет себе выписать сертификат (не EV) в любом CA, а может и не выписывать, а просто перенаправить весь ваш (уже расшифрованный) траффик куда ему захочется и менять его как ему хочется.
     
  • 2.26, Аноним (-), 10:46, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > А если в роли атакующего будет хостинг провайдер? Который специально все неправильно
    > настроит и сам получит сертификат.

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

     

  • 1.14, Аноним (-), 02:58, 11/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Порицаю провайдеров.
     
  • 1.18, mrkaban (ok), 08:24, 11/01/2018 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Спасибо за информацию, будем ждать список провайдеров
     
     
  • 2.20, Аноним (-), 09:20, 11/01/2018 [^] [^^] [^^^] [ответить]  
  • +/
    > Спасибо за информацию, будем ждать список провайдеров

    GoDaddy там будет на первом месте, я думаю.

     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Спонсоры:
    Слёрм
    Inferno Solutions
    Hosting by Ihor
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2019 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру