Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 16849|Відповідь: 0

Неповний ланцюг SSL-сертифікатів: Проміжні сертифікати справді є проблемою

[Копіювати посилання]
Опубліковано 15.08.2017 21:08:39 | | |
Я вже наступав на цю яму раніше. Я забув, як практикуватися, але досі пам'ятаю цей принцип. Грубо поясніть:


Інсталяційний пакет браузера зберігає частину кореневих сертифікатів (публічних ключів), яким він довіряє.

Для безпеки емітенти сертифікатів зазвичай зберігають приватні ключі, що відповідають цим кореневим сертифікатам, у абсолютно відключеному сховищі. Ці кореневі приватні ключі використовуються у сховищі для видачі деяких «проміжних» сертифікатів, а приватні ключі цих проміжних сертифікатів мають повноваження видавати сертифікат наступного рівня. Ці проміжні приватні ключі встановлюються на онлайн-серверах для заробітку шляхом видачі сертифікатів сайтів. Після злому цих серверів видавець може видати наказ про анулювання, використовуючи фізично ізольований приватний ключ кореневого сертифіката у сховищі, щоб усунути довіру до цих проміжних сертифікатів, не втрачаючи повної недовіри до кореневого сертифіката видавця. Підпишіть новий проміжний сертифікат — і ви станете хорошою людиною, яка зможе заробляти гроші.

Ось і питання.

Браузер розпізнає лише кореневий сертифікат. Для сертифікації проміжного сертифіката ви (вебсайт) повинні видати власний сертифікат.

Правильно налаштований HTTPS-сайт повинен включати весь ланцюжок сертифікатів у сертифікат.
Наприклад, використовуйте команду openssl s_client -connect www.wosign.com:443, щоб переглянути конфігурацію власного вебсайту Wosign.
Решту контенту можна ігнорувати, просто подивіться на абзац ланцюга сертифікатів:
---
Ланцюг сертифікатів
0 s:/1.3.6.1.4.1.311.60.2.1.3=CN/1.3.6.1.4.1.311.60.2.1.2=Guangdong/1.3.6.1.4.1.311.60.2.1.1=Shenzhen/businessCategory=Приватне Organization/serialNumber=440301103308619/C=CN/ST=\xE5\xB9\xBF\xE4\xB8\x9C\xE7\x9C\x81/L=\xE6\xB7\xB1\xE5\x9C\xB3\xE5\xB8\x82/postalCode=518067/street=\xE6\xB7\xB1\ xE5\x9C\xB3\xE5\xB8\x82\xE5\x8D\x97\xE5\xB1\xB1\xE5\x8C\xBA\xE5\x8D\x97\xE6\xB5\xB7\xE5\xA4\xA7\xE9\x81\x931057\xE5\x8F\xB7\xE7\xA7\x91\xE6\x8A\x80\xE5\xA4\xA7\xE5\ x8E\xA6\xE4\xBA\x8C\xE6\x9C\x9FA\xE6\xA0\x8B502#/O=WoSign\xE6\xB2\x83\xE9\x80\x9A\xE7\x94\xB5\xE5\xAD\x90\xE8\xAE\xA4\xE8\xAF\x81\xE6\x9C\x8D\xE5\x8A\xA1\xE6\x9C\x89\ xE9\x99\x90\xE5\x85\xAC\xE5\x8F\xB8/CN=www.wosign.com
   i:/C=CN/O=WoSign CA Limited/CN=WoSign класу 4 EV сервер CA
1 s:/C=CN/O=WoSign CA Limited/CN=WoSign клас 4 EV сервер CA
   i:/C=CN/O=WoSign CA Limited/CN=Орган сертифікації WoSign
2 s:/C=CN/O=WoSign CA Limited/CN=Сертифікаційний орган WoSign
   i:/C=IL/O=StartCom Ltd./OU=Безпечне цифрове підписання сертифікатів/CN=Орган сертифікації StartCom
---

0, 1 і 2 — це серійні номери кожного рівня сертифіката в ланцюжку сертифікатів. 0 — це сертифікат, який використовує вебсайт для перевірки. Його CN має відповідати доменному імені сайту.
Після кожного серійного номера рядок, що починається на s, стосується сертифіката, а рядок, що починається з i, — того, хто видав сертифікат.

Видно, що CN 0 містить підозрюване китайське доменне ім'я та англійське доменне www.wosign.com. Він видається компанією WoSign CA Limited/CN=WoSign Class 4 EV Server CA.

Сертифікат 1 є емітентом 0. 1 видається іншим сертифікатом — Органом сертифікації WoSign.
Давайте подивимось на наступний рівень, 2. Там сказано, що сертифікаційний орган WoSign видається StartCom (ха-ха, виявилося, що це субпідрядник!). )

Після такого аналізу браузер каже: «О, я знаю автора 2», і це згадується в інсталяційному пакеті StartCom. Правильний підпис і валідація, тож довіряйте 2. Тоді варто також довіряти 1, виданому 2, і 0, виданому 1. Тож цьому сайту можна довіряти.

--

Однак, якщо вебсайт налаштований так, щоб він містив лише себе у CRT-файлі, а не достатньо повний ланцюг сертифікатів для перевірки вбудованими даними браузера, браузер може відхилити його. Наприклад, що саме
openSSL s_client -connect touko.moe:443
---
Ланцюг сертифікатів
0 s:/CN=touko.moe
   i:/C=CN/O=WoSign CA Limited/CN=WoSign CA Безкоштовний SSL сертифікат G2
---
В одній групі лише 0. Опис: touko.moe у рядку s видається WoSign CA Free SSL Certificate G2 у рядку i. Він зник.

Ось що найдивовижніше в цій пастці: не завжди так, чи браузер не перевіряє це на цьому етапі. Є 2 ситуації:
Відповідь. Я ніколи не бачив цього з моменту встановлення браузера. Тоді валідація не проходить.
B. Якщо браузер вже бачив і перевіряв i, перевірка буде успішною.

Зазвичай адміністратор заходить на https-сайт емітента сертифікатів, щоб придбати сертифікат, і браузер його перевіряє, а потім кешує всі успішно перевірені проміжні сертифікати, економячи час у майбутньому. Коли адміністратор (помилково) налаштовував свій сайт і переглянув тест, він не зіткнувся з жодними проблемами. Тому що його браузер уже розпізнає цей проміжний сертифікат.

Однак багато користувачів могли не відвідувати інші правильно налаштовані вебсайти, видані цим проміжним сертифікатом. Отже, валідація провалюється, оскільки не може знайти надійного емітента.


Він порівнянний із системою контролю викидів дизельних автомобілів Volkswagen. Все було гаразд, коли перевірили. Щойно вони виходять на вулицю, вони наносять отруту.


РЕДАГУВАННЯ: Як виправити ...... Ймовірно, це для додавання налаштування SSLCertificateChainFile при налаштування сервера та використання файлу bundle, наданого сайтом емітента сертифікатів (файл містить багато проміжних сертифікатів для встановлення зв'язку між вашим сертифікатом і сертифікатом з високим рівнем довіри).




Попередній:OpenSSL конвертує формат PFX у .key та .crt файли
Наступний:Браузери Android вказують, що сертифікат не є довіреним
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com