0
1
Подскажите, в чём проблема с SSL-сертификатом Сбербанка, их сайта developer.sberbank.ru?
$ openssl s_client -connect developer.sberbank.ru:443 | grep -e 'error' depth=0 businessCategory = Private Organization, jurisdictionC = RU, serialNumber = 1027700132195, C = RU, L = Moscow, O = Sberbank of Russia, OU = CTI, CN = developer.sberbank.ru verify error:num=20:unable to get local issuer certificate verify return:1 depth=0 businessCategory = Private Organization, jurisdictionC = RU, serialNumber = 1027700132195, C = RU, L = Moscow, O = Sberbank of Russia, OU = CTI, CN = developer.sberbank.ru verify error:num=21:unable to verify the first certificate verify return:1 Verification error: unable to verify the first certificate ^C
Может быть, я как-то неправильно задал команду?
Yandex browser (версия 19.9.3.314) тоже пишет предупреждение:
Невозможно установить безопасное соединение. net::ERR_CERT_AUTHORITY_INVALID Subject: developer.sberbank.ru Issuer: Thawte EV RSA CA 2018 Expires on: 22 нояб. 2020 г. Current date: 24 окт. 2019 г. PEM encoded chain: ...
telcoM
2018-11-14 в 14:21
Вы, похоже, правы в своих подозрениях: согласно сообщению об ошибке, ваш прокси-сертификат использует алгоритм подписи SHA-1, который имеет серьезную известную слабость. Время действия не является проблемой; плохой алгоритм есть.
Процесс отказа от алгоритма SHA-1 начался несколько лет назад: с Chrome он начался в 2014 году, поскольку начал отмечать сертификаты конечных объектов, которые использовали SHA-1 и которые действовали после 1 января 2017 года, как «безопасные, но с незначительными ошибки». По прошествии времени и обнаружении новых способов использования уязвимости пометка была расширена пошагово для всех некорневых сертификатов SHA-1 и стала более строгой: теперь любой современный веб-браузер помечает сайт как Сертификат SHA-1 в любом месте своей цепочки сертификатов однозначно плох.
Органы по сертификации, соответствующие базовым требованиям CAB / F, прекратили выпуск любых новых сертификатов SHA-1 в начале 2016 года.
Microsoft также прошла процедуру устаревания сертификатов SHA-1 в 2017 году.
Если ваш брандмауэр / прокси-сервер по-прежнему использует сертификат с алгоритмом подписи SHA-1, похоже, вы какое-то время спали за рулем. Это стало очевидным только сейчас, вероятно, из-за недавнего обновления для системы безопасности, которое, в конце концов, сделало алгоритм SHA-1 категорически не повсеместным.
Вы должны убедиться, что ваш прокси-сервер может использовать сертификаты с лучшими алгоритмами (если он актуален и может обрабатывать современные TLS на веб-сайтах, это, вероятно, уже может), и создать новый SSL proxy default authorityсертификат, который использует SHA256 вместо SHA-1. Вам нужно будет распространить его среди всех клиентов, чей трафик SSL / TLS вы хотите отслеживать. После распространения вы можете переключить свой прокси на использование нового сертификата.
С добавленными скриншотами, похоже, что браузер в основном доволен полученным сертификатом, поскольку в адресной строке есть хороший значок замка. Фактическое сообщение об ошибке отображается вместо содержимого страницы, что заставляет меня думать, что это способ прокси-сервера сообщить об ошибке проверки сертификата в соединении между прокси-сервером и целевым сайтом.
На первом снимке экрана вы просматриваете вне локальной сети, и фактический сертификат сайта можно увидеть. Обратите внимание, что он был недавно обновлен, так как срок его действия начался 15.10.2018. Сертификат CA, используемый для сертификации сайта, — «Thawte RSA CA 2018», поэтому даже сертификату CA не более одного года.
На самом деле вы можете столкнуться с двумя проблемами:
- браузер был недоволен сертификатом прокси-сервера с устаревшим алгоритмом SHA-1, но в настоящее время он все еще считает, что это простительно.
- и прокси был недоволен, потому что у него нет промежуточного сертификата «Thawte RSA CA 2018» или его родителя, сертификата «DigiCert Global Root CA» в его собственном хранилище сертификатов доверенного ЦС, и поэтому он не может проверить недавно обновлен актуальный сертификат.
На момент написания этой статьи соответствующие сертификаты Thawte CA и промежуточные сертификаты были доступны здесь.
harrymc
2018-11-14 в 10:58
Проблема не может быть решена, кроме как тем, что владелец сайта получает соответствующий сертификат SSL.
Это можно обойти, например, в Chrome, добавив к ярлыку параметр --ignore-certificate-errors.
Однако с учетом нынешних ограничений безопасности такие обходные пути имеют короткий срок службы.
DigiCert intermediate certificate used for the issuance of Thawte OV certificates as of 1st December 2017. Chained with DigiCert Global Root CA
(self-signed).
It can be imported via this link::
https://thawte.tbs-certificats.com/Thawte_RSA_CA_2018.crt
Or use the text version here under.
Its CRL is available here:
http://crl3.digicert.com/ThawteRSACA2018.crl
-----BEGIN CERTIFICATE-----
MIIEiTCCA3GgAwIBAgIQAlqK7xlvfg1sIQSyGuZwKzANBgkqhkiG9w0BAQsFADBh
MQswCQYDVQQGEwJVUzEVMBMGA1UEChMMRGlnaUNlcnQgSW5jMRkwFwYDVQQLExB3
d3cuZGlnaWNlcnQuY29tMSAwHgYDVQQDExdEaWdpQ2VydCBHbG9iYWwgUm9vdCBD
QTAeFw0xNzExMDYxMjIzNTJaFw0yNzExMDYxMjIzNTJaMFwxCzAJBgNVBAYTAlVT
MRUwEwYDVQQKEwxEaWdpQ2VydCBJbmMxGTAXBgNVBAsTEHd3dy5kaWdpY2VydC5j
b20xGzAZBgNVBAMTElRoYXd0ZSBSU0EgQ0EgMjAxODCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBAMoIXuVTipccHkMvtoqnVumLhEOorJ16VYJ6FEuGty+P
Up8cyrEgW2+6It2mnC142ukGCE6+E6bry7s+uQUMPkrh8DIfE071BsVHc4k+gKOL
8QEkm6OZZpJraK0NLbTNcqL0+ThaZaa0jFPBCBqE+P0u8xF1btxqMSmsDYfMk2B4
3yW6JlmRxoNSNabKnLgoGs7XHO4Uv3ZcZas4HnnpfMxJIyaiUlBm0Flh/6D+mkwM
n/nojt4Ji7gVwaQITCacewbb/Yp0W1h+zWOkkS9F8Ho8lAuKfLIFqWeTn2jllWNg
2FiVX+BV75OnETt85pLYZkTgq72nj82khXhBJFTn2AMCAwEAAaOCAUAwggE8MB0G
A1UdDgQWBBSjyF5lVOUweMEF6gcKalnMuf7eWjAfBgNVHSMEGDAWgBQD3lA1VtFM
u2bwo+IbG8OXsj3RVTAOBgNVHQ8BAf8EBAMCAYYwHQYDVR0lBBYwFAYIKwYBBQUH
AwEGCCsGAQUFBwMCMBIGA1UdEwEB/wQIMAYBAf8CAQAwNAYIKwYBBQUHAQEEKDAm
MCQGCCsGAQUFBzABhhhodHRwOi8vb2NzcC5kaWdpY2VydC5jb20wQgYDVR0fBDsw
OTA3oDWgM4YxaHR0cDovL2NybDMuZGlnaWNlcnQuY29tL0RpZ2lDZXJ0R2xvYmFs
Um9vdENBLmNybDA9BgNVHSAENjA0MDIGBFUdIAAwKjAoBggrBgEFBQcCARYcaHR0
cHM6Ly93d3cuZGlnaWNlcnQuY29tL0NQUzANBgkqhkiG9w0BAQsFAAOCAQEARE2F
5d0cgozhZNWokCLfdhhl6mXSOyU3SoPamYcWfLH1CzMwD8a1+pFvwHIQfvlwXFH8
MrjB3C+jVobNbVWRrgqS3Jsa0ltRH/Ffs6ZTgP4WJYm1SNpUbgR7LWUD2F+PTvKB
M/gf9eSyqP4OiJslYaa38NU1aVAxZI15o+4xX4RZMqKXIIBTG2V+oPBjQ1oPmHGA
C/yWt2eThvb8/re7OpSpUdJyfGf97XeM4PiJAl6+4HQXhjwN7ZPZKrQv9Ay33Mgm
YLVQA+x9HONZXx9vvy8pl9bu+NVYWKGxzGxBK0CBozmVUCeXQPJKPTZleYuNM18p
U1P8Xh1CDguM+ZEoew==
-----END CERTIFICATE-----
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
02:5a:8a:ef:19:6f:7e:0d:6c:21:04:b2:1a:e6:70:2b
Signature Algorithm: sha256WithRSAEncryption
Issuer: C=US, O=DigiCert Inc, OU=www.digicert.com, CN=DigiCert Global Root CA
Validity
Not Before: Nov 6 12:23:52 2017 GMT
Not After : Nov 6 12:23:52 2027 GMT
Subject: C=US, O=DigiCert Inc, OU=www.digicert.com, CN=Thawte RSA CA 2018
Subject Public Key Info:
Public Key Algorithm: rsaEncryption
Public-Key: (2048 bit)
Modulus:
00:ca:08:5e:e5:53:8a:97:1c:1e:43:2f:b6:8a:a7:
56:e9:8b:84:43:a8:ac:9d:7a:55:82:7a:14:4b:86:
b7:2f:8f:52:9f:1c:ca:b1:20:5b:6f:ba:22:dd:a6:
9c:2d:78:da:e9:06:08:4e:be:13:a6:eb:cb:bb:3e:
b9:05:0c:3e:4a:e1:f0:32:1f:13:4e:f5:06:c5:47:
73:89:3e:80:a3:8b:f1:01:24:9b:a3:99:66:92:6b:
68:ad:0d:2d:b4:cd:72:a2:f4:f9:38:5a:65:a6:b4:
8c:53:c1:08:1a:84:f8:fd:2e:f3:11:75:6e:dc:6a:
31:29:ac:0d:87:cc:93:60:78:df:25:ba:26:59:91:
c6:83:52:35:a6:ca:9c:b8:28:1a:ce:d7:1c:ee:14:
bf:76:5c:65:ab:38:1e:79:e9:7c:cc:49:23:26:a2:
52:50:66:d0:59:61:ff:a0:fe:9a:4c:0c:9f:f9:e8:
8e:de:09:8b:b8:15:c1:a4:08:4c:26:9c:7b:06:db:
fd:8a:74:5b:58:7e:cd:63:a4:91:2f:45:f0:7a:3c:
94:0b:8a:7c:b2:05:a9:67:93:9f:68:e5:95:63:60:
d8:58:95:5f:e0:55:ef:93:a7:11:3b:7c:e6:92:d8:
66:44:e0:ab:bd:a7:8f:cd:a4:85:78:41:24:54:e7:
d8:03
Exponent: 65537 (0x10001)
X509v3 extensions:
X509v3 Subject Key Identifier:
A3:C8:5E:65:54:E5:30:78:C1:05:EA:07:0A:6A:59:CC:B9:FE:DE:5A
X509v3 Authority Key Identifier:
keyid:03:DE:50:35:56:D1:4C:BB:66:F0:A3:E2:1B:1B:C3:97:B2:3D:D1:55
X509v3 Key Usage: critical
Digital Signature, Certificate Sign, CRL Sign
X509v3 Extended Key Usage:
TLS Web Server Authentication, TLS Web Client Authentication
X509v3 Basic Constraints: critical
CA:TRUE, pathlen:0
Authority Information Access:
OCSP - URI:http://ocsp.digicert.com
X509v3 CRL Distribution Points:
Full Name:
URI:http://crl3.digicert.com/DigiCertGlobalRootCA.crl
X509v3 Certificate Policies:
Policy: X509v3 Any Policy
CPS: https://www.digicert.com/CPS
Signature Algorithm: sha256WithRSAEncryption
44:4d:85:e5:dd:1c:82:8c:e1:64:d5:a8:90:22:df:76:18:65:
ea:65:d2:3b:25:37:4a:83:da:99:87:16:7c:b1:f5:0b:33:30:
0f:c6:b5:fa:91:6f:c0:72:10:7e:f9:70:5c:51:fc:32:b8:c1:
dc:2f:a3:56:86:cd:6d:55:91:ae:0a:92:dc:9b:1a:d2:5b:51:
1f:f1:5f:b3:a6:53:80:fe:16:25:89:b5:48:da:54:6e:04:7b:
2d:65:03:d8:5f:8f:4e:f2:81:33:f8:1f:f5:e4:b2:a8:fe:0e:
88:9b:25:61:a6:b7:f0:d5:35:69:50:31:64:8d:79:a3:ee:31:
5f:84:59:32:a2:97:20:80:53:1b:65:7e:a0:f0:63:43:5a:0f:
98:71:80:0b:fc:96:b7:67:93:86:f6:fc:fe:b7:bb:3a:94:a9:
51:d2:72:7c:67:fd:ed:77:8c:e0:f8:89:02:5e:be:e0:74:17:
86:3c:0d:ed:93:d9:2a:b4:2f:f4:0c:b7:dc:c8:26:60:b5:50:
03:ec:7d:1c:e3:59:5f:1f:6f:bf:2f:29:97:d6:ee:f8:d5:58:
58:a1:b1:cc:6c:41:2b:40:81:a3:39:95:50:27:97:40:f2:4a:
3d:36:65:79:8b:8d:33:5f:29:53:53:fc:5e:1d:42:0e:0b:8c:
f9:91:28:7b
четверг, 24 октября 2019
Подскажите, в чём проблема с SSL-сертификатом Сбербанка, их сайта developer.sberbank.ru?
$ openssl s_client -connect developer.sberbank.ru:443 | grep -e 'error'
depth=0 businessCategory = Private Organization, jurisdictionC = RU, serialNumber = 1027700132195, C = RU, L = Moscow, O = Sberbank of Russia, OU = CTI, CN = developer.sberbank.ru
verify error:num=20:unable to get local issuer certificate
verify return:1
depth=0 businessCategory = Private Organization, jurisdictionC = RU, serialNumber = 1027700132195, C = RU, L = Moscow, O = Sberbank of Russia, OU = CTI, CN = developer.sberbank.ru
verify error:num=21:unable to verify the first certificate
verify return:1
Verification error: unable to verify the first certificate
^C
Может быть, я как-то неправильно задал команду?
Yandex browser (версия 19.9.3.314) тоже пишет предупреждение:
Невозможно установить безопасное соединение.
net::ERR_CERT_AUTHORITY_INVALIDSubject: developer.sberbank.ru
Issuer: Thawte EV RSA CA 2018
Expires on: 22 нояб. 2020 г.
Current date: 24 окт. 2019 г.
PEM encoded chain: ...
безопасность, сбербанк
На сайте с 01.04.2009
Offline
97
15 февраля 2021, 17:18
593
Google mercahnt перестал скачивать фид данных интернет магазина — проблема (Истек срок действия сертификата SSL на сервере)
Проверяю сторонними сервисами типа leaderssl выдает следующее
Невозможно получить сертификат локального эмитента. Возможно, сертификат сайта или промежуточные сертификаты установлены некоррекно.
Сервер поддерживает устаревший (менее безопасный) протокол SSL v2. Настоятельно рекомендуем отключить его
Кто знает в чем проблема и как решать
мелочи не решают главного, мелочи решают все!
На сайте с 08.06.2020
Offline
29
15 февраля 2021, 17:26
#1
amadey :
Google mercahnt перестал скачивать фид данных интернет магазина — проблема (Истек срок действия сертификата SSL на сервере)
Проверяю сторонними сервисами типа leaderssl выдает следующее
Невозможно получить сертификат локального эмитента. Возможно, сертификат сайта или промежуточные сертификаты установлены некоррекно.
Сервер поддерживает устаревший (менее безопасный) протокол SSL v2. Настоятельно рекомендуем отключить его
Кто знает в чем проблема и как решать
SSL Checker
- www.sslshopper.com
The SSL Checker makes it easy to verify your SSL certificates by connecting to your server and displaying the results of the SSL connection. It runs the following checks: Whether an SSL certificate is installed Whether the server is giving out the correct intermediate certificates so there are no untrusted warnings in users’ browsers The…
Европейский хостинг провайдер в Эстонии — https://iphoster.net/ — дешевые KVM VPS в Польше, Канаде, Франции, Англии и Германии от 2.95$. Дешевый shared хостинг от 1$ с панелями Cpanel, ISPManager, DirectAdmin. https://wiki.iphoster.net/ — статьи на тему хостинга и размещение сайтов. Бесплатная установка openvpn или wireguard. Ищем партнеров за %.
На сайте с 17.09.2012
Offline
149
16 февраля 2021, 05:05
#2
Сервер поддерживает устаревший (менее безопасный) протокол SSL v2.
Почти у всех, на это можно не обращать внимание.
А вот это уже означает что проблема с сертификатом.
Невозможно получить сертификат локального эмитента. Возможно, сертификат сайта или промежуточные сертификаты установлены некоррекно.
Не проще просто переделать сертификат.
На сайте с 26.08.2010
Offline
316
16 февраля 2021, 11:15
#3
SSL Server Test: www.babai.ru (Powered by Qualys SSL Labs)
- www.ssllabs.com
Thawte RSA CA 2018 babai.ru RSA 2048 bits (e 65537) / SHA256withRSA Thawte RSA CA 2018 RSA 2048 bits (e 65537) / SHA256withRSA DigiCert Global Root CA Self-signed Fingerprint SHA256: 4348a0e9444c78cb265e058d5e8944b4d84f9662bd26db257f8934a443c70161 Pin SHA256: r/mIkG3eEpVdm+u/ko/cwxzOMo1bk4TyHIlByibiA5E= RSA 2048 bits (e 65537) / SHA1withRSA…
На сайте с 15.01.2014
Offline
188
16 февраля 2021, 11:31
#4
что мешает поменять сертификат?
Мои сайты ищут дно. Я больше не СЕО гуру… Я ухожу в отставку. Однако, я по прежнему царь вебмастеринга.
Я пытаюсь заставить PHP принять сертификат, который принимает Chrome.
Я создал следующий минимальный пример воспроизведения:
echo OPENSSL_VERSION_TEXT;
require 'vendor/autoload.php';
$fetch = new ParagonIECertaintyRemoteFetch('/tmp/');
$latestBundle = $fetch->getLatestBundle();
$context = stream_context_create(
[
'ssl' => array(
'cafile' => $latestBundle->getFilePath(),
'SNI_enabled' => true,
)
]
);
$url = 'https://example.com:8080/x/y';
echo file_get_contents($url . '?wsdl', false, $context);
Я использую https://github.com/paragonie/certainty для получения последних сертификатов CA.
Я получаю следующую ошибку
OpenSSL 1.0.2g 1 Mar 2016
PHP Warning: file_get_contents():
SSL operation failed with code 1. OpenSSL Error messages:
error:14077438:SSL routines:SSL23_GET_SERVER_HELLO:tlsv1 alert
internal error in /tmp/test/test.php on line 20
PHP Warning: file_get_contents(): Failed to enable crypto in
/tmp/test/test.php on line 20
PHP Warning: file_get_contents(https://example.com:8080/x/y?
wsdl): failed to open stream: operation failed in
/tmp/test/test.php on line 20
Что здесь не так?
К сожалению, я не могу поделиться URL-адресом (в любом случае он находится за брандмауэром).
Доступ к нему с помощью curl —insecure работает, но мне бы очень хотелось правильно проверить сертификат CA.
ИЗМЕНИТЬ SSLyze выводит это:
SCAN RESULTS FOR example.COM:8080 - >
------------------------------------------------------
* TLSV1_1 Cipher Suites:
Forward Secrecy OK - Supported
RC4 OK - Not Supported
Preferred:
TLS_DHE_RSA_WITH_AES_256_CBC_SHA 256 bits
Accepted:
TLS_RSA_WITH_AES_256_CBC_SHA 256 bits
TLS_DH_anon_WITH_AES_256_CBC_SHA ANONYMOUS
TLS_DHE_RSA_WITH_AES_256_CBC_SHA 256 bits
Undefined - An unexpected error happened:
TLS_DHE_DSS_WITH_AES_256_CBC_SHA OpenSSLError - error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error
* TLSV1 Cipher Suites:
Forward Secrecy OK - Supported
RC4 OK - Not Supported
Preferred:
TLS_DHE_RSA_WITH_AES_256_CBC_SHA 256 bits
Accepted:
TLS_RSA_WITH_AES_256_CBC_SHA 256 bits
TLS_DH_anon_WITH_AES_256_CBC_SHA ANONYMOUS
TLS_DHE_RSA_WITH_AES_256_CBC_SHA 256 bits
Undefined - An unexpected error happened:
TLS_DHE_DSS_WITH_AES_256_CBC_SHA OpenSSLError - error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error
* Deflate Compression:
OK - Compression disabled
* Certificate Information:
Content
SHA1 Fingerprint: c2b3ce5b0905caa2ec5998aacf074f99cffb0207
Common Name: example.com
Issuer: Thawte TLS RSA CA G1
Serial Number: 10361996092389695445524615643169842847
Not Before: 2018-12-05 00:00:00
Not After: 2020-12-04 12:00:00
Signature Algorithm: sha256
Public Key Algorithm: RSA
Key Size: 2048
Exponent: 65537 (0x10001)
DNS Subject Alternative Names: ['example.com']
Trust
Hostname Validation: OK - Certificate matches example.com
Android CA Store (9.0.0_r3): FAILED - Certificate is NOT Trusted: unable to get local issuer certificate
iOS CA Store (11): FAILED - Certificate is NOT Trusted: unable to get local issuer certificate
Java CA Store (jre-10.0.2): FAILED - Certificate is NOT Trusted: unable to get local issuer certificate
macOS CA Store (High Sierra): FAILED - Certificate is NOT Trusted: unable to get local issuer certificate
Mozilla CA Store (2018-08-23): FAILED - Certificate is NOT Trusted: unable to get local issuer certificate
Windows CA Store (2018-08-04): FAILED - Certificate is NOT Trusted: unable to get local issuer certificate
Symantec 2018 Deprecation: OK - Not a Symantec-issued certificate
Received Chain: example.com
Verified Chain: ERROR - Could not build verified chain (certificate untrusted?)
Received Chain Contains Anchor: ERROR - Could not build verified chain (certificate untrusted?)
Received Chain Order: OK - Order is valid
Verified Chain contains SHA1: ERROR - Could not build verified chain (certificate untrusted?)
Extensions
OCSP Must-Staple: NOT SUPPORTED - Extension not found
Certificate Transparency: OK - 3 SCTs included
OCSP Stapling
NOT SUPPORTED - Server did not send back an OCSP response
* OpenSSL CCS Injection:
OK - Not vulnerable to OpenSSL CCS injection
* SSLV3 Cipher Suites:
Server rejected all cipher suites.
* SSLV2 Cipher Suites:
Server rejected all cipher suites.
* Resumption Support:
With Session IDs: OK - Supported (5 successful, 0 failed, 0 errors, 5 total attempts).
With TLS Tickets: NOT SUPPORTED - TLS ticket not assigned.
* Downgrade Attacks:
TLS_FALLBACK_SCSV: VULNERABLE - Signaling cipher suite not supported
* TLSV1_3 Cipher Suites:
Server rejected all cipher suites.
* OpenSSL Heartbleed:
OK - Not vulnerable to Heartbleed
* TLSV1_2 Cipher Suites:
Forward Secrecy OK - Supported
RC4 OK - Not Supported
Preferred:
TLS_RSA_WITH_AES_256_CBC_SHA 256 bits
Accepted:
TLS_RSA_WITH_AES_256_CBC_SHA 256 bits
TLS_DH_anon_WITH_AES_256_CBC_SHA ANONYMOUS
TLS_DHE_RSA_WITH_AES_256_CBC_SHA 256 bits
Undefined - An unexpected error happened:
TLS_DHE_DSS_WITH_AES_256_CBC_SHA OpenSSLError - error:14094438:SSL routines:ssl3_read_bytes:tlsv1 alert internal error
* Session Renegotiation:
Client-initiated Renegotiation: VULNERABLE - Server honors client-initiated renegotiations
Secure Renegotiation: OK - Supported
* ROBOT Attack:
OK - Not vulnerable
SCAN COMPLETED IN 9.31 S
1 ответ
Внутренняя ошибка устраняется следующим образом:
$context = stream_context_create(
[
'ssl' => array(
'cafile' => $latestBundle->getFilePath(),
'SNI_enabled' => true,
'ciphers' => 'HIGH:TLSv1.2:TLSv1.1:TLSv1.0:SSLv3:SSLv2',
'verify_peer' => false,
'verify_peer_name' => false,
'crypto_disable_compression' => true,
'method' => STREAM_CRYPTO_METHOD_TLSv1_2_CLIENT,
'verify_depth' => 10,
)
]
);
Но все же я не могу проверить сертификат CA.
В Chrome работает нормально.
Это связано с тем, что Chrome использует некоторые обходные пути, см. https://security.stackexchange.com/questions/199963/certificate-works-in-chrome-firefox-but-not-with-curl-unable-to-get-local-is
Поэтому я должен ждать, пока цепочка не будет правильно настроена.
0
Alex
18 Дек 2018 в 13:36
Вы, похоже, правы в своих подозрениях: согласно сообщению об ошибке, ваш прокси-сертификат использует алгоритм подписи SHA-1, который имеет серьезный известный недостаток. Время действия не является проблемой; плохой алгоритм есть.
Процесс отказа от алгоритма SHA-1 начался несколько лет назад: с Chrome он начался в 2014 году, поскольку начал отмечать сертификаты конечных объектов, которые использовали SHA-1 и которые действовали после 1 января 2017 года, как «безопасные, но с незначительными ошибки». По прошествии времени и обнаружении новых способов использования уязвимости пометка была расширена пошагово для всех некорневых сертификатов SHA-1 и стала более строгой: теперь любой современный веб-браузер помечает сайт как Сертификат SHA-1 в любом месте своей цепочки сертификатов однозначно плох.
Органы по сертификации, соответствующие базовым требованиям CAB/F, прекратили выпуск любых новых сертификатов SHA-1 в начале 2016 года.
Microsoft также прошла процедуру устаревания сертификатов SHA-1 в 2017 году.
Если ваш брандмауэр / прокси-сервер по-прежнему использует сертификат с алгоритмом подписи SHA-1, похоже, вы какое-то время спали за рулем. Это стало очевидным только сейчас, вероятно, из-за недавнего обновления для системы безопасности, которое, в конце концов, сделало алгоритм SHA-1 категорически недоверчивым.
Вы должны убедиться, что ваш прокси-сервер может использовать сертификаты с лучшими алгоритмами (если он актуален и может обрабатывать современные TLS на веб-сайтах, возможно, это уже возможно), и создать новый сертификат SSL proxy default authority который использует SHA256 вместо SHA-1. , Вам нужно будет распространить его среди всех клиентов, чей трафик SSL/TLS вы хотите отслеживать. После распространения вы можете переключить свой прокси на использование нового сертификата.
С добавленными скриншотами, похоже, что браузер в основном доволен полученным сертификатом, поскольку в адресной строке есть хороший значок замка. Фактическое сообщение об ошибке отображается вместо содержимого страницы, что заставляет меня думать, что это способ прокси-сервера сообщить об ошибке проверки сертификата в соединении между прокси-сервером и целевым сайтом.
На первом снимке экрана вы просматриваете вне локальной сети, и фактический сертификат сайта можно увидеть. Обратите внимание, что он был недавно обновлен, так как срок его действия начался 15.10.2018. Сертификат CA, используемый для сертификации сайта, — «Thawte RSA CA 2018», поэтому даже сертификату CA не более одного года.
На самом деле вы можете столкнуться с двумя проблемами:
- браузер был недоволен сертификатом прокси-сервера с устаревшим алгоритмом SHA-1, но в настоящее время он все еще считает, что это простительно.
- и прокси был недоволен, потому что у него нет промежуточного сертификата «Thawte RSA CA 2018» или его родителя, сертификата «DigiCert Global Root CA» в его собственном хранилище сертификатов доверенного ЦС, и поэтому он не может проверить недавно обновлен актуальный сертификат.
На момент написания этой статьи соответствующие Thawte CA и промежуточные сертификаты, по-видимому, были доступны здесь.