Hoy la heartbleed OpenSSL explotar fue anunciado en la naturaleza, que permite a un atacante para detectar de manera subrepticia y robar claves de servidor privado (lo que les permite MitM y descifrar los datos cifrados y robar contraseñas). Esto afecta a las versiones de OpenSSL, incluida la 1.0.1f, que es la versión de mi computadora Mavericks actualizada Mac (porque usé port / brew para instalar otro software que actualizó mi openssl sin que me diera cuenta ):
$ openssl version
OpenSSL 1.0.1f 6 Jan 2014
Esto demuestra que no estoy usando la versión Mavericks de OpenSSL:
$ which openssl
/opt/local/bin/openssl
OpenSSL lanzó una solución hoy en 1.0.1g y me pregunto cómo puedo instalar esta versión fija sobre mi versión actual.
security
software-update
openssl
dr jimbob
fuente
fuente
which openssl
Podría ser informativo. Además, el principal problema no es el comando openssl, son las bibliotecas openssl (que son utilizadas por otros programas), que no son compatibles con API entre las versiones 0.9.xy 1.0.x, por lo que no desea actualizar el bibliotecas openssl proporcionadas por el sistema!MacPort
en algún momento en esta máquina que actualizó mi openssl. (Probablemente cuando estaba tratando de hacer que python2.7 funcionara). Probablemente debería eliminar esta pregunta, pero en caso de que otros cometan el mismo error, la gran respuesta de SapphireSun será útil).openssl version
devuelve 1.0.1g, pero ¿estás diciendo que losopenssl
comandos no están usando esa versión?Respuestas:
Para lo que vale, acabo de usar homebrew ( http://brew.sh/ ):
Si aparece una de las versiones malas (1.0.1a-f), puede averiguar qué versión de openssl está utilizando de esta manera:
A menudo esto es de / usr / bin. Para asegurarse de obtener la versión actualizada, coloque un enlace simbólico en / usr / local / bin para señalar el openssl actualizado, de esta manera:
Como alternativa a ese paso final, algunas personas reemplazan el openssl
/usr/bin
con un enlace simbólico a/usr/local/Cellar/openssl/1.0.1g/bin/openssl
(o cualquiera que sea su versión):Pero se sabe que esto causa problemas con algunas versiones más recientes de OSX. Es mejor insertar un nuevo enlace simbólico en / usr / local / bin, que debería tener prioridad en su ruta sobre / usr / bin.
fuente
hash -r
/usr/bin/openssl
, uno puede crear el enlace en/usr/local/bin/openssl
. Eso debería preceder/usr/bin
a su$PATH
problema y evitar cualquier problema que surja de la "Protección de integridad del sistema" en las versiones más recientes de OS X.O para aquellos que usan puertos mac, y no están preocupados por mantener la versión
simples :-)
fuente
sudo port upgrade outdated
También funciona.sudo port -f uninstall openssl @<old-version>
hizo el truco para mí :)Para resolver el crecimiento de memoria ilimitada de la extensión de solicitud de estado de OCSP (CVE-2016-6304) en macOS Sierra
brew
con la Protección de integridad del sistema habilitada:Ajuste temporalmente los permisos
/usr/local
para que brew pueda actualizar:Instale la versión actualizada de OpenSSL (probablemente desee 1.0.2i):
Es posible que desee / necesite eliminar un enlace simbólico existente para openssl de
/usr/local/bin
:Vuelva a vincular la versión de preparación adecuada:
Restaurar permisos originales en
/usr/local/bin
:fuente
$PATH
variable para mirar/usr/local/bin
?$ openssl version
me saleOpenSSL 0.9.8zh 14 Jan 2016
pero cuando corro$ brew install openssl
me saleWarning: openssl 1.0.2l is already installed
. ¿Esto significa que tengo dos versiones instaladas? ¿Qué debo hacer exactamente ahora?Quien no quiera usar brew o puertos y solo quiera reemplazar la instalación predeterminada de OpenSSL 0.9.8 siempre puede deshabilitar la protección de integridad del sistema reiniciando en modo de recuperación (cmd + R) y emitiendo
y luego compila openssl con
Reemplazó con éxito OpenSSL en ElCapitan para mí y pude compilar curl y apache httpd 2.4 sin ningún problema directamente de las fuentes. El razonamiento detrás del método que algunos podrían considerar drástico es que Apple ya no mantiene ElCapitan y no hay actualizaciones disponibles, por lo que es probable que no se rompa. En segundo lugar, le ahorra apuntar a la carpeta openssl en / usr / local para cada programa que compila haciendo que la compilación sea más robusta.
fuente