Форум КриптоПро
»
Общие вопросы
»
Общие вопросы
»
TLS test server - tls_process_server_hello:unknown cipher returned
Статус: Новичок
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 6  Сказал(а) «Спасибо»: 3 раз
|
Здравствуйте! Никак не пойму, это у меня руки не из того места растут, или ваш тестовый стенд возвращает какой-то странный шифр? Помогите разобраться, пожалуйста. Взял Криптокомовский gost-engine, натравил на него OpenSSL (1.1.0) Отправляю запрос : openssl s_client -engine gost -connect tlsgost-2001.cryptopro.ru:443 -showcerts -status -msgВывод : Цитата:
engine "gost" set. CONNECTED(00000003)
>>> ??? [length 0005] 16 03 01 00 b4
>>> TLS 1.2Handshake [length 00b4], ClientHello 01 00 00 b0 03 03 74 24 6c 60 b3 9c 1d 3e 6b 74 27 72 c0 f2 c5 c7 39 f6 c8 73 5c a1 04 de b8 b9 de 47 bb 46 df 78 00 00 38 c0 2c c0 30 00 9f cc a9 cc a8 cc aa c0 2b c0 2f 00 9e c0 24 c0 28 00 6b c0 23 c0 27 00 67 c0 0a c0 14 00 39 c0 09 c0 13 00 33 00 9d 00 9c 00 3d 00 3c 00 35 00 2f 00 ff 01 00 00 4f 00 0b 00 04 03 00 01 02 00 0a 00 0a 00 08 00 1d 00 17 00 19 00 18 00 23 00 00 00 05 00 05 01 00 00 00 00 00 16 00 00 00 17 00 00 00 0d 00 20 00 1e 06 01 06 02 06 03 05 01 05 02 05 03 04 01 04 02 04 03 03 01 03 02 03 03 02 01 02 02 02 03
<<< ??? [length 0005] 16 03 01 03 ec
<<< TLS 1.2Handshake [length 0051], ServerHello 02 00 00 4d 03 01 5b 3e 65 ff 56 09 22 1f 5d 4d 5a 3c c2 85 29 9a 64 34 bb e0 3b 0f 0b 75 08 b0 f5 06 5a f3 63 a5 20 61 f8 40 ea 34 06 df fc ca 1f a3 a8 31 38 d2 aa fb 8e 20 66 58 a4 e9 23 2f 9f b9 7b 08 9a 00 18 00 31 00 00 05 ff 01 00 01 00
>>> ??? [length 0005] 15 03 01 00 02
>>> TLS 1.0Alert [length 0002], fatal illegal_parameter 02 2f
140385060737472:error:141710F8:SSL routines:tls_process_server_hello:unknown cipher returned:ssl/statem/statem_clnt.c:1028:
--- no peer certificate available --- No client certificate CA names sent --- SSL handshake has read 1009 bytes and written 192 bytes Verification: OK --- New, (NONE), Cipher is (NONE) Secure Renegotiation IS NOT supported Compression: NONE Expansion: NONE No ALPN negotiated SSL-Session: Protocol : TLSv1 Cipher : 0000 Session-ID: 61F840EA3406DFFCCA1FA3A83138D2AAFB8E206658A4E9232F9FB97B089A0018 Session-ID-ctx: Master-Key: PSK identity: None PSK identity hint: None SRP username: None Start Time: 1530815999 Timeout : 7200 (sec) Verify return code: 0 (ok) Extended master secret: no ---
Находимся в OpenSSL, в функции tls_process_server_hello(), дебаг говорит, что cipherchars = Цитата:0x5555558558f0 "\002"
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 12.12.2007(UTC) Сообщений: 6,404  Откуда: КРИПТО-ПРО Сказал «Спасибо»: 37 раз Поблагодарили: 719 раз в 623 постах
|
Я могу ошибаться, но кажется, что наши тестовые сервера не поддерживают TLS 1.2. Укажите TLS 1.0. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 6  Сказал(а) «Спасибо»: 3 раз
|
К сожалению, это не дало никаких результатов. Команда : Цитата:openssl s_client -connect tlsgost-2001.cryptopro.ru:443 -showcerts -msg -debug -status -tls1 Результат тот же.
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,535 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 37 раз Поблагодарили: 499 раз в 353 постах
|
Автор: AAAAA12334  Взял Криптокомовский gost-engine, натравил на него OpenSSL (1.1.0) А как вы убедились в том, что верно настроили? openssl engine показывает нашу энжину? Проверили у себя, у нас ваша командная строка работает и с -tls1 и без. |
|
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 6  Сказал(а) «Спасибо»: 3 раз
|
Вы мне подкинули хорошую идею, спасибо. Действительно, с настройками не всё так гладко, как хотелось бы - не выводит гостовые шифры через openssl ciphers. Хотя эти команды показывают нормальную реакцию : Цитата:openssl engine -vvvv openssl engine -t -c
Также и параметр -engine gost в составе других команд работает. Для эксперимента я решил на время переключиться на старый OSSL (1.0.2g), и старый engine. В 1.0.2 хэндшейк проходит, как надо. Правда под конец выплывает ошибка сегментирования, однако это уже вопрос совсем другого рода, это решаемо.
И тут я вспомнил, что мельком просматривал это : Cannot use the GOST engine in s_client/s_serverЦитата: ..... ..... Hello. After the commit ad74ff0 it is impossible to load the GOST engine in OpenSSL 1.1.0h. The GOST engine is loaded via openssl.conf file. But now ssl_load_ciphers is invoked before openssl.conf file is processed and GOST engine is loaded. So ssl_load_ciphers doesn't register GOST cipher suites properly, and they become unavailable for TLS. How must I initialize openssl now to make the GOST ciphersuites work? Thank you.
А в ответ : Цитата: Yes, this is known to be broken in 1.1.0 too (as I noted in my original issue description above). There is no workaround at the moment, although you could try cherry-picking the patch in #5813 back to to 1.1.0 as a temporary measure.
|
|
|
|
Статус: Сотрудник
Группы: Администраторы
Зарегистрирован: 16.09.2010(UTC) Сообщений: 1,535 Откуда: КРИПТО-ПРО
Сказал(а) «Спасибо»: 37 раз Поблагодарили: 499 раз в 353 постах
|
Автор: AAAAA12334  И тут я вспомнил, что мельком просматривал это : Cannot use the GOST engine in s_client/s_serverЦитата: ..... ..... Hello. After the commit ad74ff0 it is impossible to load the GOST engine in OpenSSL 1.1.0h. The GOST engine is loaded via openssl.conf file. But now ssl_load_ciphers is invoked before openssl.conf file is processed and GOST engine is loaded. So ssl_load_ciphers doesn't register GOST cipher suites properly, and they become unavailable for TLS. How must I initialize openssl now to make the GOST ciphersuites work? Thank you.
А в ответ : Цитата: Yes, this is known to be broken in 1.1.0 too (as I noted in my original issue description above). There is no workaround at the moment, although you could try cherry-picking the patch in #5813 back to to 1.1.0 as a temporary measure.
Так точно, ГОСТ в официальных релизах может быть сломан, ставьте патч или пользуйтесь нашим форком: https://github.com/deemr.../openssl-1.1.0-gost-0.15Если патчить, то ревертить нужно вот этот коммит: https://github.com/opens...77ff7425598802b91924652dОтредактировано пользователем 6 июля 2018 г. 17:56:02(UTC)
| Причина: Не указана |
|
 1 пользователь поблагодарил pd за этот пост.
|
|
|
Статус: Новичок
Группы: Участники
Зарегистрирован: 05.07.2018(UTC) Сообщений: 6  Сказал(а) «Спасибо»: 3 раз
|
Подтверждаю : ваша версия решает проблему с порядком подгрузки шифров. Отредактировано пользователем 8 октября 2021 г. 13:30:30(UTC)
| Причина: Не указана
|
|
|
|
Форум КриптоПро
»
Общие вопросы
»
Общие вопросы
»
TLS test server - tls_process_server_hello:unknown cipher returned
Быстрый переход
Вы не можете создавать новые темы в этом форуме.
Вы не можете отвечать в этом форуме.
Вы не можете удалять Ваши сообщения в этом форуме.
Вы не можете редактировать Ваши сообщения в этом форуме.
Вы не можете создавать опросы в этом форуме.
Вы не можете голосовать в этом форуме.
Important Information:
The Форум КриптоПро uses cookies. By continuing to browse this site, you are agreeing to our use of cookies.
More Details
Close