Ключевое слово в защите информации
КЛЮЧЕВОЕ СЛОВО
в защите информации
Получить ГОСТ TLS-сертификат для домена (SSL-сертификат)
Добро пожаловать, Гость! Чтобы использовать все возможности Вход или Регистрация.

Уведомление

Icon
Error

2 Страницы12>
Опции
К последнему сообщению К первому непрочитанному
Offline alexgri@comsoft-corp.ru  
#1 Оставлено : 19 июня 2015 г. 13:13:29(UTC)
alexgri@comsoft-corp.ru

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.06.2015(UTC)
Сообщений: 7
Российская Федерация
Откуда: Тольятти

Сказал(а) «Спасибо»: 1 раз
Добрый день.
Для тестирования TLS я создал пару ключей и клиентский сертификат, подписанный вашим тестовым удостоверяющим центром. А в качестве доверенных сертификатов добавил самоподписанный сертификат, сгенерированный openssl. Когда я устанавливаю соединение с сервером по адресу https://www.cryptopro.ru:4444/test/tls-cli.asp моя программа принимает сертификат сервера и считает его доверенным и происходит успешный обмен ключами, хотя в моем понимании программа не должна доверять этому серверу.
Можете прояснить эту ситуацию? Как такое могло произойти?

лог TLS взаимодействия с сервером
Код:

19.06.2015 13:36:34 ru.CryptoPro.ssl.SSLContextImpl d
INFO: keyStore is : 

19.06.2015 13:36:34 ru.CryptoPro.ssl.SSLContextImpl d
INFO: keyStore type is : HDImageStore

19.06.2015 13:36:34 ru.CryptoPro.ssl.SSLContextImpl d
INFO: keyStore provider is : 

19.06.2015 13:36:34 ru.CryptoPro.ssl.SSLContextImpl d
INFO: init keystore

19.06.2015 13:36:34 ru.CryptoPro.ssl.SSLContextImpl d
INFO: defaultStoreProvider = 

19.06.2015 13:36:34 ru.CryptoPro.ssl.SSLContextImpl d
INFO: 
19.06.2015 13:36:35 ru.CryptoPro.JCP.tools.Starter check
INFO: Loading JCP 1.0.54 36641
19.06.2015 13:36:35 ru.CryptoPro.JCP.tools.Starter check
INFO: JCP loaded.

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: init keymanager of type GostX509

19.06.2015 13:36:35 ru.CryptoPro.ssl.n <init>
FINE: %% adding as private keys %%

19.06.2015 13:36:35 ru.CryptoPro.ssl.n <init>
FINE: 
found key: cprotestclient
19.06.2015 13:36:35 ru.CryptoPro.ssl.n <init>
FINE: 
------
Certificate chain [0] for key:cprotestclient 
  Subject: CN=alexgri, O=comsoft, C=RU (120005280ad62cf10a78391d9300000005280a)
  Valid from Thu Jun 18 12:08:39 SAMT 2015 until Fri Sep 18 12:18:39 SAMT 2015
Certificate chain [1] for key:cprotestclient 
  Subject: CN=CRYPTO-PRO Test Center 2, O=CRYPTO-PRO LLC, L=Moscow, C=RU, EMAILADDRESS=support@cryptopro.ru (2b6e3351fd6eb2ad48200203cb5ba141)
  Valid from Tue Aug 05 17:44:24 SAMT 2014 until Mon Aug 05 17:54:03 SAMT 2019
------

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: trustStore is: /home/alexgri/projects/java/mtr/mtr-test/src/test/resources/mtr-resources/rootcastore

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: trustStore type is : CertStore

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: trustStore provider is : 

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: init truststore

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: init trustmanager of type GostX509

19.06.2015 13:36:35 ru.CryptoPro.ssl.e <init>
FINE: Trusted certificates: key store.

19.06.2015 13:36:35 ru.CryptoPro.ssl.s a
FINE: Add trusted certificate: CN=AlexGri, O=FakeCA, L=Tolyatti, ST=Samara, C=RU (a7158a5226ea6f1e)

19.06.2015 13:36:35 ru.CryptoPro.ssl.e a
FINE: 
%% adding as trusted certificates %%
--------
  Subject: CN=AlexGri, O=FakeCA, L=Tolyatti, ST=Samara, C=RU (a7158a5226ea6f1e)
  Valid from Wed Jun 10 13:34:18 SAMT 2015 until Sun Oct 26 13:34:18 SAMT 2042
--------

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: init context...

19.06.2015 13:36:35 ru.CryptoPro.ssl.SSLContextImpl d
INFO: Context inited.

19.06.2015 13:36:35 ru.CryptoPro.ssl.ag n
FINE: %% No cached client session

19.06.2015 13:36:35 ru.CryptoPro.ssl.ag n
FINE: Set null SessionId

19.06.2015 13:36:35 ru.CryptoPro.ssl.d m
FINE: %% ClientHello, TLSv1; Cipher Suites: [TLS_CIPHER_2001, TLS_CIPHER_94, SSL3_CK_GVO_KB2]; Compression Methods: 0

19.06.2015 13:36:36 ru.CryptoPro.ssl.T <init>
FINE: ServerHello sessionId:{79, 93, 178, 163, 148, 135, 57, 186, 184, 155, 238, 118, 145, 107, 79, 114, 120, 17, 70, 87, 209, 201, 52, 27, 66, 155, 114, 129, 182, 25, 99, 157}

19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: handshakeDigest :776be68f

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% New session TLS_CIPHER_2001

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% Certificate message:
------
  Subject: CN="Веб-сервер ООО \"КРИПТО-ПРО\"", O="ООО \"КРИПТО-ПРО\"", L=Москва, C=RU, EMAILADDRESS=support@cryptopro.ru
  Valid from Mon Sep 08 13:01:00 SAMT 2014 until Tue Dec 08 13:11:00 SAMT 2015
------

19.06.2015 13:36:36 ru.CryptoPro.ssl.s <init>
FINE: Validator trusted certificates: 1

19.06.2015 13:36:36 ru.CryptoPro.ssl.s a
FINE: Certificate count to validate: 1

19.06.2015 13:36:36 ru.CryptoPro.ssl.s a
FINE: Validate certificate #0 : CN="Веб-сервер ООО \"КРИПТО-ПРО\"", O="ООО \"КРИПТО-ПРО\"", L=Москва, C=RU, EMAILADDRESS=support@cryptopro.ru (1ee22f4f000300029fa5)

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% ClientKeyExchange...

19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: clntEncIV:82 89 35 9A 99 A1 34 3F

19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: svrEncIV:7B B2 E6 DD B2 82 D3 9D

19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: ChangeCipherSpec %% Finished.

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag b
FINE: %% Cached client session: [Session-1, TLS_CIPHER_2001]

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag n
FINE: %% Client cached [Session-1, TLS_CIPHER_2001]

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag n
FINE: %% Try resuming [Session-1, TLS_CIPHER_2001] from port 43392

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag n
FINE: Try resuming:{79, 93, 178, 163, 148, 135, 57, 186, 184, 155, 238, 118, 145, 107, 79, 114, 120, 17, 70, 87, 209, 201, 52, 27, 66, 155, 114, 129, 182, 25, 99, 157}

19.06.2015 13:36:36 ru.CryptoPro.ssl.d m
FINE: %% ClientHello, TLSv1; Cipher Suites: [TLS_CIPHER_2001, TLS_CIPHER_94, SSL3_CK_GVO_KB2]; Compression Methods: 0

19.06.2015 13:36:36 ru.CryptoPro.ssl.T <init>
FINE: ServerHello sessionId:{191, 182, 71, 192, 159, 162, 37, 79, 42, 45, 163, 235, 3, 165, 98, 225, 108, 172, 96, 188, 222, 88, 215, 146, 229, 7, 218, 228, 119, 13, 167, 43}
}
19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: handshakeDigest :6c3c9c31

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% New session TLS_CIPHER_2001

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% Certificate message:
------
  Subject: CN="Веб-сервер ООО \"КРИПТО-ПРО\"", O="ООО \"КРИПТО-ПРО\"", L=Москва, C=RU, EMAILADDRESS=support@cryptopro.ru
  Valid from Mon Sep 08 13:01:00 SAMT 2014 until Tue Dec 08 13:11:00 SAMT 2015
------

19.06.2015 13:36:36 ru.CryptoPro.ssl.s a
FINE: Certificate count to validate: 1

19.06.2015 13:36:36 ru.CryptoPro.ssl.s a
FINE: Validate certificate #0 : CN="Веб-сервер ООО \"КРИПТО-ПРО\"", O="ООО \"КРИПТО-ПРО\"", L=Москва, C=RU, EMAILADDRESS=support@cryptopro.ru (1ee22f4f000300029fa5)

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% CertificateRequest

19.06.2015 13:36:36 ru.CryptoPro.ssl.n a
FINE: %% getting aliases for Client

19.06.2015 13:36:36 ru.CryptoPro.ssl.n a
FINE: %% matching alias: cprotestclient

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% Certificate message:
------
  Subject: CN=alexgri, O=comsoft, C=RU
  Valid from Thu Jun 18 12:08:39 SAMT 2015 until Fri Sep 18 12:18:39 SAMT 2015
------
  Subject: CN=CRYPTO-PRO Test Center 2, O=CRYPTO-PRO LLC, L=Moscow, C=RU, EMAILADDRESS=support@cryptopro.ru
  Valid from Tue Aug 05 17:44:24 SAMT 2014 until Mon Aug 05 17:54:03 SAMT 2019
------

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag a
FINE: %% ClientKeyExchange...

19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: clntEncIV:6D EA 69 F0 39 8C 6E F8

19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: svrEncIV:1C 16 71 4C 3C DF F8 46

19.06.2015 13:36:36 ru.CryptoPro.ssl.d a
FINE: ChangeCipherSpec %% Finished.

19.06.2015 13:36:36 ru.CryptoPro.ssl.ag b
FINE: %% Cached client session: [Session-2, TLS_CIPHER_2001]


отданная страничка, говорящая об успешной двусторонней аутентификации
Код:

<html>
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
        <meta http-equiv="Content-Language" content="ru">
        <title>Тестовая страница для установления защищенного соединения с сервером с двусторонней аутентификацией</title>
    </head>
    <body> <h3>Защищенное соединение установлено</h3> 
    <h4>Сертификат пользователя предоставлен</h4>
    <p>Для отображения данных сертификата пользователя используется функция <br><b>Request.ClientCertificate(</b> <i>Key</i>[<i>SubField</i>] <b>)</b></p>

    <table width="98%" border="1" cellpadding="2" cellspacing="0">
    <tr>
        <th><strong>Поле сертификата 1</strong></th>
        <th><strong>Значение</strong></th>
    </tr>
    <tr>
        <td>Issuer (Издатель)</td>
        <td>EMAIL=support@cryptopro.ru, C=RU, L=Moscow, O=CRYPTO-PRO LLC, CN=CRYPTO-PRO Test Center 2</td>
    <tr>
        <td>Subject (Владелец)</td>
        <td>C=RU, O=comsoft, CN=alexgri</td>
    <tr>
        <td>SerialNumber (Серийный номер)</td>
        <td>12-00-05-28-0a-d6-2c-f1-0a-78-39-1d-93-00-00-00-05-28-0a</td>
    <tr>
        <td>ValidFrom (Действителен c)</td>
        <td>18.06.2015 8:08:39/td>
    </tr>
    <tr>
        <td>ValidUntil (Действителен до)</td>
        <td>18.09.2015 8:18:39</td>
    </tr>
    </table> 
    </body>
</html>
Offline Евгений Афанасьев  
#2 Оставлено : 19 июня 2015 г. 16:22:04(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,926
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 691 раз в 652 постах
Здравствуйте.
У вас в списке доверенных сертификатов есть сертификат УЦ?

Код:


‎44 87 da 57 49 93 60 9e 48 76 f6 82 73 44 ff 17

CN = Тестовый УЦ ООО "КРИПТО-ПРО"
O = ООО "КРИПТО-ПРО"
C = RU
E = info@cryptopro.ru
L = Москва
S = 77 г. Москва
STREET = ул. Сущёвский вал, д. 18
ИНН = 007717107991
ОГРН = 1037700085444

Offline alexgri@comsoft-corp.ru  
#3 Оставлено : 22 июня 2015 г. 7:57:18(UTC)
alexgri@comsoft-corp.ru

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.06.2015(UTC)
Сообщений: 7
Российская Федерация
Откуда: Тольятти

Сказал(а) «Спасибо»: 1 раз
Автор: afev Перейти к цитате
Здравствуйте.
У вас в списке доверенных сертификатов есть сертификат УЦ?

я добавлял в дефолтное хранилище через
Цитата:
./certmgr -inst -cert

не знаю, считается ли он доверенным. Но в данном случае я использую отдельное хранилище и загружаю его по указанному в программе пути. Да и в логах было написано что только один сертификат загружен в качестве доверенного.
Offline Евгений Афанасьев  
#4 Оставлено : 22 июня 2015 г. 9:59:12(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,926
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 691 раз в 652 постах
Я имел в виду trust store для JTLS (он не работает с хранилищами csp).
Какая у вас версия JCP, JTLS, JRE?

P.S. Увидел - JCP 1.0.54 36641

Отредактировано пользователем 22 июня 2015 г. 10:08:56(UTC)  | Причина: Не указана

Offline alexgri@comsoft-corp.ru  
#5 Оставлено : 22 июня 2015 г. 10:07:22(UTC)
alexgri@comsoft-corp.ru

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.06.2015(UTC)
Сообщений: 7
Российская Федерация
Откуда: Тольятти

Сказал(а) «Спасибо»: 1 раз
нет, в trust store только мой самоподписанный сертификат.
да, 1.0.54
Offline Евгений Афанасьев  
#6 Оставлено : 22 июня 2015 г. 10:09:34(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,926
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 691 раз в 652 постах
В JCP 1.0.55 были изменения в части построения и проверки цепочки, они вошли в 2.0. Можете попробовать с 2.0?

P.S. Ваш случай мы проверим.

Отредактировано пользователем 22 июня 2015 г. 10:33:23(UTC)  | Причина: Не указана

Offline Mironov  
#7 Оставлено : 22 июня 2015 г. 11:08:14(UTC)
Mironov

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 16.10.2013(UTC)
Сообщений: 21
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 2 раз
Поблагодарили: 4 раз в 4 постах
Автор: alexgri@comsoft-corp.ru Перейти к цитате
Для тестирования TLS я создал пару ключей и клиентский сертификат, подписанный вашим тестовым удостоверяющим центром. А в качестве доверенных сертификатов добавил самоподписанный сертификат, сгенерированный openssl.

Автор: alexgri@comsoft-corp.ru Перейти к цитате
нет, в trust store только мой самоподписанный сертификат.



Добрый день! Не совсем понятно - сертификат клиента был выпущен в нашем тестовом УЦ или он самоподписанный?


Offline alexgri@comsoft-corp.ru  
#8 Оставлено : 22 июня 2015 г. 11:15:55(UTC)
alexgri@comsoft-corp.ru

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.06.2015(UTC)
Сообщений: 7
Российская Федерация
Откуда: Тольятти

Сказал(а) «Спасибо»: 1 раз
Автор: Mironov Перейти к цитате
Не совсем понятно - сертификат клиента был выпущен в нашем тестовом УЦ или он самоподписанный?


Сертификат клиента - подписан вашим тестовым УЦ, но доверять я хочу только тем серверам, которые подписаны сгенерированным мной сертификатом(таких серверов не существует) - поэтому в javax.net.ssl.trustStore я указываю путь до этого самоподписаного сертификата и ожидаю что программа ругнется на попытку соединения с недоверенным сервером.
Offline alexgri@comsoft-corp.ru  
#9 Оставлено : 22 июня 2015 г. 11:46:11(UTC)
alexgri@comsoft-corp.ru

Статус: Новичок

Группы: Участники
Зарегистрирован: 19.06.2015(UTC)
Сообщений: 7
Российская Федерация
Откуда: Тольятти

Сказал(а) «Спасибо»: 1 раз
установил версию 2.0
когда в качестве доверенного (javax.net.ssl.trustStore) добавлен самоподписанный через openssl сертификат - ошибка
Код:
the trustAnchors parameter must be non-empty 
я так понимаю - потому что использовался другой алгоритм шифрования
если в хранилище "правильные" сертификаты но других серверов -
Код:
unable to find valid certification path to requested target


последнее - как раз то что я ожидал получить.

могу ли я считать(сказать заказчику), что в версии 1.0.54 при определенных обстоятельствах некорректно работает клиентская часть двусторонней аутентификации?

появился побочный вопрос - какой сертификат нужно добавить, чтобы успешно соединится с https://www.cryptopro.ru:4444/test/tls-cli.asp в версии 2? я добавил все сертификаты из цепочки cacert.p7b в доверенное хранилище , но возможно сделал это неправильно

Код:

CertificateFactory cf = CertificateFactory.getInstance("X509");
FileInputStream fis = new FileInputStream(pathToCert);
Collection<? extends Certificate> certificates = cf.generateCertificates(new BufferedInputStream(fis));
int i = 0;
for (Certificate certificate : certificates) {
  ks.setCertificateEntry(alias + i, certificate);
  i++;
}

Offline Евгений Афанасьев  
#10 Оставлено : 22 июня 2015 г. 12:01:50(UTC)
Евгений Афанасьев

Статус: Сотрудник

Группы: Участники
Зарегистрирован: 06.12.2008(UTC)
Сообщений: 3,926
Российская Федерация
Откуда: Крипто-Про

Сказал(а) «Спасибо»: 20 раз
Поблагодарили: 691 раз в 652 постах
Автор: alexgri@comsoft-corp.ru Перейти к цитате

могу ли я считать(сказать заказчику), что в версии 1.0.54 при определенных обстоятельствах некорректно работает клиентская часть двусторонней аутентификации?

Да, в JCP была сделана доработка, она отражена в changelog:
Код:

2013-04-09 КриптоПро JCP 1.0.55
* tls: переделана процедура построения и проверки цепочки сертификатов (JCP-234) 
* tls: расширен интерфейс для задания параметров проверки цепочки сертификатов на вкладке с настройками (JCP-237)

но попала только в JCP 1.0.55 и выше.
P.S. У https://www.cryptopro.ru:4444/test/tls-cli.asp другой корневой, тестового УЦ.
thanks 1 пользователь поблагодарил Евгений Афанасьев за этот пост.
alexgri@comsoft-corp.ru оставлено 22.06.2015(UTC)
RSS Лента  Atom Лента
Пользователи, просматривающие эту тему
Guest
2 Страницы12>
Быстрый переход  
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.