Requests: La solicitud https GET falla con "error de protocolo de enlace"

Creado en 26 abr. 2014  ·  83Comentarios  ·  Fuente: psf/requests

Relacionado con el #1083, quizás. requests.get() estándar para este sitio/página en particular https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html da como resultado:

>>> import requests
>>> requests.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/api.py", line 55, in get
    return request('get', url, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/api.py", line 44, in request
    return session.request(method=method, url=url, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/adapters.py", line 385, in send
    raise SSLError(e)
requests.exceptions.SSLError: [Errno 1] _ssl.c:504: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

Usando request-toolbelt 's SSLAdapter para probar varias versiones de ssl, todas fallan, al parecer... vea los siguientes rastreos.

TLSv1:

>>> adapter = SSLAdapter('TLSv1')
>>> s = requests.Session()
>>> s.mount('https://', adapter)
>>> s.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 395, in get
    return self.request('GET', url, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/adapters.py", line 385, in send
    raise SSLError(e)
requests.exceptions.SSLError: [Errno 1] _ssl.c:504: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure

SSLv3:

>>> adapter = SSLAdapter('SSLv3')
>>> s = requests.Session()
>>> s.mount('https://', adapter)
>>> s.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 395, in get
    return self.request('GET', url, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/adapters.py", line 385, in send
    raise SSLError(e)
requests.exceptions.SSLError: [Errno 1] _ssl.c:504: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure

SSLv2:

>>> adapter = SSLAdapter('SSLv2')
>>> s = requests.Session()
>>> s.mount('https://', adapter)
>>> s.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 395, in get
    return self.request('GET', url, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/adapters.py", line 378, in send
    raise ConnectionError(e)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='docs.apitools.com', port=443): Max retries exceeded with url: /2014/04/24/a-small-router-for-openresty.html (Caused by <class 'socket.error'>: [Errno 54] Connection reset by peer)

Tenga en cuenta que el último da un error Connection reset by peer , que difiere de los demás, pero estoy bastante seguro de que SSLv2 no es compatible con el servidor de todos modos.

Por diversión, también traté de pasar algunos encabezados más apropiados en la última solicitud:

>>> headers = {
...     'Accept': u"text/html,application/xhtml+xml,application/xml",
...     'User-Agent': u"Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_2) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/34.0.1847.131 Safari/537.36",
...     'Accept-Encoding': u"gzip,deflate",
...     'Accept-Language': u"en-US,en;q=0.8"
... }
>>> adapter = SSLAdapter('SSLv2')
>>> s = requests.Session()
>>> s.mount('https://', adapter)
>>> s.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html', headers=headers)
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 395, in get
    return self.request('GET', url, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/Users/jaddison/.virtualenvs/techtown/lib/python2.7/site-packages/requests/adapters.py", line 378, in send
    raise ConnectionError(e)
requests.exceptions.ConnectionError: HTTPSConnectionPool(host='docs.apitools.com', port=443): Max retries exceeded with url: /2014/04/24/a-small-router-for-openresty.html (Caused by <class 'socket.error'>: [Errno 54] Connection reset by peer)

No hay dados allí tampoco. Así es como se ve la información de conexión HTTPS en Chrome en Mac:

screen shot 2014-04-26 at 10 35 21 am

No estoy seguro, pero algunas búsquedas en Google indican que es probable que sea un problema de la lista de cifrado, que es más urllib3, creo.

Traté de modificar DEFAULT_CIPHER_LIST en pyopenssl , pero comencé a encontrar errores de importación. En este punto, parecía que las cosas simplemente estaban rotas, y todavía no había una forma adecuada de abordar la solución.

Información de versión:
OS X Mavericks
Pitón 2.7.5
OpenSSL 0.9.8y 5 de febrero de 2013 - (desde python -c "import ssl; print ssl.OPENSSL_VERSION" )
solicitudes 2.2.1
solicitudes-cinturón de herramientas 0.2.0
urllib3 1.8

Comentario más útil

Lamentablemente, esto no está relacionado con el problema que identificó y se debe completamente al OpenSSL de mierda con el que OS X se envía de manera predeterminada. La versión 0.9.8y tiene algunos problemas reales con la realización de protocolos de enlace SSL, y algunos servidores no lo toleran bien. Usar Python 3 en mi caja OS X (por lo tanto, usar un OpenSSL más nuevo) revela que no hay problema.

Tienes dos opciones:

  1. Instale OpenSSL desde Homebrew, luego instale una nueva versión de Python 2 desde Homebrew que se vinculará automáticamente con el OpenSSL proporcionado por Homebrew.
  2. Instale OpenSSL desde Homebrew y luego instale PyOpenSSL contra esa nueva versión ejecutando env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install PyOpenSSL .

Todos 83 comentarios

Lamentablemente, esto no está relacionado con el problema que identificó y se debe completamente al OpenSSL de mierda con el que OS X se envía de manera predeterminada. La versión 0.9.8y tiene algunos problemas reales con la realización de protocolos de enlace SSL, y algunos servidores no lo toleran bien. Usar Python 3 en mi caja OS X (por lo tanto, usar un OpenSSL más nuevo) revela que no hay problema.

Tienes dos opciones:

  1. Instale OpenSSL desde Homebrew, luego instale una nueva versión de Python 2 desde Homebrew que se vinculará automáticamente con el OpenSSL proporcionado por Homebrew.
  2. Instale OpenSSL desde Homebrew y luego instale PyOpenSSL contra esa nueva versión ejecutando env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install PyOpenSSL .

Ah, parece que estaba siguiendo una pista falsa en ese momento: de todos modos, no planeo implementar nada en OSX. Parece que trasladaré mis pruebas a una virtualbox de Linux. ¡Disculpas por este problema de largo aliento!

No hay necesidad de disculparse, hacer esa pregunta fue lo correcto: es un conocimiento extrañamente específico saber que OS X tiene este problema. =)

Ok, esto es un fastidio. Creé una imagen de Virtualbox de 32 bits del servidor Ubuntu 14.04 a través de Vagrant y todo esto sigue sucediendo excepto en el caso de SSLv2, donde falla porque el protocolo no está incluido en la versión OpenSSL en Ubuntu 14.04 (por diseño, creo - SSLv2 es antiguo y obsoleta).

Versiones:
Ubuntu 14.04 de 32 bits (a través del combo Vagrant/Virtualbox)
Pitón 2.7.6
solicitudes == 2.2.1
solicitudes-cinturón de herramientas==0.2.0
urllib3==1.8.2

EDITAR: olvidé la versión de OpenSSL...

python -c "importar ssl; imprimir ssl.OPENSSL_VERSION"
OpenSSL 1.0.1f 6 de enero de 2014

TLSv1:

>>> import requests
>>> from requests_toolbelt import SSLAdapter
>>> adapter = SSLAdapter('TLSv1')
>>> s = requests.Session()
>>> s.mount('https://', adapter)
>>> s.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html')
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 395, in get
    return self.request('GET', url, **kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/adapters.py", line 385, in send
    raise SSLError(e)
SSLError: [Errno 1] _ssl.c:510: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure

SSLv2:

>>> import requests
>>> from requests_toolbelt import SSLAdapter
>>> adapter = SSLAdapter('SSLv3')
>>> s = requests.Session()
>>> s.mount('https://', adapter)
>>> s.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html')
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 395, in get
    return self.request('GET', url, **kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/adapters.py", line 385, in send
    raise SSLError(e)
SSLError: [Errno 1] _ssl.c:510: error:14094410:SSL routines:SSL3_READ_BYTES:sslv3 alert handshake failure

SSLv23:

>>> import requests
>>> from requests_toolbelt import SSLAdapter
>>> adapter = SSLAdapter('SSLv23')
>>> s = requests.Session()
>>> s.mount('https://', adapter)
>>> s.get('https://docs.apitools.com/2014/04/24/a-small-router-for-openresty.html')
Traceback (most recent call last):
  File "<console>", line 1, in <module>
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 395, in get
    return self.request('GET', url, **kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 383, in request
    resp = self.send(prep, **send_kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/sessions.py", line 486, in send
    r = adapter.send(request, **kwargs)
  File "/home/vagrant/.virtualenvs/techtown/local/lib/python2.7/site-packages/requests/adapters.py", line 385, in send
    raise SSLError(e)
SSLError: [Errno 1] _ssl.c:510: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure

¿Quizás este es un problema de la lista de cifrado entonces? ¿O la versión de OpenSSL utilizada aquí sigue siendo problemática?

Estoy absolutamente dispuesto a dedicar algo de tiempo para ayudar a depurar esto si es necesario... siempre que me den alguna dirección.

La máquina virtual se está descargando. No puedo reproducir esto en ArchLinux.
Los stacktraces indican esto, pero me gustaría estar seguro: ¿usted _no_ está usando PyOpenSSL sino solo stdlib?

@t-8ch Gracias por echar un vistazo a esto, estoy un poco confundido. OpenSSL me hace la vida muy difícil =(

@ t-8ch No he instalado PyOpenSSL si eso es lo que estás preguntando.

Habría asumido (quizás incorrectamente) que pip install requests debería darme todo lo que necesito para llamar con éxito a requests.get('...') en una página HTTPS. Lo cual, por supuesto, funciona en su mayor parte, solo que no para este sitio por alguna razón.

@jaddison _principalmente_ lo hace. Desafortunadamente, la biblioteca estándar de Python 2.7 apesta y no es compatible con algunas funciones, como SNI.

Me pregunto si esto es SNI...

@jaddison Hay dos rutas de código diferentes detrás de escena. No debería tener que preocuparse por eso, pero es útil saberlo al depurar.

Sin embargo, ahora puedo reproducir esto en ubuntu. Pero solo o Py2. En Py3 todo está bien.
Sospecho que @Lukasa tiene razón y el servidor falla cuando el cliente no usa SNI.

Me molesta que la ausencia de SNI falle de varias maneras diferentes según el servidor en cuestión.

Noté este cambio entre OpenSSL 1.0.1f y 1.0.1g (https://www.openssl.org/news/openssl-1.0.1-notes.html):

Add TLS padding extension workaround for broken servers.

EDITAR: Ahh, no importa: el error no debería variar entre Py 2 y 3, creo.

@jaddison Para probar si se trata de SNI, deberá instalar los requisitos de SNI para Python 2.

@Lukasa tenía razón. Comparar:

$ openssl s_client -connect docs.apitools.com:443                              
CONNECTED(00000003)
139846853338768:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:s23_clnt.c:762:
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 7 bytes and written 517 bytes
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
---

$  openssl s_client -connect docs.apitools.com:443 -servername docs.apitools.com
... happy handshake here

Para elaborar: el segundo comando habilita la funcionalidad SNI de openssl s_client .

Puede a) cambiar a python3 b) instalar dependencias adicionales.
El stdlib no tiene en este momento ninguna forma de hacer SNI.

Gracias por la rápida retroalimentación. Como no hay ningún error, cerraré esto... otra vez.

Hola, gracias chicos!! Instalé python3 en mi mac y boom, funciona.

Solo quiero intervenir y decir que experimenté este problema en OS X 10.9.5, Python 2.7.7 y OpenSSL 0.9.8zc.

Pude solucionar mi problema de apretón de manos:

  1. Instalar un OpenSSL más nuevo que el stock en mi máquina a través brew install OpenSSL
  2. Compilación e instalación del paquete cryptography vinculado al nuevo OpenSSL ( env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install cryptography )
  3. Instalar solicitudes con soporte SNI haciendo pip install requests[security]

Gracias, @Microservidor. Prácticamente estoy ejecutando las mismas especificaciones (10.9.5, Python 2.7.6 instalado a través de Homebrew pero compilado con OpenSSL 0.9.8zg proporcionado por el sistema) y este fue todo mi proceso para poner en marcha requests para Django :

brew install openssl

Instale requests con un montón de cosas de SNI , compiladas contra nuestra nueva instalación de OpenSSL. La opción [security] simplemente instala pyopenssl ndg-httpsclient pyasn1

env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install requests[security] urllib3

Y estamos listos para irnos:

"""
This may or may not be needed. See:
https://urllib3.readthedocs.org/en/latest/security.html#openssl-pyopenssl
"""
# from urllib3.contrib import pyopenssl
# pyopenssl.inject_into_urllib3()

import requests
# r = requests.get(...)

¿Hay una respuesta definitiva sobre cómo hacer que esto funcione en ubuntu? Me encuentro con este problema, y ​​parece que la única respuesta aquí se refiere a cómo hacer que esto funcione en una Mac. Actualizar todo nuestro código base a Python 3 no es una opción.

OK, puede que haya respondido mi propia pregunta. Lo que hice se reduce a:

sudo apt-get install libffi-dev
pip install pyOpenSSL ndg-httpsclient pyasn1

@lsemel gracias, eso me ahorró un montón de tiempo

@lsemel ¿Estás seguro? Lo probé en Ubuntu 15.10 y todavía no funciona con Python 2.7.10.

Funciona con Python 2.7 en Travis CI:
https://travis-ci.org/playing-se/swish-python

¡Lo tengo para trabajar ahora! Simplemente desinstalé pyOpenSSL:
pip uninstall pyOpenSSL

¿Quizás solo deberíamos pyopenssl.inject_into_urllib3() si la versión de Python es inferior a 2.7.9? pyOpenSSL parece romper cosas en Ubuntu y Windows si la versión de Python es 2.7.10.

PyOpenSSL no debería estar rompiendo nada. Si lo hace, es un error que debe informarse.

Tendré que investigar esto, pero ¿hay alguna buena razón para inyectar pyopenssl en urllib3 si la versión de Python es 2.7.9 o posterior?

Estoy pensando en algo como esto:

# Check if Modern SSL with SNI support
try:
    from ssl import SSLContext
    from ssl import HAS_SNI
except ImportError:
    # Attempt to enable urllib3's SNI support, if possible
    try:
        from .packages.urllib3.contrib import pyopenssl
        pyopenssl.inject_into_urllib3()
    except ImportError:
        pass

Sí, con frecuencia lo hay. Por ejemplo, en OS X, la mayoría de los Python se vinculan con el sistema OpenSSL, que es la versión 0.9.8zg. PyOpenSSL, sin embargo, se vinculará con un OpenSSL mucho más nuevo (1.0.2). Eso hace que el uso de PyOpenSSL sea una mejora sustancial de la seguridad.

Además, PyOpenSSL nos brinda un acceso mucho mejor a OpenSSL, lo que nos permite asegurarlo de manera más efectiva.

OK, he jugado un poco con esto ahora.

FUNCIONA con pyopenssl PERO no si ndg-httpsclient está instalado.

Sin embargo, puedo hacer que funcione con ndg-httpsclient si desinstalo pyasn1 y me da estas advertencias:

/usr/lib/python2.7/dist-packages/ndg/httpsclient/subj_alt_name.py:22: UserWarning: Error importing pyasn1, subjectAltName check for SSL peer verification will be disabled.  Import error is: No module named pyasn1.type
  warnings.warn(import_error_msg)
/usr/lib/python2.7/dist-packages/ndg/httpsclient/ssl_peer_verification.py:25: UserWarning: SubjectAltName support is disabled - check pyasn1 package installation to enable
  warnings.warn(SUBJ_ALT_NAME_SUPPORT_MSG)
/usr/lib/python2.7/dist-packages/ndg/httpsclient/subj_alt_name.py:22: UserWarning: Error importing pyasn1, subjectAltName check for SSL peer verification will be disabled.  Import error is: No module named pyasn1.type
  warnings.warn(import_error_msg)

Mismo comportamiento en Ubuntu 15.10 y Windows 10 con Python 2.7.10 instalado.

Esto se debe a que sin ndg-httpsclient no se utiliza la compatibilidad con PyOpenSSL.

Sí, tendré que investigar por qué funciona si SubjectAltName está deshabilitado. ¿Alguna idea?

Es casi seguro que el problema es que está utilizando diferentes OpenSSL en cada caso.

Tuve el mismo problema en mi caja Ubuntu 14.04 y Python 2.7.11

es del SNI

Lo que funcionó para mí fue esto:

  • solicitudes de desinstalación
  • desinstalar urllib3
  • instalar las diversas dependencias criptográficas
  • instalar urllib3
  • instale urllib3[secure] # solo para estar seguro
  • solicitudes de instalación

Creo que hubo una verificación en el momento de la instalación en urllib3 o solicitudes que impidieron que las cosas funcionaran sin la desinstalación.

@jvanasco , ¿qué estás usando para instalar esos paquetes? Supongo que pip. ¿Por qué está instalando urllib3 y las solicitudes por separado?

Bueno, necesitaba urllib3 en virtualenv... pero lo instalé para intentar que pip y easy_install instalaran los requisitos. (Usé ambos)

Tengo un indexador web y algunas URL se rompieron. Escribí un script rápido para probar los dañados y seguí reinstalando/eliminando+instalando los paquetes en las instrucciones de urllib3 sobre problemas de SSL hasta que funcionaron.

El 31 de mayo de 2016, a las 7:25 p. m., Ian Cordasco [email protected] escribió:

@jvanasco , ¿qué estás usando para instalar esos paquetes? Supongo que pip. ¿Por qué está instalando urllib3 y las solicitudes por separado?


Estás recibiendo esto porque te mencionaron.
Responda a este correo electrónico directamente, véalo en GitHub o silencie el hilo.

Sigo viendo este problema y probé las soluciones sugeridas.
Actualicé mi versión de python a 2.7.11
Instalé los 3 paquetes adicionales.

Probé la secuencia de desinstalación/instalación sugerida por @jvanasco y aún obtuve el SSLError
También usando Ubuntu 14.04, lamentablemente no hay una actualización de OpenSSL, así que tengo que usar las soluciones publicadas aquí y no tengo suerte.

¿Algún paso extra que ustedes posiblemente tomaron?

Gracias

@Lekinho Descubrí que hacer un breve script de prueba que probara el dominio con el que estaba teniendo problemas ayudó.

fue solo:

 import requests
 r = requests.get(bad_url)
 print r.__dict__

@Lekinho Puede extraer pyopenssl de las solicitudes en su código:

try:
    from requests.packages.urllib3.contrib import pyopenssl
    pyopenssl.extract_from_urllib3()
except ImportError:
    pass

@Lekinho Si todavía tiene este problema con Python 2.7.11, es muy probable que el servidor remoto no admita la configuración de TLS que utilizan las solicitudes. ¿El servidor en cuestión está disponible en la Internet pública? Si es así, ¿puede proporcionarme la URL?

Probé la importación de pyopenssl como se sugiere.
Desafortunadamente, esto no es accesible públicamente.
Sin embargo, tengo los detalles exactos de qué versión de openSSL tiene el servidor.
Básicamente, nos ejecutamos en una máquina virtual redhat, tenía este openSSL cuando todo funcionaba: openssl-1.0.1e-42.el6_7.4.x86_64

Luego hicimos una actualización de redhat y hubo una actualización para openssl: openssl-1.0.1e-48.el6_8.1.x86_64

Esta versión siempre tiene el problema del protocolo de enlace incorrecto cuando se usa openssl en ubuntu 14.04.

¿Tienen alguna URL pública con la que pueda probar, para ver si las soluciones alternativas ayudaron a resolver el problema y es solo esta combinación única que tengo ese es el problema?

La misma máquina está bien cuando las solicitudes REST se envían a través del navegador (es decir, sin ubuntu openssl)

Gracias

¿Puede proporcionar la salida de rpm -q --changelog openssl , por favor?

[ admin@leke-2-2-8-11 ~]$ rpm -q --changelog abre SSL

  • lun 02 de mayo de 2016 Tomáš Mráz [email protected] 1.0.1e-48.1
  • corregir CVE-2016-2105: posible desbordamiento en la codificación base64
  • corregir CVE-2016-2106 - posible desbordamiento en EVP_EncryptUpdate()
  • corregir CVE-2016-2107 - oráculo de relleno en AES-NI CBC-MAC cosido
  • corregir CVE-2016-2108: corrupción de memoria en el codificador ASN.1
  • corrige CVE-2016-2109: posible DoS al leer datos ASN.1 de BIO
  • corregir CVE-2016-0799 - problemas de memoria en BIO_printf
  • mié 24 de febrero de 2016 Tomáš Mráz [email protected] 1.0.1e-48
  • corrige CVE-2016-0702: ataque de canal lateral en exponenciación modular
  • corrige CVE-2016-0705 - doble libre en análisis de clave privada DSA
  • corregir CVE-2016-0797: corrupción de montón en BN_hex2bn y BN_dec2bn
  • martes, 16 de febrero de 2016 Tomáš Mráz [email protected] 1.0.1e-47
  • corregir CVE-2015-3197: aplicación de conjunto de cifrado SSLv2
  • deshabilite SSLv2 en el método TLS genérico
  • Vie 15 de enero de 2016 Tomáš Mráz [email protected] 1.0.1e-46
  • corrige la pérdida de memoria de 1 byte en el análisis de pkcs12 (# 1229871)
  • documentar algunas opciones del comando de velocidad (#1197095)
  • jue 14 ene 2016 Tomáš Mráz [email protected] 1.0.1e-45
  • corregir marcas de tiempo de alta precisión en la autoridad de sellado de tiempo
  • lun 21 dic 2015 Tomáš Mráz [email protected] 1.0.1e-44
  • corregir CVE-2015-7575: no permitir el uso de MD5 en TLS1.2
  • vie 04 dic 2015 Tomáš Mráz [email protected] 1.0.1e-43
  • corrección CVE-2015-3194: falla de verificación de certificado con parámetro PSS faltante
  • corregir CVE-2015-3195 - Pérdida de memoria X509_ATTRIBUTE
  • corrige CVE-2015-3196: condición de carrera al manejar la sugerencia de identidad de PSK
  • martes, 23 de junio de 2015 Tomáš Mráz [email protected] 1.0.1e-42
  • corrige la regresión causada por un error en la corrección de CVE-2015-1791
  • jue 11 de junio de 2015 Tomáš Mráz [email protected] 1.0.1e-41
  • arreglo mejorado para CVE-2015-1791
  • agregue las partes faltantes de CVE-2015-0209 para corregir la corrección aunque no se puede explotar
  • mar 09 jun 2015 Tomáš Mráz [email protected] 1.0.1e-40
  • corregir CVE-2014-8176 - libre no válido en el código de almacenamiento en búfer DTLS
  • corregir CVE-2015-1789: lectura fuera de los límites en X509_cmp_time
  • corregir CVE-2015-1790: bloqueo de PKCS7 con contenido cifrado faltante
  • corrige CVE-2015-1791 - manejo de condiciones de carrera NewSessionTicket
  • corrige CVE-2015-1792: CMS verifica el bucle infinito con una función hash desconocida
  • mar 02 jun 2015 Tomáš Mráz [email protected] 1.0.1e-39
  • corrige CVE-2015-3216: regresión en el bloqueo RAND que puede causar fallas de segmento en
    leer en aplicaciones multiproceso
  • Lun 25 de mayo de 2015 Tomáš Mráz [email protected] 1.0.1e-38
  • corregir CVE-2015-4000 - evitar el ataque de atasco en el cliente - restringir
    el tamaño de la clave DH a al menos 768 bits (el límite se incrementará en el futuro)
  • mié 25 mar 2015 Tomáš Mráz [email protected] 1.0.1e-37
  • elimine la restricción AES-GCM de 2 ^ 32 operaciones porque el IV es
    siempre 96 bits (campo fijo de 32 bits + campo de invocación de 64 bits)
  • jue 19 mar 2015 Tomáš Mráz [email protected] 1.0.1e-36
  • corrección de actualización para CVE-2015-0287 a lo que se lanzó aguas arriba
  • mié 18 mar 2015 Tomáš Mráz [email protected] 1.0.1e-35
  • corregir CVE-2015-0209: uso potencial después de gratis en d2i_ECPrivateKey()
  • corrección CVE-2015-0286: manejo incorrecto de la comparación booleana ASN.1
  • corregir CVE-2015-0287 - Corrupción de memoria de descodificación de reutilización de estructura ASN.1
  • corregir CVE-2015-0288 - X509_to_X509_REQ Falta de referencia de puntero NULL
  • corrige CVE-2015-0289 - Desreferencia NULL decodificando datos PKCS#7 no válidos
  • corregir CVE-2015-0292: subdesbordamiento de enteros en el decodificador base64
  • corregir CVE-2015-0293 - afirmación activable en el servidor SSLv2
  • mar 03 mar 2015 Tomáš Mráz [email protected] 1.0.1e-34
  • copiar el algoritmo de resumen al manejar el cambio de contexto SNI
  • mejorar la documentación de ciphersuites - parche de Hubert Kario
  • agregue soporte para configurar el servicio Kerberos y la tabla de claves en
    s_servidor y s_cliente
  • martes, 13 de enero de 2015 Tomáš Mráz [email protected] 1.0.1e-33
  • corregir CVE-2014-3570: cálculo incorrecto en BN_sqr()
  • corregir CVE-2014-3571 - posible bloqueo en dtls1_get_record()
  • corrección CVE-2014-3572: posible degradación del conjunto de cifrado ECDH a un estado no PFS
  • corregir CVE-2014-8275: varios problemas de huellas dactilares de certificados
  • corrige CVE-2015-0204: elimina la compatibilidad con claves efímeras RSA para no exportar
    suites de cifrado y en el servidor
  • corregir CVE-2015-0205: no permitir el certificado DH de cliente no autenticado
  • corrige CVE-2015-0206: posible pérdida de memoria al almacenar en búfer registros DTLS
  • jue 16 oct 2014 Tomáš Mráz [email protected] 1.0.1e-32
  • utilice el método aprobado por FIPS para el cálculo de d en RSA
  • mié 15 oct 2014 Tomáš Mráz [email protected] 1.0.1e-31
  • corrige CVE-2014-3567: pérdida de memoria al manejar tickets de sesión
  • corregir CVE-2014-3513 - pérdida de memoria en soporte srtp
  • agregue soporte para SCSV alternativo para mitigar parcialmente CVE-2014-3566
    (ataque de relleno en SSL3)
  • viernes, 15 de agosto de 2014 Tomáš Mráz [email protected] 1.0.1e-30
  • agregar extensiones ECC TLS a DTLS (#1119800)
  • vie 08 ago 2014 Tomáš Mráz [email protected] 1.0.1e-29
  • corregir CVE-2014-3505 - doublefree en el procesamiento de paquetes DTLS
  • corregir CVE-2014-3506: evitar el agotamiento de la memoria en DTLS
  • corregir CVE-2014-3507: evitar la pérdida de memoria en DTLS
  • corrige CVE-2014-3508: corrige el manejo de OID para evitar la fuga de información
  • corrige CVE-2014-3509: corrige la condición de carrera al analizar el servidor hello
  • corregir CVE-2014-3510 - corregir DoS en el manejo anónimo (EC)DH en DTLS
  • corregir CVE-2014-3511: no permitir la degradación del protocolo a través de la fragmentación
  • lun 16 de junio de 2014 Tomáš Mráz [email protected] 1.0.1e-28
  • corrija la corrección de CVE-2014-0224 que rompió el soporte de reanudación de la sesión EAP-FAST
  • Vie Jun 06 2014 Tomáš Mráz [email protected] 1.0.1e-26
  • elimine EXPORT, RC2 y DES de la lista de cifrado predeterminado (# 1057520)
  • imprimir el tamaño de la clave efímera negociado en el protocolo de enlace TLS (#1057715)
  • no incluya conjuntos de cifrado ECC en el saludo del cliente SSLv2 (n.º 1090952)
  • detectar correctamente la falla de cifrado en BIO (#1100819)
  • falla en la verificación de integridad hmac si el archivo .hmac está vacío (# 1105567)
  • Modo FIPS: haga las limitaciones en DSA, DH y RSA keygen
    longitud aplicada solo si hay un entorno OPENSSL_ENFORCE_MODULUS_BITS
    se establece la variable
  • lun 02 jun 2014 Tomáš Mráz [email protected] 1.0.1e-25
  • corrige CVE-2010-5298 - posible uso de memoria después de liberar
  • corrige CVE-2014-0195: desbordamiento de búfer a través de un fragmento DTLS no válido
  • corregir CVE-2014-0198 - posible desreferencia de puntero NULL
  • corrección CVE-2014-0221: DoS del paquete de protocolo de enlace DTLS no válido
  • corregir CVE-2014-0224 - Vulnerabilidad SSL/TLS MITM
  • corrige CVE-2014-3470 - DoS del lado del cliente cuando se usa ECDH anónimo
  • jue 22 de mayo de 2014 Tomáš Mráz [email protected] 1.0.1e-24
  • agregar soporte posterior para la curva EC secp521r1
  • lun 07 abr 2014 Tomáš Mráz [email protected] 1.0.1e-23
  • corregir CVE-2014-0160: divulgación de información en la extensión de latido TLS
  • lun 17 mar 2014 Tomáš Mráz [email protected] 1.0.1e-22
  • use la clave RSA de 2048 bits en las autocomprobaciones de FIPS
  • mié 19 de febrero de 2014 Tomáš Mráz [email protected] 1.0.1e-21
  • agregue DH_compute_key_padded necesario para las pruebas FIPS CAVS
  • hacer que la fuerza de 3des sea de 128 bits en lugar de 168 (#1056616)
  • Modo FIPS: no genera claves DSA y parámetros DH < 2048 bits
  • Modo FIPS: use keygen RSA aprobado (solo permite claves de 2048 y 3072 bits)
  • Modo FIPS: agregar autocomprobación DH
  • Modo FIPS: reinicie DRBG correctamente en RAND_add()
  • Modo FIPS: agregar autocomprobación de cifrado/descifrado RSA
  • Modo FIPS: agregue un límite estricto para 2^32 cifrados de bloque GCM con la misma clave
  • use la longitud de clave del archivo de configuración si se invoca req -newkey rsa
  • martes, 07 de enero de 2014 Tomáš Mráz [email protected] 1.0.1e-20
  • corrección CVE-2013-4353: bloqueo de protocolo de enlace TLS no válido
  • lun 06 ene 2014 Tomáš Mráz [email protected] 1.0.1e-19
  • corrige CVE-2013-6450 - posible ataque MiTM en DTLS1
  • vie 20 dic 2013 Tomáš Mráz [email protected] 1.0.1e-18
  • corrige CVE-2013-6449: falla cuando la versión en la estructura SSL es incorrecta
  • jue 12 dic 2013 Tomáš Mráz [email protected] 1.0.1e-17
  • volver a agregar algunos símbolos no operativos que se eliminaron inadvertidamente
  • jue 31 oct 2013 Tomáš Mráz [email protected] 1.0.1e-16
  • no anuncie las curvas ECC que no admitimos
  • corregir la identificación de la CPU en las CPU Cyrix
  • Vie 27 de septiembre de 2013 Tomáš Mráz [email protected] 1.0.1e-15
  • hacer que DTLS1 funcione en modo FIPS
  • evite RSA y DSA de 512 bits y Whirlpool en 'velocidad openssl' en modo FIPS
  • jue 26 sep 2013 Tomáš Mráz [email protected] 1.0.1e-14
  • instalación de dracut-fips marca que el módulo FIPS está instalado
  • lun 23 sep 2013 Tomáš Mráz [email protected] 1.0.1e-13
  • evitar la caída de libssl.so de libcrypto
  • Vie 20 de septiembre de 2013 Tomáš Mráz [email protected] 1.0.1e-12
  • corrige una pequeña fuga de memoria en la autoprueba de FIPS aes
  • arreglar segfault en la velocidad hmac de openssl en el modo FIPS
  • jue 12 sep 2013 Tomáš Mráz [email protected] 1.0.1e-11
  • documentar la opción nextprotoneg en las páginas del manual
    parche original de Hubert Kario
  • jue 29 ago 2013 Tomas Mraz [email protected] 1.0.1e-9
  • siempre realice las autopruebas de FIPS en el constructor de la biblioteca
    si el módulo FIPS está instalado
  • Vie Ago 16 2013 Tomas Mraz [email protected] 1.0.1e-8
  • corregir el uso de rdrand si está disponible
  • más confirmaciones seleccionadas cuidadosamente de upstream
  • correcciones de documentación
  • Vie Jul 26 2013 Tomas Mraz [email protected] 1.0.1e-7
  • corrección adicional de la página del manual
  • use el control de versiones de símbolos también para la versión textual
  • jue 25 de julio de 2013 Tomas Mraz [email protected] 1.0.1e-6
  • correcciones adicionales de la página del manual
  • salida de comando de velocidad de limpieza para ECDH ECDSA
  • Vie Jul 19 2013 Tomas Mraz [email protected] 1.0.1e-5
  • use la macro _prefijo
  • mié 10 de julio de 2013 Tomas Mraz [email protected] 1.0.1e-4
  • agregar indicador de enlace relro
  • mié 10 de julio de 2013 Tomas Mraz [email protected] 1.0.1e-2
  • agregue soporte para la opción -trusted_first para la verificación de la cadena de certificados
  • Vie 31 de mayo de 2013 Tomas Mraz [email protected] 1.0.1e-1
  • rebase a la versión anterior 1.0.1e
  • lun 25 de febrero de 2013 Tomas Mraz [email protected] 1.0.0-28
  • arreglo para CVE-2013-0169 - Ataque de sincronización SSL/TLS CBC (#907589)
  • corrección para CVE-2013-0166 - DoS en la verificación de firmas OCSP (# 908052)
  • habilitar la compresión solo si se solicita explícitamente o OPENSSL_DEFAULT_ZLIB
    se establece la variable de entorno (corrige CVE-2012-4929 #857051)
  • use __secure_getenv() en todas partes en lugar de getenv() (#839735)
  • viernes, 12 de octubre de 2012 Tomas Mraz [email protected] 1.0.0-27
  • corrige la referencia de sslrand(1) y sslpasswd(1) en la página de manual de openssl(1) (#841645)
  • suelte la corrección superflua de lib64 en los archivos pkgconfig .pc (#770872)
  • forzar BIO_accept_new(*:) para escuchar en IPv4
  • miércoles, 15 de agosto de 2012 Tomas Mraz [email protected] 1.0.0-26
  • use PKCS#8 al escribir claves privadas en modo FIPS como el antiguo
    El modo de cifrado PEM no es compatible con FIPS (#812348)
  • martes 15 de mayo de 2012 Tomas Mraz [email protected] 1.0.0-25
  • Corrección para CVE-2012-2333: verificación incorrecta de la longitud del registro en DTLS (# 820686)
  • inicialice correctamente tkeylen en la solución CVE-2012-0884
  • jue 19 abr 2012 Tomas Mraz [email protected] 1.0.0-24
  • arreglo para CVE-2012-2110 - corrupción de memoria en asn1_d2i_read_bio() (#814185)
  • lun 19 mar 2012 Tomas Mraz [email protected] 1.0.0-23
  • solucione el problema con el parche de reinicio de SGC que podría terminar el protocolo de enlace
    incorrectamente
  • arreglo para CVE-2012-0884 - Debilidad de MMA en CMS y código PKCS#7 (#802725)
  • arreglo para CVE-2012-1165 - Falta de referencia de lectura NULL en encabezados MIME incorrectos (# 802489)
  • jue mar 01 2012 Tomas Mraz [email protected] 1.0.0-22
  • corrija el cifrado incorrecto de fragmentos no alineados en los modos CFB, OFB y CTR
  • jue 19 ene 2012 Tomas Mraz [email protected] 1.0.0-21
  • corrección para CVE-2011-4108 y CVE-2012-0050 - Recuperación de texto sin formato DTLS
    vulnerabilidad y correcciones adicionales de DTLS (#771770)
  • arreglo para CVE-2011-4576 - relleno SSL 3.0 no inicializado (#771775)
  • arreglo para CVE-2011-4577 - posible DoS a través de datos RFC 3779 malformados (#771778)
  • arreglo para CVE-2011-4619 - SGC reinicia ataque DoS (#771780)
  • lun 31 oct 2011 Tomas Mraz [email protected] 1.0.0-20
  • corregir x86cpuid.pl - parche de Paolo Bonzini
  • jue 29 sep 2011 Tomas Mraz [email protected] 1.0.0-19
  • agregar prueba de respuesta conocida para algoritmos SHA2
  • mié 21 de septiembre de 2011 Tomas Mraz [email protected] 1.0.0-18
  • corrige la falta de inicialización de una variable en el motor CHIL (#740188)
  • lun 12 sep 2011 Tomas Mraz [email protected] 1.0.0-17
  • inicialice X509_STORE_CTX correctamente para búsquedas CRL - CVE-2011-3207
    (#736087)
  • miércoles, 24 de agosto de 2011 Tomas Mraz [email protected] 1.0.0-16
  • combine las optimizaciones para AES-NI, SHA1 y RC4 de intelx
    motor a las implementaciones internas
  • lun 15 ago 2011 Tomas Mraz [email protected] 1.0.0-15
  • mejor documentación de los resúmenes disponibles en las aplicaciones (#693858)
  • Correcciones del motor CHIL respaldado (#693863)
  • permitir compilación de pruebas sin parches posteriores (#708511)
  • habilitar RELRO parcial al vincular (#723994)
  • agregue el motor intelx con un rendimiento mejorado en las nuevas CPU Intel
  • agregue la variable de entorno OPENSSL_DISABLE_AES_NI que deshabilita
    el soporte AES-NI (no afecta el motor intelx)
  • mié 08 de junio de 2011 Tomas Mraz [email protected] 1.0.0-14
  • usar el motor AES-NI en el modo FIPS
  • martes 24 de mayo de 2011 Tomas Mraz [email protected] 1.0.0-11
  • agregue la API necesaria para las pruebas CAVS de la nueva generación de parámetros DSA
  • jue 10 de febrero de 2011 Tomas Mraz [email protected] 1.0.0-10
  • corrige la vulnerabilidad de grapado OCSP - CVE-2011-0014 (#676063)
  • corregir el documento README.FIPS
  • Vie 04 de febrero de 2011 Tomas Mraz [email protected] 1.0.0-8
  • agregue el parámetro -x931 al comando openssl genrsa para usar el ANSI X9.31
    método de generación de claves
  • use el método FIPS-186-3 para la generación de parámetros DSA
  • agregue la variable de entorno OPENSSL_FIPS_NON_APPROVED_MD5_ALLOW
    para permitir el uso de MD5 cuando el sistema está en estado de mantenimiento
    incluso si el indicador /proc fips está activado
  • hacer que el comando openssl pkcs12 funcione de forma predeterminada en el modo FIPS
  • lun 24 ene 2011 Tomas Mraz [email protected] 1.0.0-7
  • escuche en ipv6 comodín en s_server para que aceptemos conexiones
    desde ipv4 e ipv6 (#601612)
  • corrige el comando de velocidad de openssl para que pueda usarse en el modo FIPS
    con cifrados permitidos por FIPS (#619762)
  • mar 07 dic 2010 Tomas Mraz [email protected] 1.0.0-6
  • deshabilitar código para SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG - CVE-2010-3864
    (#649304)
  • Vie 05 de noviembre de 2010 Tomas Mraz [email protected] 1.0.0-5
  • corrige carrera en código de análisis de extensión - CVE-2010-3864 (#649304)
  • miércoles, 30 de junio de 2010 Tomas Mraz [email protected] 1.0.0-4
  • Corrección de la página de manual de openssl (# 609484)
  • Vie Jun 04 2010 Tomas Mraz [email protected] 1.0.0-3
  • corrige la definición ASN.1 incorrecta de OriginatorInfo - CVE-2010-0742 (#598738)
  • corrige la fuga de información en rsa_verify_recover - CVE-2010-1633 (#598732)
  • miércoles 19 de mayo de 2010 Tomas Mraz [email protected] 1.0.0-2
  • hacer que el directorio de CA sea legible: las claves privadas están en el subdirectorio privado (# 584810)
  • algunas correcciones de CVS ascendente
  • hacer que X509_NAME_hash_old funcione en modo FIPS (#568395)
  • mar 30 mar 2010 Tomas Mraz [email protected] 1.0.0-1
  • actualizar a la versión final 1.0.0 upstream
  • Martes 16 de febrero de 2010 Tomas Mraz [email protected] 1.0.0-0.22.beta5
  • hacer que TLS funcione en el modo FIPS
  • Vie 12 de febrero de 2010 Tomas Mraz [email protected] 1.0.0-0.21.beta5
  • manejar con gracia la longitud cero en las implementaciones del ensamblador de
    OPENSSL_cleanse (#564029)
  • no falle en s_server si el nombre de host del cliente no se puede resolver (#561260)
  • miércoles, 20 de enero de 2010 Tomas Mraz [email protected] 1.0.0-0.20.beta5
  • nueva versión ascendente
  • Jue 14 de enero de 2010 Tomas Mraz [email protected] 1.0.0-0.19.beta4
  • corregir CVE-2009-4355: fuga en aplicaciones que llaman incorrectamente
    CRYPTO_free_all_ex_data() antes de salir de la aplicación (#546707)
  • corrección ascendente para el manejo futuro de la versión del protocolo TLS
  • miércoles, 13 de enero de 2010 Tomas Mraz [email protected] 1.0.0-0.18.beta4
  • agregar soporte para Intel AES-NI
  • jue 07 ene 2010 Tomas Mraz [email protected] 1.0.0-0.17.beta4
  • Manejo de compresión de corrección ascendente en la reanudación de la sesión
  • varias comprobaciones nulas y otras pequeñas correcciones de upstream
  • cambios anteriores para la información de renegociación de acuerdo con el último borrador
  • lun 23 de noviembre de 2009 Tomas Mraz [email protected] 1.0.0-0.16.beta4
  • corrige la compilación mingw que no es fips (parche de Kalev Lember)
  • agregue la corrección de IPV6 para DTLS
  • Vie 20 de noviembre de 2009 Tomas Mraz [email protected] 1.0.0-0.15.beta4
  • agregue mejores informes de errores para la renegociación insegura
  • Vie 20 de noviembre de 2009 Tomas Mraz [email protected] 1.0.0-0.14.beta4
  • corregir compilación en s390x
  • miércoles, 18 de noviembre de 2009 Tomas Mraz [email protected] 1.0.0-0.13.beta4
  • deshabilite la aplicación de la extensión de renegociación en el cliente (#537962)
  • agregue correcciones de la instantánea ascendente actual
  • Vie 13 de noviembre de 2009 Tomas Mraz [email protected] 1.0.0-0.12.beta4
  • mantenga el estado beta en el número de versión en 3 para que no tengamos que reconstruir
    openssh y posiblemente otras dependencias con una verificación de versión demasiado estricta
  • jue 12 de noviembre de 2009 Tomas Mraz [email protected] 1.0.0-0.11.beta4
  • actualice a la nueva versión anterior, no se necesita un golpe de soname
  • corrección CVE-2009-3555: tenga en cuenta que la solución se omite si se usa SSL_OP_ALL
    por lo que la compatibilidad con clientes no reparados no se rompe. los
    la extensión del protocolo tampoco es definitiva.
  • viernes, 16 de octubre de 2009 Tomas Mraz [email protected] 1.0.0-0.10.beta3
  • corregir el uso de la memoria liberada si SSL_CTX_free() se llama antes
    SSL_gratis() (#521342)
  • jue 08 oct 2009 Tomas Mraz [email protected] 1.0.0-0.9.beta3
  • corregir error tipográfico en el código DTLS1 (# 527015)
  • corrige la fuga en el manejo de errores de d2i_SSL_SESSION()
  • miércoles, 30 de septiembre de 2009 Tomas Mraz [email protected] 1.0.0-0.8.beta3
  • corregir autocomprobaciones RSA y DSA FIPS
  • volver a habilitar el código de ensamblador de camelia x86_64 fijo (# 521127)
  • Vie 04 de septiembre de 2009 Tomas Mraz [email protected] 1.0.0-0.7.beta3
  • deshabilite temporalmente el código del ensamblador camellia x86_64 (# 521127)
  • lun 31 ago 2009 Tomas Mraz [email protected] 1.0.0-0.6.beta3
  • arreglar dgst de openssl -dss1 (#520152)
  • miércoles, 26 de agosto de 2009 Tomas Mraz [email protected] 1.0.0-0.5.beta3
  • deje caer los hacks de enlace simbólico de compatibilidad
  • sábado, 22 de agosto de 2009 Tomas Mraz [email protected] 1.0.0-0.4.beta3
  • construir SSL_CIPHER_description()
  • viernes 21 de agosto de 2009 Tomas Mraz [email protected] 1.0.0-0.3.beta3
  • corregir WWW: Curl : referencia fácil en tsget
  • viernes 21 de agosto de 2009 Tomas Mraz [email protected] 1.0.0-0.2.beta3
  • habilitar MD-2
  • jue 20 ago 2009 Tomas Mraz [email protected] 1.0.0-0.1.beta3
  • actualizar a la nueva versión principal principal
  • Sáb 25 de julio de 2009 Ingeniería de lanzamiento de Fedora [email protected] - 0.9.8k-7
  • Reconstruido para https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild
  • miércoles, 22 de julio de 2009 Bill Nottingham [email protected]
  • no construya versiones especiales 'optimizadas' para i686, ya que esa es la base
    arco en Fedora ahora
  • martes 30 de junio de 2009 Tomas Mraz [email protected] 0.9.8k-6
  • cancelar si fallan las autocomprobaciones y se sondea el generador de números aleatorios
  • mencione las rutinas EVP_aes y EVP_sha2xx en las páginas de manual
  • añadir LÉAME.FIPS
  • hacer ruta absoluta CA dir (#445344)
  • cambie la longitud predeterminada para la generación de claves RSA a 2048 (#484101)
  • jue 21 mayo 2009 Tomas Mraz [email protected] 0.9.8k-5
  • reparar CVE-2009-1377 CVE-2009-1378 CVE-2009-1379
    (Problemas DTLS DoS) (#501253, #501254, #501572)
  • mar 21 abr 2009 Tomas Mraz [email protected] 0.9.8k-4
  • compatible con el modo DTLS de compatibilidad para CISCO AnyConnect (#464629)
  • vie 17 abr 2009 Tomas Mraz [email protected] 0.9.8k-3
  • corregir la SHLIB_VERSION definir
  • mié 15 abr 2009 Tomas Mraz [email protected] 0.9.8k-2
  • agregue soporte para múltiples CRL con el mismo asunto
  • carga solo soporte dinámico del motor en modo FIPS
  • mié 25 mar 2009 Tomas Mraz [email protected] 0.9.8k-1
  • actualizar a la nueva versión original (correcciones de errores menores, seguridad
    correcciones y optimizaciones de código de máquina solamente)
  • jue 19 mar 2009 Tomas Mraz [email protected] 0.9.8j-10
  • mover bibliotecas a /usr/lib (#239375)
  • Vie 13 de marzo de 2009 Tomas Mraz [email protected] 0.9.8j-9
  • agregar un subpaquete estático
  • Jue 26 de febrero de 2009 Ingeniería de lanzamiento de Fedora [email protected] - 0.9.8j-8
  • Reconstruido para https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
  • lun 02 de febrero de 2009 Tomas Mraz [email protected] 0.9.8j-7
  • también debe verificar la suma de comprobación de libssl.so en el modo FIPS
  • obtenga la semilla para FIPS rng directamente desde el dispositivo kernel
  • eliminar los enlaces simbólicos temporales
  • lun 26 ene 2009 Tomas Mraz [email protected] 0.9.8j-6
  • suelte el triggerpostun temporal y el enlace simbólico en la publicación
  • corrija los archivos pkgconfig y elimine los requisitos de compilación innecesarios
    en pkgconfig ya que es una dependencia de rpmbuild (#481419)
  • Sábado 17 de enero de 2009 Tomas Mraz [email protected] 0.9.8j-5
  • agregue triggerpostun temporal para restablecer los enlaces simbólicos
  • Sábado 17 de enero de 2009 Tomas Mraz [email protected] 0.9.8j-4
  • sin pruebas de clave por pares en modo no fips (#479817)
  • Vie 16 de enero de 2009 Tomas Mraz [email protected] 0.9.8j-3
  • prueba aún más robusta para los enlaces simbólicos temporales
  • Vie 16 de enero de 2009 Tomas Mraz [email protected] 0.9.8j-2
  • intente asegurarse de que existan los enlaces simbólicos temporales
  • jue 15 ene 2009 Tomas Mraz [email protected] 0.9.8j-1
  • nueva versión upstream con soname bump necesario (#455753)
  • proporcionar temporalmente un enlace simbólico al viejo soname para que sea posible reconstruir
    los paquetes dependientes en cuero crudo
  • agregar compatibilidad con eap-fast (#428181)
  • agregue la posibilidad de deshabilitar zlib configurando
  • agregue soporte de modo fips para fines de prueba
  • no anule la desreferencia en algunos archivos smime inválidos
  • agregar buildrequiere pkgconfig (#479493)
  • Dom 10 de agosto de 2008 Tomas Mraz [email protected] 0.9.8g-11
  • tampoco agregue extensiones tls al servidor hello para SSLv3
  • lun 02 de junio de 2008 Joe Orton [email protected] 0.9.8g-10
  • mover el paquete de CA raíz al paquete de certificados de CA
  • miércoles 28 de mayo de 2008 Tomas Mraz [email protected] 0.9.8g-9
  • corregir CVE-2008-0891: bloqueo de la extensión del nombre del servidor (n.º 448492)
  • corrección CVE-2008-1672: error de omisión del mensaje de intercambio de clave del servidor (n.º 448495)
  • martes 27 de mayo de 2008 Tomas Mraz [email protected] 0.9.8g-8
  • soporte de arco super-H
  • eliminar la solución para el error 199604, ya que debería corregirse en gcc-4.3
  • lun 19 de mayo de 2008 Tom "spot" Callaway [email protected] 0.9.8g-7
  • manejo de sparc
  • Lun 10 de marzo de 2008 Joe Orton [email protected] 0.9.8g-6
  • actualización al nuevo paquete raíz CA de mozilla.org (r1.45)
  • miércoles, 20 de febrero de 2008 Ingeniería de versión de Fedora [email protected] - 0.9.8g-5
  • Autoreconstrucción para GCC 4.3
  • jue 24 ene 2008 Tomas Mraz [email protected] 0.9.8g-4
  • fusionar correcciones de revisión (# 226220)
  • ajuste SHLIB_VERSION_NUMBER para reflejar el nombre de la biblioteca (#429846)
  • jue 13 dic 2007 Tomas Mraz [email protected] 0.9.8g-3
  • establecer rutas predeterminadas cuando no se establecen rutas explícitas (#418771)
  • no agregue extensiones tls al cliente hello para SSLv3 (#422081)
  • mar 04 dic 2007 Tomas Mraz [email protected] 0.9.8g-2
  • habilite algunos nuevos algoritmos y características criptográficos
  • agregue algunas correcciones de errores más importantes de openssl CVS
  • lun 03 dic 2007 Tomas Mraz [email protected] 0.9.8g-1
  • actualización a la última versión original, SONAME subió a 7
  • lun 15 oct 2007 Joe Orton [email protected] 0.9.8b-17
  • actualización al nuevo paquete de CA de mozilla.org
  • viernes, 12 de octubre de 2007 Tomas Mraz [email protected] 0.9.8b-16
  • corregir CVE-2007-5135 - apagado por uno en SSL_get_shared_ciphers (#309801)
  • corrección CVE-2007-4995: desbordamiento de búfer de fragmentos DTLS fuera de servicio (n.º 321191)
  • añadir sub-arcos alfa (#296031)
  • Martes 21 de agosto de 2007 Tomas Mraz [email protected] 0.9.8b-15
  • reconstruir
  • viernes 03 de agosto de 2007 Tomas Mraz [email protected] 0.9.8b-14
  • use localhost en testsuite, con suerte corrige la compilación lenta en koji
  • CVE-2007-3108: corrección del ataque de canal lateral en claves privadas (n.º 250577)
  • hacer que la identificación de caché de la sesión SSL coincida estrictamente (# 233599)
  • mié 25 de julio de 2007 Tomas Mraz [email protected] 0.9.8b-13
  • permitir construir sobre arquitecturas ARM (#245417)
  • use marcas de tiempo de referencia para evitar conflictos multilib (#218064)
  • -El paquete de desarrollo debe requerir pkgconfig (#241031)
  • lun 11 dic 2006 Tomas Mraz [email protected] 0.9.8b-12
  • detectar duplicados en add_dir correctamente (#206346)
  • jue 30 de noviembre de 2006 Tomas Mraz [email protected] 0.9.8b-11
  • el cambio anterior todavía no hizo que X509_NAME_cmp fuera transitivo
  • jue 23 de noviembre de 2006 Tomas Mraz [email protected] 0.9.8b-10
  • hacer que X509_NAME_cmp sea transitivo; de lo contrario, busque el certificado
    está roto (#216050)
  • jue 02 de noviembre de 2006 Tomas Mraz [email protected] 0.9.8b-9
  • error de alias en la carga del motor, parche de IBM (n.º 213216)
  • lun 02 oct 2006 Tomas Mraz [email protected] 0.9.8b-8
  • La corrección de CVE-2006-2940 fue incorrecta (#208744)
  • lun 25 sep 2006 Tomas Mraz [email protected] 0.9.8b-7
  • corregir CVE-2006-2937 - error mal manejado en el análisis ASN.1 (#207276)
  • corrige CVE-2006-2940 - DoS de claves públicas parasitarias (#207274)
  • corregir CVE-2006-3738: desbordamiento de búfer en SSL_get_shared_ciphers (#206940)
  • corregir CVE-2006-4343 - DoS del cliente sslv2 (#206940)
  • mar 05 sep 2006 Tomas Mraz [email protected] 0.9.8b-6
  • corrige CVE-2006-4339: previene el ataque a las firmas PKCS#1 v1.5 (#205180)
  • mié 02 de agosto de 2006 Tomas Mraz [email protected] - 0.9.8b-5
  • establezca el almacenamiento en búfer en ninguno en el ARCHIVO stdio/stdout cuando se establece bufsize (#200580)
    parche de IBM
  • vie 28 jul 2006 Alexandre Oliva [email protected] - 0.9.8b-4.1
  • reconstruir con nuevos binutils (#200330)
  • Vie 21 de julio de 2006 Tomas Mraz [email protected] - 0.9.8b-4
  • agregue una solución temporal para la falla de prueba sha512 en s390 (# 199604)
  • jue 20 de julio de 2006 Tomas Mraz [email protected]
  • agregar soporte ipv6 a s_client y s_server (por Jan Pazdziora) (#198737)
  • agregue parches para BN threadsafety, solución de peligro de ataque de colisión de caché AES y
    Corrección de memleak del código pkcs7 de CVS ascendente
  • miércoles 12 de julio de 2006 Jesse Keating [email protected] - 0.9.8b-3.1
  • reconstruir
  • miércoles 21 de junio de 2006 Tomas Mraz [email protected] - 0.9.8b-3
  • se eliminaron los motores libica e ica de la compilación
  • miércoles, 21 de junio de 2006 Joe Orton [email protected]
  • actualización al nuevo paquete de CA de mozilla.org; agrega certificados de CA
    de netlock.hu y startcom.org
  • lun 05 jun 2006 Tomas Mraz [email protected] - 0.9.8b-2
  • corrigió algunas advertencias de rpmlint
  • mejor arreglo para # 173399 desde arriba
  • corrección ascendente para pkcs12
  • Jue 11 de mayo de 2006 Tomas Mraz [email protected] - 0.9.8b-1
  • actualice a la nueva versión, sigue siendo compatible con ABI
  • no hay más linux/config.h (estaba vacío de todos modos)
  • mar 04 abr 2006 Tomas Mraz [email protected] - 0.9.8a-6
  • arregla manijas abiertas obsoletas en libica (#177155)
  • corrige la compilación si 'rand' o 'passwd' en la ruta buildroot (# 178782)
  • inicializar el motor VIA Padlock (#186857)
  • Vie 10 de febrero de 2006 Jesse Keating [email protected] - 0.9.8a-5.2
  • golpe de nuevo por error de doble longitud en ppc(64)
  • Martes 7 de febrero de 2006 Jesse Keating [email protected] - 0.9.8a-5.1
  • reconstruido para la nueva instantánea gcc4.1 y los cambios de glibc
  • jue 15 dic 2005 Tomas Mraz [email protected] 0.9.8a-5
  • no incluya SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG
    en SSL_OP_ALL (#175779)
  • viernes, 09 de diciembre de 2005 Jesse Keating [email protected]
  • reconstruido
  • Martes 29 de noviembre de 2005 Tomas Mraz [email protected] 0.9.8a-4
  • corrige la compilación (-lcrypto se eliminó por error) de la libica actualizada
  • motor ICA actualizado a 1.3.6-rc3
  • Martes 22 de noviembre de 2005 Tomas Mraz [email protected] 0.9.8a-3
  • deshabilite los métodos de compresión incorporados por ahora hasta que funcionen
    correctamente (#173399)
  • miércoles, 16 de noviembre de 2005 Tomas Mraz [email protected] 0.9.8a-2
  • no configure -rpath para el binario openssl
  • Martes 8 de noviembre de 2005 Tomas Mraz [email protected] 0.9.8a-1
  • nueva versión anterior
  • parches parcialmente renumerados
  • viernes, 21 de octubre de 2005 Tomas Mraz [email protected] 0.9.7f-11
  • biblioteca de motor IBM ICA actualizada y parche a la última versión ascendente
  • miércoles, 12 de octubre de 2005 Tomas Mraz [email protected] 0.9.7f-10
  • arreglar CAN-2005-2969 - eliminar SSL_OP_MSIE_SSLV2_RSA_PADDING que
    deshabilita la contramedida contra el ataque man in the middle en SSLv2
    (#169863)
  • use sha1 como predeterminado para CA y solicitudes de certificado - CAN-2005-2946 (#169803)
  • Martes 23 de agosto de 2005 Tomas Mraz [email protected] 0.9.7f-9
  • agregar *.so.soversion como enlaces simbólicos en /lib (#165264)
  • eliminar enlaces simbólicos no empaquetados (#159595)
  • correcciones de upstream (correcciones de tiempo constante para DSA,
    bn ensamblador div en ppc arch, inicialice la memoria en realloc)
  • Jueves 11 de agosto de 2005 Phil Knirsch [email protected] 0.9.7f-8
  • Se actualizó el parche de IBM del motor ICA a la última versión ascendente.
  • Jue 19 de mayo de 2005 Tomas Mraz [email protected] 0.9.7f-7
  • corrige CAN-2005-0109 - usa tiempo constante/acceso a memoria mod_exp
    para que los fragmentos de clave privada no se filtren por el desalojo de caché (# 157631)
  • algunas correcciones más de upstream 0.9.7g
  • miércoles 27 de abril de 2005 Tomas Mraz [email protected] 0.9.7f-6
  • usar sondeo en lugar de seleccionar en rand (#128285)
  • arreglar Makefile.certificate para apuntar a /etc/pki/tls
  • cambie la máscara de cadena predeterminada en ASN1 a PrintableString+UTF8String
  • Lunes 25 de abril de 2005 Joe Orton [email protected] 0.9.7f-5
  • actualización a la revisión 1.37 del paquete Mozilla CA
  • jue 21 abr 2005 Tomas Mraz [email protected] 0.9.7f-4
  • mover certificados a _sysconfdir/pki/tls (#143392)
  • mover directorios de CA a _sysconfdir/pki/CA
  • parchear el script de CA y la configuración predeterminada para que apunte al
    Directorios de CA
  • Vie Abr 01 2005 Tomas Mraz [email protected] 0.9.7f-3
  • la variable no inicializada no debe usarse como entrada en línea
    montaje
  • vuelva a habilitar el ensamblaje x86_64 nuevamente
  • jue 31 mar 2005 Tomas Mraz [email protected] 0.9.7f-2
  • agregue nuevamente RC4_CHAR en ia64 y x86_64 para que la ABI no se rompa
  • deshabilite el ensamblaje bignum roto en x86_64
  • miércoles, 30 de marzo de 2005 Tomas Mraz [email protected] 0.9.7f-1
  • Vuelva a habilitar las optimizaciones en ppc64 y el código ensamblador en ia64
  • actualice a la nueva versión ascendente (no se necesita un golpe de soname)
  • deshabilite la prueba de subprocesos: estaba probando el backport del
    Cegamiento de RSA: ya no es necesario
  • Se agregó soporte para cambiar el número de serie a
    Makefile.certificado (#151188)
  • hacer ca-bundle.crt un archivo de configuración (#118903)
  • mar 01 mar 2005 Tomas Mraz [email protected] 0.9.7e-3
  • libcrypto no debería depender de libkrb5 (#135961)
  • lun 28 de febrero de 2005 Tomas Mraz [email protected] 0.9.7e-2
  • reconstruir
  • lun 28 feb 2005 Tomas Mraz [email protected] 0.9.7e-1
  • nueva fuente ascendente, parches actualizados
  • parche agregado, por lo que esperamos que ABI sea compatible con los próximos
    0.9.7f
  • Jue 10 de febrero de 2005 Tomas Mraz [email protected]
  • Admite juego de caracteres UTF-8 en Makefile.certificate (#134944)
  • Se agregó cmp a BuildPrereq
  • Jueves 27 de enero de 2005 Joe Orton [email protected] 0.9.7a-46
  • generar nuevo ca-bundle.crt desde Mozilla certdata.txt (revisión 1.32)
  • Jueves 23 de diciembre de 2004 Phil Knirsch [email protected] 0.9.7a-45
  • Parche fijo y actualizado libica-1.3.4-urandom.patch (#122967)
  • Vie 19 de noviembre de 2004 Nalin Dahyabhai [email protected] 0.9.7a-44
  • reconstruir
  • Vie 19 de noviembre de 2004 Nalin Dahyabhai [email protected] 0.9.7a-43
  • reconstruir
  • Vie 19 de noviembre de 2004 Nalin Dahyabhai [email protected] 0.9.7a-42
  • reconstruir
  • Vie 19 de noviembre de 2004 Nalin Dahyabhai [email protected] 0.9.7a-41
  • elimine der_chop, como lo ha hecho cvs upstream (CAN-2004-0975, #140040)
  • Martes 5 de octubre de 2004 Phil Knirsch [email protected] 0.9.7a-40
  • Incluye la última versión de libica con correcciones de errores importantes
  • Martes 15 de junio de 2004 Elliot Lee [email protected]
  • reconstruido
  • lun 14 de junio de 2004 Phil Knirsch [email protected] 0.9.7a-38
  • Se actualizó el parche de IBM del motor ICA a la última versión ascendente.
  • lun 07 de junio de 2004 Nalin Dahyabhai [email protected] 0.9.7a-37
  • construir para linux-alpha-gcc en lugar de alpha-gcc en alfa (Jeff Garzik)
  • Martes 25 de mayo de 2004 Nalin Dahyabhai [email protected] 0.9.7a-36
  • manejar %{_arch}=i486/i586/i686/athlon casos en el intermedio
    encabezado (#124303)
  • Jueves 25 de marzo de 2004 Joe Orton [email protected] 0.9.7a-35
  • agregue correcciones de seguridad para CAN-2004-0079, CAN-2004-0112
  • Martes 16 de marzo de 2004 Phil Knirsch [email protected]
  • Se corrigió la especificación de archivo libica.
  • Jue 11 de marzo de 2004 Nalin Dahyabhai [email protected] 0.9.7a-34
  • ppc/ppc64 define powerpc / powerpc64 , no ppc / ppc64 , corrige
    el encabezado intermedio
  • miércoles, 10 de marzo de 2004 Nalin Dahyabhai [email protected] 0.9.7a-33
  • agregar un intermedioque apunta a la derecha
    opensslconf.h específico de arco en arcos multilib
  • Martes 02 de marzo de 2004 Elliot Lee [email protected]
  • reconstruido
  • jueves 26 de febrero de 2004 Phil Knirsch [email protected] 0.9.7a-32
  • Se actualizó libica a la última versión ascendente 1.3.5.
  • Martes 17 de febrero de 2004 Phil Knirsch [email protected] 0.9.7a-31
  • Actualice el parche del motor criptográfico ICA de IBM a la última versión.
  • Vie 13 de febrero de 2004 Elliot Lee [email protected]
  • reconstruido
  • Vie 13 de febrero de 2004 Phil Knirsch [email protected] 0.9.7a-29
  • reconstruido
  • miércoles, 11 de febrero de 2004 Phil Knirsch [email protected] 0.9.7a-28
  • Construcción libica fija.
  • miércoles, 04 de febrero de 2004 Nalin Dahyabhai [email protected]
  • agregue "-ldl" para vincular banderas agregadas para Linux-on-ARM (#99313)
  • miércoles, 04 de febrero de 2004 Joe Orton [email protected] 0.9.7a-27
  • ca-bundle.crt actualizado: se eliminaron las raíces de GeoTrust caducadas, se agregaron
    freessl.com root, eliminado trustcenter.de Class 0 root
  • Dom 30 de noviembre de 2003 Tim Waugh [email protected] 0.9.7a-26
  • Arreglar la línea de enlace para libssl (error #111154).
  • viernes, 24 de octubre de 2003 Nalin Dahyabhai [email protected] 0.9.7a-25
  • agregar dependencia en zlib-devel para el paquete -devel, que depende de zlib
    símbolos porque habilitamos zlib para libssl (#102962)
  • viernes, 24 de octubre de 2003 Phil Knirsch [email protected] 0.9.7a-24
  • Utilice /dev/urandom en lugar de PRNG para libica.
  • Aplique la solución libica-1.3.5 para /dev/urandom en icalinux.c
  • Utilice el último parche del motor ICA de IBM.
  • Sábado, 04 de octubre de 2003 Nalin Dahyabhai [email protected] 0.9.7a-22.1
  • reconstruir
  • miércoles, 01 de octubre de 2003 Nalin Dahyabhai [email protected] 0.9.7a-22
  • reconstruir (22 en realidad no se construyó, divertido, ¿eh?)
  • Martes 30 de septiembre de 2003 Nalin Dahyabhai [email protected] 0.9.7a-23
  • volver a desactivar las optimizaciones en ppc64
  • Martes 30 de septiembre de 2003 Joe Orton [email protected]
  • agregue una solución a_mbstr.c para plataformas de 64 bits de CVS
  • Martes 30 de septiembre de 2003 Nalin Dahyabhai [email protected] 0.9.7a-22
  • agregue -Wa,--noexecstack a RPM_OPT_FLAGS para que los módulos ensamblados se etiqueten
    como no necesita pilas ejecutables
  • Lunes 29 de septiembre de 2003 Nalin Dahyabhai [email protected] 0.9.7a-21
  • reconstruir
  • Jueves 25 de septiembre de 2003 Nalin Dahyabhai [email protected]
  • volver a habilitar las optimizaciones en ppc64
  • Jueves 25 de septiembre de 2003 Nalin Dahyabhai [email protected]
  • remove exclusivearch
  • Wed Sep 24 2003 Nalin Dahyabhai [email protected] 0.9.7a-20
  • only parse a client cert if one was requested
  • temporarily exclusivearch for %{ix86}
  • Tue Sep 23 2003 Nalin Dahyabhai [email protected]
  • add security fixes for protocol parsing bugs (CAN-2003-0543, CAN-2003-0544)
    and heap corruption (CAN-2003-0545)
  • update RHNS-CA-CERT files
  • ease back on the number of threads used in the threading test
  • Wed Sep 17 2003 Matt Wilson [email protected] 0.9.7a-19
  • rebuild to fix gzipped file md5sums (#91211)
  • Mon Aug 25 2003 Phil Knirsch [email protected] 0.9.7a-18
  • Updated libica to version 1.3.4.
  • Thu Jul 17 2003 Nalin Dahyabhai [email protected] 0.9.7a-17
  • reconstruir
  • Tue Jul 15 2003 Nalin Dahyabhai [email protected] 0.9.7a-10.9
  • free the kssl_ctx structure when we free an SSL structure (#99066)
  • Fri Jul 11 2003 Nalin Dahyabhai [email protected] 0.9.7a-16
  • reconstruir
  • Thu Jul 10 2003 Nalin Dahyabhai [email protected] 0.9.7a-15
  • lower thread test count on s390x
  • Tue Jul 08 2003 Nalin Dahyabhai [email protected] 0.9.7a-14
  • reconstruir
  • Thu Jun 26 2003 Nalin Dahyabhai [email protected] 0.9.7a-13
  • disable assembly on arches where it seems to conflict with threading
  • Thu Jun 26 2003 Phil Knirsch [email protected] 0.9.7a-12
  • Updated libica to latest upstream version 1.3.0
  • Wed Jun 11 2003 Nalin Dahyabhai [email protected] 0.9.7a-9.9
  • reconstruir
  • Wed Jun 11 2003 Nalin Dahyabhai [email protected] 0.9.7a-11
  • reconstruir
  • Tue Jun 10 2003 Nalin Dahyabhai [email protected] 0.9.7a-10
  • ubsec: don't stomp on output data which might also be input data
  • Tue Jun 10 2003 Nalin Dahyabhai [email protected] 0.9.7a-9
  • temporarily disable optimizations on ppc64
  • Mon Jun 09 2003 Nalin Dahyabhai [email protected]
  • backport fix for engine-used-for-everything from 0.9.7b
  • backport fix for prng not being seeded causing problems, also from 0.9.7b
  • add a check at build-time to ensure that RSA is thread-safe
  • keep perlpath from stomping on the libica configure scripts
  • Fri Jun 06 2003 Nalin Dahyabhai [email protected]
  • thread-safety fix for RSA blinding
  • Wed Jun 04 2003 Elliot Lee [email protected] 0.9.7a-8
  • rebuilt
  • Fri May 30 2003 Phil Knirsch [email protected] 0.9.7a-7
  • Added libica-1.2 to openssl (featurerequest).
  • Wed Apr 16 2003 Nalin Dahyabhai [email protected] 0.9.7a-6
  • fix building with incorrect flags on ppc64
  • Wed Mar 19 2003 Nalin Dahyabhai [email protected] 0.9.7a-5
  • add patch to harden against Klima-Pokorny-Rosa extension of Bleichenbacher's
    attack (CAN-2003-0131)
  • Mon Mar 17 2003 Nalin Dahyabhai [email protected] 0.9.7a-4
  • add patch to enable RSA blinding by default, closing a timing attack
    (CAN-2003-0147)
  • Wed Mar 05 2003 Nalin Dahyabhai [email protected] 0.9.7a-3
  • disable use of BN assembly module on x86_64, but continue to allow inline
    assembly (#83403)
  • Thu Feb 27 2003 Nalin Dahyabhai [email protected] 0.9.7a-2
  • disable EC algorithms
  • Wed Feb 19 2003 Nalin Dahyabhai [email protected] 0.9.7a-1
  • update to 0.9.7a
  • Wed Feb 19 2003 Nalin Dahyabhai [email protected] 0.9.7-8
  • add fix to guard against attempts to allocate negative amounts of memory
  • add patch for CAN-2003-0078, fixing a timing attack
  • Thu Feb 13 2003 Elliot Lee [email protected] 0.9.7-7
  • Add openssl-ppc64.patch
  • Mon Feb 10 2003 Nalin Dahyabhai [email protected] 0.9.7-6
  • EVP_DecryptInit should call EVP_CipherInit() instead of EVP_CipherInit_ex(),
    to get the right behavior when passed uninitialized context structures
    (#83766)
  • build with -mcpu=ev5 on alpha family (#83828)
  • Wed Jan 22 2003 Tim Powers [email protected]
  • rebuilt
  • Fri Jan 17 2003 Phil Knirsch [email protected] 0.9.7-4
  • Added IBM hw crypto support patch.
  • Wed Jan 15 2003 Nalin Dahyabhai [email protected]
  • add missing builddep on sed
  • Thu Jan 09 2003 Bill Nottingham [email protected] 0.9.7-3
  • debloat
  • fix broken manpage symlinks
  • Wed Jan 08 2003 Nalin Dahyabhai [email protected] 0.9.7-2
  • fix double-free in 'openssl ca'
  • Fri Jan 03 2003 Nalin Dahyabhai [email protected] 0.9.7-1
  • update to 0.9.7 final
  • Tue Dec 17 2002 Nalin Dahyabhai [email protected] 0.9.7-0
  • update to 0.9.7 beta6 (DO NOT USE UNTIL UPDATED TO FINAL 0.9.7)
  • Wed Dec 11 2002 Nalin Dahyabhai [email protected]
  • update to 0.9.7 beta5 (DO NOT USE UNTIL UPDATED TO FINAL 0.9.7)
  • Tue Oct 22 2002 Nalin Dahyabhai [email protected] 0.9.6b-30
  • add configuration stanza for x86_64 and use it on x86_64
  • build for linux-ppc on ppc
  • start running the self-tests again
  • Wed Oct 02 2002 Elliot Lee [email protected] 0.9.6b-29hammer.3
  • Merge fixes from previous hammer packages, including general x86-64 and
    multilib
  • Tue Aug 06 2002 Nalin Dahyabhai [email protected] 0.9.6b-29
  • reconstruir
  • Thu Aug 01 2002 Nalin Dahyabhai [email protected] 0.9.6b-28
  • update asn patch to fix accidental reversal of a logic check
  • Wed Jul 31 2002 Nalin Dahyabhai [email protected] 0.9.6b-27
  • update asn patch to reduce chance that compiler optimization will remove
    one of the added tests
  • Wed Jul 31 2002 Nalin Dahyabhai [email protected] 0.9.6b-26
  • reconstruir
  • Mon Jul 29 2002 Nalin Dahyabhai [email protected] 0.9.6b-25
  • add patch to fix ASN.1 vulnerabilities
  • Thu Jul 25 2002 Nalin Dahyabhai [email protected] 0.9.6b-24
  • add backport of Ben Laurie's patches for OpenSSL 0.9.6d
  • Wed Jul 17 2002 Nalin Dahyabhai [email protected] 0.9.6b-23
  • own {_datadir}/ssl/misc
  • Fri Jun 21 2002 Tim Powers [email protected]
  • automated rebuild
  • Sun May 26 2002 Tim Powers [email protected]
  • automated rebuild
  • Fri May 17 2002 Nalin Dahyabhai [email protected] 0.9.6b-20
  • free ride through the build system (whee!)
  • Thu May 16 2002 Nalin Dahyabhai [email protected] 0.9.6b-19
  • rebuild in new environment
  • Thu Apr 04 2002 Nalin Dahyabhai [email protected] 0.9.6b-17, 0.9.6b-18
  • merge RHL-specific bits into stronghold package, rename
  • Tue Apr 02 2002 Gary Benson [email protected] stronghold-0.9.6c-2
  • add support for Chrysalis Luna token
  • Tue Mar 26 2002 Gary Benson [email protected]
  • disable AEP random number generation, other AEP fixes
  • Fri Mar 15 2002 Nalin Dahyabhai [email protected] 0.9.6b-15
  • only build subpackages on primary arches
  • Thu Mar 14 2002 Nalin Dahyabhai [email protected] 0.9.6b-13
  • on ia32, only disable use of assembler on i386
  • enable assembly on ia64
  • Mon Jan 07 2002 Florian La Roche Florian. [email protected] 0.9.6b-11
  • fix sparcv9 entry
  • Mon Jan 07 2002 Gary Benson [email protected] stronghold-0.9.6c-1
  • upgrade to 0.9.6c
  • bump BuildArch to i686 and enable assembler on all platforms
  • synchronise with shrimpy and rawhide
  • bump soversion to 3
  • Wed Oct 10 2001 Florian La Roche Florian. [email protected]
  • delete BN_LLONG for s390x, patch from Oliver Paukstadt
  • Mon Sep 17 2001 Nalin Dahyabhai [email protected] 0.9.6b-9
  • update AEP driver patch
  • Mon Sep 10 2001 Nalin Dahyabhai [email protected]
  • adjust RNG disabling patch to match version of patch from Broadcom
  • Fri Sep 07 2001 Nalin Dahyabhai [email protected] 0.9.6b-8
  • disable the RNG in the ubsec engine driver
  • Tue Aug 28 2001 Nalin Dahyabhai [email protected] 0.9.6b-7
  • tweaks to the ubsec engine driver
  • Fri Aug 24 2001 Nalin Dahyabhai [email protected] 0.9.6b-6
  • tweaks to the ubsec engine driver
  • Thu Aug 23 2001 Nalin Dahyabhai [email protected] 0.9.6b-5
  • update ubsec engine driver from Broadcom
  • Fri Aug 10 2001 Nalin Dahyabhai [email protected] 0.9.6b-4
  • move man pages back to %{_mandir}/man?/foo.?ssl from
    %{_mandir}/man?ssl/foo.?
  • add an [ engine ] section to the default configuration file
  • Thu Aug 09 2001 Nalin Dahyabhai [email protected]
  • add a patch for selecting a default engine in SSL_library_init()
  • Mon Jul 23 2001 Nalin Dahyabhai [email protected] 0.9.6b-3
  • add patches for AEP hardware support
  • add patch to keep trying when we fail to load a cert from a file and
    there are more in the file
  • add missing prototype for ENGINE_ubsec() in engine_int.h
  • Wed Jul 18 2001 Nalin Dahyabhai [email protected] 0.9.6b-2
  • actually add hw_ubsec to the engine list
  • Tue Jul 17 2001 Nalin Dahyabhai [email protected]
  • add in the hw_ubsec driver from CVS
  • Wed Jul 11 2001 Nalin Dahyabhai [email protected] 0.9.6b-1
  • update to 0.9.6b
  • Thu Jul 05 2001 Nalin Dahyabhai [email protected]
  • move .so symlinks back to %{_libdir}
  • Tue Jul 03 2001 Nalin Dahyabhai [email protected]
  • move shared libraries to /lib (#38410)
  • Mon Jun 25 2001 Nalin Dahyabhai [email protected]
  • switch to engine code base
  • Mon Jun 18 2001 Nalin Dahyabhai [email protected]
  • add a script for creating dummy certificates
  • move man pages from %{_mandir}/man?/foo.?ssl to %{_mandir}/man?ssl/foo.?
  • Thu Jun 07 2001 Florian La Roche Florian. [email protected]
  • add s390x support
  • Fri Jun 01 2001 Nalin Dahyabhai [email protected]
  • change two memcpy() calls to memmove()
  • don't define L_ENDIAN on alpha
  • Wed May 23 2001 Joe Orton [email protected] stronghold-0.9.6a-1
  • Add 'stronghold-' prefix to package names.
  • Obsolete standard openssl packages.
  • Wed May 16 2001 Joe Orton [email protected]
  • Add BuildArch: i586 as per Nalin's advice.
  • Tue May 15 2001 Joe Orton [email protected]
  • Enable assembler on ix86 (using new .tar.bz2 which does
    include the asm directories).
  • Tue May 15 2001 Nalin Dahyabhai [email protected]
  • make subpackages depend on the main package
  • Tue May 01 2001 Nalin Dahyabhai [email protected]
  • adjust the hobble script to not disturb symlinks in include/ (fix from
    Joe Orton)
  • Fri Apr 27 2001 Nalin Dahyabhai [email protected]
  • drop the m2crypo patch we weren't using
  • Tue Apr 24 2001 Nalin Dahyabhai [email protected]
  • configure using "shared" as well
  • Sun Apr 08 2001 Nalin Dahyabhai [email protected]
  • update to 0.9.6a
  • use the build-shared target to build shared libraries
  • bump the soversion to 2 because we're no longer compatible with
    our 0.9.5a packages or our 0.9.6 packages
  • drop the patch for making rsatest a no-op when rsa null support is used
  • put all man pages into
    ssl instead of
  • break the m2crypto modules into a separate package
  • Tue Mar 13 2001 Nalin Dahyabhai [email protected]
  • use BN_LLONG on s390
  • Mon Mar 12 2001 Nalin Dahyabhai [email protected]
  • fix the s390 changes for 0.9.6 (isn't supposed to be marked as 64-bit)
  • Sat Mar 03 2001 Nalin Dahyabhai [email protected]
  • move c_rehash to the perl subpackage, because it's a perl script now
  • Fri Mar 02 2001 Nalin Dahyabhai [email protected]
  • update to 0.9.6
  • enable MD2
  • use the libcrypto.so and libssl.so targets to build shared libs with
  • bump the soversion to 1 because we're no longer compatible with any of
    the various 0.9.5a packages circulating around, which provide lib*.so.0
  • Wed Feb 28 2001 Florian La Roche Florian. [email protected]
  • change hobble-openssl for disabling MD2 again
  • Tue Feb 27 2001 Nalin Dahyabhai [email protected]
  • re-disable MD2 -- the EVP_MD_CTX structure would grow from 100 to 152
    bytes or so, causing EVP_DigestInit() to zero out stack variables in
    apps built against a version of the library without it
  • Mon Feb 26 2001 Nalin Dahyabhai [email protected]
  • disable some inline assembly, which on x86 is Pentium-specific
  • re-enable MD2 (see http://www.ietf.org/ietf/IPR/RSA-MD-all)
  • Thu Feb 08 2001 Florian La Roche Florian. [email protected]
  • fix s390 patch
  • Fri Dec 08 2000 Than Ngo [email protected]
  • added support s390
  • Mon Nov 20 2000 Nalin Dahyabhai [email protected]
  • remove -Wa,* and -m* compiler flags from the default Configure file (#20656)
  • add the CA.pl man page to the perl subpackage
  • Thu Nov 02 2000 Nalin Dahyabhai [email protected]
  • always build with -mcpu=ev5 on alpha
  • Tue Oct 31 2000 Nalin Dahyabhai [email protected]
  • add a symlink from cert.pem to ca-bundle.crt
  • Wed Oct 25 2000 Nalin Dahyabhai [email protected]
  • add a ca-bundle file for packages like Samba to reference for CA certificates
  • Tue Oct 24 2000 Nalin Dahyabhai [email protected]
  • remove libcrypto's crypt(), which doesn't handle md5crypt (#19295)
  • Mon Oct 02 2000 Nalin Dahyabhai [email protected]
  • add unzip as a buildprereq (#17662)
  • update m2crypto to 0.05-snap4
  • Tue Sep 26 2000 Bill Nottingham [email protected]
  • fix some issues in building when it's not installed
  • Wed Sep 06 2000 Nalin Dahyabhai [email protected]
  • make sure the headers we include are the ones we built with (aaaaarrgh!)
  • Fri Sep 01 2000 Nalin Dahyabhai [email protected]
  • add Richard Henderson's patch for BN on ia64
  • clean up the changelog
  • Tue Aug 29 2000 Nalin Dahyabhai [email protected]
  • fix the building of python modules without openssl-devel already installed
  • Wed Aug 23 2000 Nalin Dahyabhai [email protected]
  • byte-compile python extensions without the build-root
  • adjust the makefile to not remove temporary files (like .key files when
    building .csr files) by marking them as .PRECIOUS
  • Sat Aug 19 2000 Nalin Dahyabhai [email protected]
  • break out python extensions into a subpackage
  • Mon Jul 17 2000 Nalin Dahyabhai [email protected]
  • tweak the makefile some more
  • Tue Jul 11 2000 Nalin Dahyabhai [email protected]
  • disable MD2 support
  • Thu Jul 06 2000 Nalin Dahyabhai [email protected]
  • disable MDC2 support
  • Sun Jul 02 2000 Nalin Dahyabhai [email protected]
  • tweak the disabling of RC5, IDEA support
  • tweak the makefile
  • Thu Jun 29 2000 Nalin Dahyabhai [email protected]
  • strip binaries and libraries
  • rework certificate makefile to have the right parts for Apache
  • Wed Jun 28 2000 Nalin Dahyabhai [email protected]
  • use %{_perl} instead of /usr/bin/perl
  • disable alpha until it passes its own test suite
  • Fri Jun 09 2000 Nalin Dahyabhai [email protected]
  • move the passwd.1 man page out of the passwd package's way
  • Fri Jun 02 2000 Nalin Dahyabhai [email protected]
  • update to 0.9.5a, modified for US
  • add perl as a build-time requirement
  • move certificate makefile to another package
  • disable RC5, IDEA, RSA support
  • remove optimizations for now
  • Wed Mar 01 2000 Florian La Roche Florian. [email protected]
  • Bero told me to move the Makefile into this package
  • Wed Mar 01 2000 Florian La Roche Florian. [email protected]
  • add lib*.so symlinks to link dynamically against shared libs
  • Tue Feb 29 2000 Florian La Roche Florian. [email protected]
  • update to 0.9.5
  • run ldconfig directly in post/postun
  • add FAQ
  • Sat Dec 18 1999 Bernhard Rosenkrdnzer [email protected]
  • Fix build on non-x86 platforms
  • Fri Nov 12 1999 Bernhard Rosenkrdnzer [email protected]
  • move /usr/share/ssl/* from -devel to main package
  • Tue Oct 26 1999 Bernhard Rosenkrdnzer [email protected]
  • inital packaging
  • changes from base:

    • Move /usr/local/ssl to /usr/share/ssl for FHS compliance

    • handle RPM_OPT_FLAGS

¿Parece que @Lekinho eliminó su cuenta de github? Para la próxima persona que tenga problemas, es posible que su actualización de OpenSsl o Python rompa algunos enlaces c compilados. Cada vez que tengo una actualización como esa, descarto mi virtualenv o todos los paquetes y luego construyo uno nuevo.

@jvanasco todavía estoy aquí.
Me preguntaba, ¿tienes una URL pública con la que pueda probar esto? Quiero ver si la solución realmente resuelve el problema para los casos confirmados (esto significará que no arruiné nada al intentar hacerlo)

@Lukasa

subconjunto de conjunto de cambios entre la versión de trabajo y la versión actualizada :+1:
lun 02 de mayo de 2016 Tomáš Mráz [email protected] 1.0.1e-48.1
corregir CVE-2016-2105: posible desbordamiento en la codificación base64
corregir CVE-2016-2106 - posible desbordamiento en EVP_EncryptUpdate()
corregir CVE-2016-2107 - oráculo de relleno en AES-NI CBC-MAC cosido
corregir CVE-2016-2108: corrupción de memoria en el codificador ASN.1
corrige CVE-2016-2109: posible DoS al leer datos ASN.1 de BIO
corregir CVE-2016-0799 - problemas de memoria en BIO_printf

mié 24 de febrero de 2016 Tomáš Mráz [email protected] 1.0.1e-48

corrige CVE-2016-0702: ataque de canal lateral en exponenciación modular
corrige CVE-2016-0705 - doble libre en análisis de clave privada DSA
corregir CVE-2016-0797: corrupción de montón en BN_hex2bn y BN_dec2bn

martes, 16 de febrero de 2016 Tomáš Mráz [email protected] 1.0.1e-47

corregir CVE-2015-3197: aplicación de conjunto de cifrado SSLv2
deshabilite SSLv2 en el método TLS genérico

Vie 15 de enero de 2016 Tomáš Mráz [email protected] 1.0.1e-46

corrige la pérdida de memoria de 1 byte en el análisis de pkcs12 (# 1229871)
documentar algunas opciones del comando de velocidad (#1197095)

jue 14 ene 2016 Tomáš Mráz [email protected] 1.0.1e-45

corregir marcas de tiempo de alta precisión en la autoridad de sellado de tiempo

lun 21 dic 2015 Tomáš Mráz [email protected] 1.0.1e-44

corregir CVE-2015-7575: no permitir el uso de MD5 en TLS1.2

vie 04 dic 2015 Tomáš Mráz [email protected] 1.0.1e-43

corrección CVE-2015-3194: falla de verificación de certificado con parámetro PSS faltante
corregir CVE-2015-3195 - Pérdida de memoria X509_ATTRIBUTE
corrige CVE-2015-3196: condición de carrera al manejar la sugerencia de identidad de PSK

martes, 23 de junio de 2015 Tomáš Mráz [email protected] 1.0.1e-42

Actualizar :
Así que encontré una solución para esto.
Básicamente, un colega estaba leyendo sobre el problema y vio algunas publicaciones sobre la compatibilidad de RHEL con openssl para el cifrado ECC/ECDH que no era del 100 % por cualquier motivo.

Probamos la solicitud a la URL deshabilitando explícitamente los cifrados ECDH (agregando la negación del propio script openssl, es decir, openssl s_client -connect 10.85.103.218:8443 -cipher 'DEFAULT:!ECDH')

Pudimos conectarnos con éxito.

Aquí está la lista de cifrado predeterminada para openssl en ubuntu 14.04
ECDH+ AESGCM:DH+AESGCM :ECDH+AES256:DH+AES256:ECDH+AES128:DH+ AES:ECDH+ALTO :DH+ ALTO:ECDH+3DES :DH+3 DES:RSA+AESGCM :RSA+ AES:RSA+ALTO :RSA +3DES:!aNULO:!eNULO:!MD5

Entonces, con ese conocimiento, usé pyopenssl para imprimir mis cifrados SSL predeterminados y eliminé explícitamente todos los cifrados ECDH de la cadena. Hice esto justo en el bloque para importar urllib3 del paquete de solicitudes (es decir, antes de comenzar a realizar solicitudes reales), aquí hay algo similar:
https://github.com/kennethreitz/requests/issues/1308

Me doy cuenta de que puede haber riesgos de seguridad para esta acción, pero al menos esto nos pone en marcha y arroja más luz al respecto.

Por qué esos cifrados en particular parecen ser un problema para RHEL, no tengo idea.

Intentaré cuando tenga más tiempo para ver qué cambios particulares de RHEL pueden haber introducido esto y leeré más sobre el propósito.

¿Alguien sabe más sobre cifrados en general?

Tiene el mismo problema... ARG...

La frustración de @ lukas-gitl no te ayudará a resolver el problema. Proporcionarnos información sobre su entorno (preferiblemente parte, si no toda, de la información que le preguntamos a Lekinho anteriormente) ayudará.

@sigmavirus24 Disculpas. Tenía la intención de proporcionar más información y luego me desvié (ya que no tenía tiempo para esto). Estoy usando Ubuntu 14.04, Python 2.7.6 y la última versión de solicitudes en pip. Esto sucede cuando intento acceder como punto final de API Gateway (pueden ser bastante restrictivos).

Intenté eliminar virtualenv y regenerarlo, pero desafortunadamente eso no lo resolvió.

Dime qué más necesitas. Cambié a nodejs por el momento, pero estaría feliz de ayudar con una resolución.

@lukas-gitl Es muy probable que el servidor con el que se está comunicando requiera cifrados que no ofrece o versiones de TLS que no ofrece. Esto puede estar relacionado con el OpenSSL que ha instalado. También debe intentar ejecutar pip install requests[security] : es posible que tenga problemas con SNI.

Sí, ya lo probé también. Permítanme armar un guión de prueba rápido aquí para que estemos en la misma página.

virtualenv -p /usr/bin/python2.7 env
origen env/bin/activar
solicitudes de instalación de pip
solicitudes de instalación de pip [seguridad]
echo 'solicitudes de importación' >> test.py
echo 'requests.get("https://API_ID.execute-api.us-west-2.amazonaws.com/ENV/ENPOINT")' >> test.py
prueba de python.py

¿Y qué error específico estás viendo?

.../env/local/lib/python2.7/site-packages/requests/packages/urllib3/util/ssl_.py:318: SNIMissingWarning: An HTTPS request has been made, but the SNI (Subject Name Indication) extension to TLS is not available on this platform. This may cause the server to present an incorrect TLS certificate, which can cause validation failures. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#snimissingwarning. SNIMissingWarning .../env/local/lib/python2.7/site-packages/requests/packages/urllib3/util/ssl_.py:122: InsecurePlatformWarning: A true SSLContext object is not available. This prevents urllib3 from configuring SSL appropriately and may cause certain SSL connections to fail. You can upgrade to a newer version of Python to solve this. For more information, see https://urllib3.readthedocs.org/en/latest/security.html#insecureplatformwarning. InsecurePlatformWarning Traceback (most recent call last): File "test.py", line 2, in <module> requests.get("https://sbsz8eqowe.execute-api.us-west-2.amazonaws.com/dev/segment_to_s3_webhook") File ".../env/local/lib/python2.7/site-packages/requests/api.py", line 71, in get return request('get', url, params=params, **kwargs) File ".../env/local/lib/python2.7/site-packages/requests/api.py", line 57, in request return session.request(method=method, url=url, **kwargs) File ".../env/local/lib/python2.7/site-packages/requests/sessions.py", line 475, in request resp = self.send(prep, **send_kwargs) File ".../env/local/lib/python2.7/site-packages/requests/sessions.py", line 585, in send r = adapter.send(request, **kwargs) File ".../env/local/lib/python2.7/site-packages/requests/adapters.py", line 477, in send raise SSLError(e, request=request) requests.exceptions.SSLError: [Errno 1] _ssl.c:510: error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure```

Entonces, ¿básicamente debo actualizar a una versión posterior de python?

Ok, ambas advertencias sugieren que sus solicitudes en realidad no usan las extensiones de solicitudes [seguridad]. Sugiere enfáticamente que cualquier Python que esté ejecutando _no_ sea el que instaló en su entorno virtual: la extensión de solicitudes [seguridad] debería eliminar esas advertencias.

@lukas-gitl por favor vea mis notas arriba.
¿Tienes acceso al servidor? compare la lista de cifrados predeterminados para el servidor y el cliente.
Es muy probable que 1 de ellos no admita el primer conjunto de cifrados en el otro, de ahí el error.

Puede verificar los cifrados predeterminados con un script simple como el que usé aquí:

!/usr/bin/pitón

sistema de importación
importar sistema operativo
importar ssl
imprimir (ssl.OPENSSL_VERSION)
sys.path.insert(1, os.path.abspath(os.path.join(os.getcwd(), 'lib')))
sys.path.append('/usr/local/lib/python2.7/dist-packages')
solicitudes de importación
de solicitudes.paquetes.urllib3.contrib importar pyopenssl
pyopenssl.inject_into_urllib3()
imprimir pyopenssl.DEFAULT_SSL_CIPHER_LIST

Ok, ahora estoy realmente confundido. El mensaje de error proviene del entorno virtual. Entonces, ¿cómo podrían venir desde allí mientras ejecuto desde un entorno de Python diferente?

Así que probé pip install pyopenssl ndg-httpsclient pyasn1 en lugar de pip install requests[security] y funcionó...

Ajá, sospecho que tu pepita es demasiado vieja para manejar los extras.

Maldita sea. Eso explica mucho. ¡Muchas gracias por su ayuda!

Encontré el mismo problema aquí, debía enviar una solicitud GET con el siguiente código:
requests.get('https://mdskip.taobao.com/core/initItemDetail.htm?itemId=530444505608&showShopProm=false&queryMemberRight=true&isRegionLevel=false&tmallBuySupport=true&addressLevel=2&sellerPreview=false&isForbidBuyItem=false&cachedTimestamp=1466835924196&offlineShop=false&household=false&tryBeforeBuy=false&isSecKill=false&service3C=false&isApparel=true&isUseInventoryCenter=false&cartEnable=true&isAreaSell=false&callback=setMdskip&timestamp=1466841669969&isg=Al9faN3XWRpIf6UEoQ88UH/1b7np0rNm&ref=https%3A%2F%2Fs.taobao.com%2Fsearch%3Fq%3D%25E6%258B%2589%25E5%25A4%258F%25E8%25B4%259D%25E5%25B0%2594%26imgfile%3D%26commend%3Dall%26ssid%3Ds5-e%26search_type%3Ditem%26sourceId%3Dtb.index%26spm%3Da21bo.50862.201856-taobao-item.1%26ie%3Dutf8%26initiative_id%3Dtbindexz_20160625')

desafortunadamente me dieron la información del error:
Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Library/Python/2.7/site-packages/requests/api.py", line 71, in get return request('get', url, params=params, **kwargs) File "/Library/Python/2.7/site-packages/requests/api.py", line 57, in request return session.request(method=method, url=url, **kwargs) File "/Library/Python/2.7/site-packages/requests/sessions.py", line 475, in request resp = self.send(prep, **send_kwargs) File "/Library/Python/2.7/site-packages/requests/sessions.py", line 585, in send r = adapter.send(request, **kwargs) File "/Library/Python/2.7/site-packages/requests/adapters.py", line 477, in send raise SSLError(e, request=request) requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'SSL23_GET_SERVER_HELLO', 'sslv3 alert handshake failure')],)",)

Traté de instalar brew openssl, brew upgrade openssl, pip install --upgrade pip, pip install requestes, pip install request[security], pero no funcionaron.

Sin embargo, cuando escribo openssl version obtengo OpenSSL 0.9.8zh 14 Jan 2016 , no sé si está bien.

¿Hay alguien que me pueda ayudar con eso?

@jschwinger23 ¿Puede ejecutar pip install pyopenssl ndg-httpsclient pyasn1 también, por favor?

@Lukasa Gracias por tu respuesta. Reconfirmé que los instalé:

$ pip install pyopenssl ndg-httpsclient pyasn1 Requirement already satisfied (use --upgrade to upgrade): pyopenssl in /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python Requirement already satisfied (use --upgrade to upgrade): ndg-httpsclient in /Library/Python/2.7/site-packages Requirement already satisfied (use --upgrade to upgrade): pyasn1 in /Library/Python/2.7/site-packages

pero el código sigue inactivo.

De todos modos, descubrí que todo va bien en Python3 y me alegro de poder codificar en python3.
Muchas gracias.

Seguí las instrucciones anteriores pero aún me encuentro con este problema

``` Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/Library/Python/2.7/site-packages/requests/api.py", line 71, in get return request('get', url, params=params, **kwargs) File "/Library/Python/2.7/site-packages/requests/api.py", line 57, in request return session.request(method=method, url=url, **kwargs) File "/Library/Python/2.7/site-packages/requests/sessions.py", line 475, in request resp = self.send(prep, **send_kwargs) File "/Library/Python/2.7/site-packages/requests/sessions.py", line 585, in send r = adapter.send(request, **kwargs) File "/Library/Python/2.7/site-packages/requests/adapters.py", line 477, in send raise SSLError(e, request=request) requests.exceptions.SSLError: ("bad handshake: Error([('SSL routines', 'SSL23_GET_SERVER_HELLO', 'sslv3 alert handshake failure')],)",)

¿algunas ideas?
``````

@rohanpai Es probable que no tenga una superposición de cifrado, o que el servidor remoto no esté satisfecho con las versiones que está ofreciendo, o que se espera que proporcione un certificado de cliente y no lo está. Es difícil dar consejos más específicos. Pruebe esto para investigar el problema.

En ubuntu 14.04LTS necesitaba hacer esto:

sudo pip install ndg-httpsclient pyasn1 --upgrade

Tenga en cuenta que en Ubuntu no es posible actualizar/eliminar pyopenssl ya que es propiedad del sistema operativo.

la solución de markstrefford también me funcionó en mac os sierra

La solución de @markstrefford también funcionó para mí.

Solo un aviso para cualquiera que use OpenSSL 1.1:
También se encontrará con este problema, incluso cuando fuerce los adaptadores TLS, cuando el servidor remoto ofrece Elliptic Curves como primera opción.
La causa es: http://bugs.python.org/issue29697

¡Hola chicos! Tengo el mismo problema con el siguiente servidor https://34.200.105.231/SID/Service.svc?wsdl . He probado de todo y salto de y a los mismos 2 errores:

  • requests.exceptions.SSLError: ("bad handshake: SysCallError(-1, 'Unexpected EOF')",)
  • requests.exceptions.SSLError: EOF occurred in violation of protocol (_ssl.c:661)

¿Algunas ideas? @Lukasa , veo algunos problemas con el Certificado, pero parece que no debería ser tan malo: https://sslanalyzer.comodoca.com/?url=34.200.105.231

El certificado generalmente no causará este problema: este problema es causado por el servidor que nos cuelga, por lo que generalmente es el resultado de una falta de coincidencia del conjunto de cifrado. En este caso, eso es exactamente lo que está pasando como puedes ver aquí .

Este es un servidor que, francamente, nunca debería estar expuesto a la Internet abierta. No hay métodos seguros de comunicación con este servidor: ninguno, cero. Esta es la razón por la que falla el protocolo de enlace: Requests solo acepta conjuntos de cifrado modernos y no hay conjuntos de cifrado modernos disponibles para este servidor. La mejor opción es TLS_RSA_WITH_3DES_EDE_CBC_SHA , una opción que eliminamos porque es vulnerable a ataques prácticos en la transferencia de datos a gran escala.

Si este servidor es suyo, actualícelo a una mejor implementación de TLS o cambie la configuración. De lo contrario, mi primer consejo es reconsiderar la posibilidad de hablar con este servidor. Si es necesario, puede usar el código aquí , pero le recomiendo que presione al operador del servidor para solucionar este problema.

@Lukasa : ¡gracias por trabajar en esto con todos! He leído y probado la mayor parte de esto

Asunto

Cuando se ejecuta el script en Windows, todo funciona.
Al ejecutar el script en OSX, reciba:

raise SSLError(e, request=request)
requests.exceptions.SSLError: ("bad handshake: SysCallError(-1, 'Unexpected EOF')",)

No estoy convencido de que no sea el servidor en sí, pero agradecería cualquier ayuda adicional para confirmar y/o sacarme de este agujero de conejo. Sería una gran victoria hacer que funcione.

Especificaciones de OSX:

  • Pitón Pitón 2.7.10
  • OpenSSL OpenSSL 1.1.1-dev xx XXX xxxx (compilado a través de GitHub)
  • usando PIP para instalar

Intentos realizados

  • pyopenssl desinstalado, solicitudes, solicitudes [seguridad], criptografía
  • instalado contra env ARCHFLAGS="-arch x86_64" LDFLAGS="-L/usr/local/opt/openssl/lib" CFLAGS="-I/usr/local/opt/openssl/include" pip install --force-reinstall --no-cache-dir {PACKAGE}

No estoy 100% seguro de que la instalación contra el openssl realmente haya hecho algo, ya que parecía actuar igual que la instalación sin (por ejemplo, la velocidad y la mensajería parecían todas iguales)

Como se indica en otro hilo (arriba), ¿conectarse directamente a través de openSSL appears para ser feliz?

openssl s_client -connect XXX.102.7.147:443
CONNECTED(00000003)
write:errno=0
---
no peer certificate available
---
No client certificate CA names sent
---
SSL handshake has read 0 bytes and written 198 bytes
Verification: OK
---
New, (NONE), Cipher is (NONE)
Secure Renegotiation IS NOT supported
Compression: NONE
Expansion: NONE
No ALPN negotiated
SSL-Session:
    Protocol  : TLSv1.2
    Cipher    : 0000
    Session-ID:
    Session-ID-ctx:
    Master-Key:
    PSK identity: None
    PSK identity hint: None
    SRP username: None
    Start Time: 1493384325
    Timeout   : 7200 (sec)
    Verify return code: 0 (ok)
    Extended master secret: no
---

Eh... OpenSSL está técnicamente bien, pero ese OpenSSL no negoció ningún cifrado (es decir, parece haber negociado SSL_NULL_WITH_NULL_NULL . ¿Puedes ejecutar ssllabs en tu servidor y verificar qué suites de cifrado admite?

@Lukasa No está expuesto en Internet, ¿hay alguna sonda de línea de comandos que pueda activar y que pueda brindarle información adecuada?

Podrías probar con cipherscan .

@Lukasa lo instaló... está actuando raro (sin salida, observándolo)... lo publicaré si se me ocurre algo que pueda transmitirse. ¡Gracias por la guía!

@Lukasa muchas gracias por su ayuda, en realidad nunca funcionó el cipherscan, pero corrigió nuestros problemas. No tuvo nada que ver con nada de esto, y fue una discrepancia de IP tonta en nuestros entornos... ¡lecciones aprendidas! gracias ...

No hay problema, me alegro de que lo hayas solucionado.

streamlink -l debug h ttpstream://https :// www.arconaitv.us/stream.php?id=43 peor
¡[cli][info] streamlink se está ejecutando como root! ¡Ten cuidado!
[cli][depurar] SO: Linux-4.14.0-041400-generic-x86_64-with-Ubuntu-14.04-trusty
[cli][depurar] Python: 2.7.6
[cli][depuración] Streamlink: 0.13.0+27.g2ff314c
[cli][depuración] Solicitudes (2.19.1), Calcetines (1.6.7), Websocket (0.48.0)
[cli][info] Complemento coincidente encontrado http para URL h ttpstream://https :// www.arconaitv.us/stream.php?id=43
[plugin.http][depuración] URL= https://www.arconaitv.us/stream.php?id=43; parámetros={}
[cli][info] Transmisiones disponibles: en vivo (peor, mejor)
[cli][info] Transmisión de apertura: en vivo (http)
[cli][debug] Pre-buffering 8192 bytes
[cli][info] Jugador inicial: /usr/bin/vlc
[cli][debug] Escribiendo flujo a salida
[cli][info] Transmisión finalizada
[cli][info] Cerrando flujo actualmente abierto..

intentado pero sin suerte

atlast consiguió que funcione tvplayer en la pc local. Instalé tinyproxy en mi PC local pero en vps httpproxy xxxx no funciona.
¿Está bien tinyproxy o necesito algún otro servidor proxy para instalarlo en mi PC local?

tinyproxy.txt

Hola @maanich , esto no parece estar directamente relacionado con este problema, o ser un informe de defectos para las solicitudes, que es para lo que está reservado este rastreador de problemas. Si tiene preguntas sobre la configuración del sistema, se resolverán mejor en una plataforma como StackOverflow . ¡Gracias!

streamlink --https-proxy " http://8xxxx :8000/" --tvplayer-email [email protected] --tvplayer-password vcvdf3 --http-no-ssl-verify https://tvplayer.com/watch /itv mejor --player-no-close --stdout | /var/tmp/youtube/ffmpeg -y -i pipe:0 -vcodec copy -acodec copy -flags -global_header -hls_flags delete_segments -hls_time 10 -hls_list_size 6 /mnt/hls/arc.m3u8
ffmpeg versión 4.0-static https://johnvansickle.com/ffmpeg/ Copyright (c) 2000-2018 los desarrolladores de FFmpeg
construido con gcc 6.3.0 (Debian 6.3.0-18+deb9u1) 20170516
configuración: --enable-gpl --enable-version3 --enable-static --disable-debug --disable-ffplay --disable-indev=sndio --disable-outdev=sndio --cc=gcc-6 -- enable-libxml2 --enable-fontconfig --enable-frei0r --enable-gnutls --enable-gray --enable-libaom --enable-libfribidi --enable-libass --enable-libfreetype --enable-libmp3lame -- habilitar-libopencore-amrnb --habilitar-libopencore-amrwb --habilitar-libopenjpeg --habilitar-librubberband --habilitar-libsoxr --habilitar-libspeex --habilitar-libvorbis --habilitar-libopus --habilitar-libtheora --habilitar -libvidstab --enable-libvo-amrwbenc --enable-libvpx --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxml2 --enable-libxvid --enable-libzimg
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
formato libav 58. 12.100 / 58. 12.100
dispositivo libav 58. 3.100 / 58. 3.100
filtro libav 7. 16.100 / 7. 16.100
libswscale 5. 1.100 / 5. 1.100
libswresamp 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
¡[consola] [info] streamlink se está ejecutando como root! ¡Ten cuidado!
[consola][info] Se encontró el complemento tvplayer coincidente para la URL https://tvplayer.com/watch/itv
Error: No se puede abrir URL: https://live.tvplayer.com/stream.m3u8?id=204&Policy=eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoiaHR0cCo6XC9cL2xpdmUudHZwbGF5ZXIuY29tXC9zdHJlYW0ubTN1OD9pZD0yMDQiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjE1MjkwNTc0OTR9LCJJcEFkZHJlc3MiOnsiQVdTOlNvdXJjZUlwIjoiNjIuMjEwLjE0Mi42NlwvMzIifX19XX0_&Signature=mHOteYcUu4QsbGD n0e ~ 7meDUGT8VN7bVOBAHa-0Mk6ROA9XHYx3aIAZMAo3dFjOGuWk-3MszJzRFHdv ~ ~ -CCsmX3D8XQa2zvzfuIWfMAT yDshroXBN25iW6ZJ0-7lGla00jMTUpm5sW-uDy18OkiBWgGvDVas2Lz-EW ~ 5-LTw2YWvEpqkvRB9OpcsHJj9RRQLuDVjwYKXwKvHTJmB1J ~sGE3aigaL7AZyBaIAUMcpk-xYMPDuPV9BsBN9AT397lFfRPFt155u~yeBHZ4JlUN2GINUBt0-CzGuYVq3dsO kYYEZJo9cQTVhArpo7ek03VbDP5egtCM8obN63AEkA__&Key-Pair-Id=APKAJGWDVCU5SXAPJELQ (403 Prohibido) Error de cliente
pipe:0 : se encontraron datos no válidos al procesar la entrada

consejo, por favor, qué servidor proxy es bueno para streamlink, si lo hay

¿Fue útil esta página
0 / 5 - 0 calificaciones