¿Cómo protegemos el puerto https de AEM contra las nuevas vulnerabilidades de seguridad SSL / TLS? Por ejemplo, LOGJAM o SWEET32.

Entorno

AEM 6.x

Pasos

Para protegerse contra varias vulnerabilidades SSL en un puerto HTTPS de una instancia de AEM, siga los pasos que se indican a continuación.

  1. Inicie sesión en su servidor de AEM y añada el parámetro JVM a continuación al comando java:

    -Djdk.tls.ephemeralDHKeySize=2048

    Si está usando el script crx-quickstart/bin/start, entonces esto se hace añadiendo la variable anterior a la variable CQ_JVM_OPTS.

  2. Reinicie AEM después de añadir la opción JVM.  Puede validar que la opción JVM/propiedad del sistema se ha recogido en esta pantalla https://aem-host:port/system/console/jmx/java.lang%3Atype%3DRuntime.  Busque en la página y valide que la propiedad jdk.tls.ephemeralDHKeySize está ahora establecida en 2048.

  3. Si tiene configurado el soporte para https, vaya a https://aem-host:port/crx/de/index.jsp e inicie sesión como administrador.

  4. Vaya a /apps/system/config/org.apache.felix.http.config.

  5. Modifique el archivo de configuración.  Sustituya las cuatro propiedades de configuración enumeradas a continuación en el archivo por los valores proporcionados [1].  Si una variable no existe en su configuración, cópiela al final del archivo de configuración.  

    • org.apache.felix.https.jetty.ciphersuites.excluded
    • org.apache.felix.https.jetty.ciphersuites.included
    • org.apache.felix.https.jetty.protocols.excluded
    • org.apache.felix.https.jetty.protocols.included

    A continuación se muestra un ejemplo de archivo de configuración [2].

  6. Haga clic en Guardar todo.

  7. Después de aplicar la configuración actualizada, valide que la configuración haya surtido efecto.  Vaya a esta URL https://aem-host:port/system/console/configMgr/org.apache.felix.http.config y revise la configuración para ver si los valores de las propiedades fueron transferidos.

  8. Utilice una herramienta como testssh.sh para validar que el sistema ya no es vulnerable.

Información adicional

Se recomienda configurar sus sistemas con una seguridad óptima para acceder directamente a la instancia AEM. [1]

org.apache.felix.https.jetty.ciphersuites.excluded=[\
"SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA",\
"SSL_DHE_DSS_WITH_AES_128_CBC_SHA",\
"SSL_DHE_DSS_WITH_AES_256_CBC_SHA",\
"SSL_DHE_DSS_WITH_DES_CBC_SHA",\
"SSL_DHE_DSS_WITH_RC4_128_SHA",\
"SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA",\
"SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"SSL_DHE_RSA_WITH_AES_128_CBC_SHA",\
"SSL_DHE_RSA_WITH_AES_256_CBC_SHA",\
"SSL_DHE_RSA_WITH_DES_CBC_SHA",\
"SSL_RSA_EXPORT_WITH_DES40_CBC_SHA",\
"SSL_RSA_EXPORT_WITH_RC4_40_MD5",\
"SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA",\
"SSL_RSA_FIPS_WITH_DES_EDE_CBC_SHA",\
"SSL_RSA_WITH_DES_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA",\
"TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_DH_anon_WITH_3DES_EDE_CBC_SHA",\
"TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA",\
"TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"PCT_SSL_CIPHER_TYPE_1ST_HALF",\
"SSL_DH_anon_EXPORT_WITH_RC4_40_MD5",\
"SSL_DH_anon_WITH_RC4_128_MD5",\
"SSL_RSA_EXPORT_WITH_RC4_40_MD5",\
"SSL_RSA_WITH_RC4_128_MD5",\
"SSL_RSA_WITH_RC4_128_SHA",\
"SSL2_RC4_128_EXPORT40_WITH_MD5",\
"SSL2_RC4_128_WITH_MD5",\
"SSL2_RC4_64_WITH_MD5",\
"TLS_DH_Anon_EXPORT_WITH_RC4_40_MD5",\
"TLS_DH_Anon_WITH_RC4_128_MD5",\
"TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA",\
"TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA256",\
"TLS_DHE_DSS_WITH_RC4_128_SHA",\
"TLS_DHE_DSS_WITH_RC4_128_SHA256",\
"TLS_DHE_PSK_WITH_RC4_128_SHA",\
"TLS_DHE_PSK_WITH_RC4_128_SHA256",\
"TLS_ECDH_Anon_WITH_RC4_128_SHA",\
"TLS_ECDH_Anon_WITH_RC4_128_SHA256",\
"TLS_ECDH_ECDSA_WITH_RC4_128_SHA",\
"TLS_ECDH_ECDSA_WITH_RC4_128_SHA256",\
"TLS_ECDH_RSA_WITH_RC4_128_SHA",\
"TLS_ECDH_RSA_WITH_RC4_128_SHA256",\
"TLS_ECDHE_ECDSA_WITH_RC4_128_SHA",\
"TLS_ECDHE_ECDSA_WITH_RC4_128_SHA256",\
"TLS_ECDHE_PSK_WITH_RC4_128_SHA",\
"TLS_ECDHE_PSK_WITH_RC4_128_SHA256",\
"TLS_ECDHE_RSA_WITH_RC4_128_SHA",\
"TLS_ECDHE_RSA_WITH_RC4_128_SHA256",\
"TLS_KRB5_EXPORT_WITH_RC4_40_MD5",\
"TLS_KRB5_EXPORT_WITH_RC4_40_SHA",\
"TLS_KRB5_EXPORT_WITH_RC4_40_SHA256",\
"TLS_KRB5_WITH_RC4_128_MD5",\
"TLS_KRB5_WITH_RC4_128_SHA",\
"TLS_KRB5_WITH_RC4_128_SHA256",\
"TLS_PSK_WITH_RC4_128_SHA",\
"TLS_PSK_WITH_RC4_128_SHA256",\
"TLS_RSA_EXPORT_WITH_RC4_40_MD5",\
"TLS_RSA_EXPORT1024_WITH_RC4_56_MD5",\
"TLS_RSA_EXPORT1024_WITH_RC4_56_SHA",\
"TLS_RSA_EXPORT1024_WITH_RC4_56_SHA256",\
"TLS_RSA_PSK_WITH_RC4_128_SHA",\
"TLS_RSA_PSK_WITH_RC4_128_SHA256",\
"TLS_RSA_WITH_RC4_128_MD5",\
"TLS_RSA_WITH_RC4_128_SHA",\
"TLS_RSA_WITH_RC4_128_SHA256",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
".*3DES_EDE_CBC.*"\
]
org.apache.felix.https.jetty.ciphersuites.included=[ \
  "", \
  ]
org.apache.felix.https.jetty.protocols.excluded=[ \
  "SSLv3", \
  "SSL", \
  "SSLv2", \
  "SSLv2Hello", \
  "TLSv1.0", \
  "TLSv1.1", \
  ]
org.apache.felix.https.jetty.protocols.included=[ \
  "TLSv1.2"
  ]

[2] Ejemplo de /apps/system/config/org.apache.felix.http.config

# Configuration created by Apache Sling JCR Installer
org.apache.felix.http.timeout=I"60000"
org.apache.felix.http.jetty.acceptors=I"-1"
org.apache.felix.https.clientcertificate="none"
org.apache.felix.https.jetty.protocols.excluded=["SSLv3","SSL","SSLv2","SSLv2Hello","TLSv1.0","TLSv1.1"]
org.apache.felix.http.jetty.threadpool.max=I"-1"
org.osgi.service.http.port=I"4504"
org.eclipse.jetty.servlet.CheckingRemoteSessionIdEncoding=B"true"
org.apache.felix.http.enable=B"true"
org.apache.felix.https.jetty.protocols.included=["TLSv1.2"]
org.apache.felix.https.keystore="/opt/aem/author62/crx-quickstart/ssl/keystorename.keystore"
org.apache.felix.https.jetty.ciphersuites.excluded=[\
"SSL_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA",\
"SSL_DHE_DSS_WITH_AES_128_CBC_SHA",\
"SSL_DHE_DSS_WITH_AES_256_CBC_SHA",\
"SSL_DHE_DSS_WITH_DES_CBC_SHA",\
"SSL_DHE_DSS_WITH_RC4_128_SHA",\
"SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA",\
"SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"SSL_DHE_RSA_WITH_AES_128_CBC_SHA",\
"SSL_DHE_RSA_WITH_AES_256_CBC_SHA",\
"SSL_DHE_RSA_WITH_DES_CBC_SHA",\
"SSL_RSA_EXPORT_WITH_DES40_CBC_SHA",\
"SSL_RSA_EXPORT_WITH_RC4_40_MD5",\
"SSL_RSA_FIPS_WITH_3DES_EDE_CBC_SHA",\
"SSL_RSA_FIPS_WITH_DES_EDE_CBC_SHA",\
"SSL_RSA_WITH_DES_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA",\
"TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_DH_anon_WITH_3DES_EDE_CBC_SHA",\
"TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA",\
"TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_ECDSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"PCT_SSL_CIPHER_TYPE_1ST_HALF",\
"SSL_DH_anon_EXPORT_WITH_RC4_40_MD5",\
"SSL_DH_anon_WITH_RC4_128_MD5",\
"SSL_RSA_EXPORT_WITH_RC4_40_MD5",\
"SSL_RSA_WITH_RC4_128_MD5",\
"SSL_RSA_WITH_RC4_128_SHA",\
"SSL2_RC4_128_EXPORT40_WITH_MD5",\
"SSL2_RC4_128_WITH_MD5",\
"SSL2_RC4_64_WITH_MD5",\
"TLS_DH_Anon_EXPORT_WITH_RC4_40_MD5",\
"TLS_DH_Anon_WITH_RC4_128_MD5",\
"TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA",\
"TLS_DHE_DSS_EXPORT1024_WITH_RC4_56_SHA256",\
"TLS_DHE_DSS_WITH_RC4_128_SHA",\
"TLS_DHE_DSS_WITH_RC4_128_SHA256",\
"TLS_DHE_PSK_WITH_RC4_128_SHA",\
"TLS_DHE_PSK_WITH_RC4_128_SHA256",\
"TLS_ECDH_Anon_WITH_RC4_128_SHA",\
"TLS_ECDH_Anon_WITH_RC4_128_SHA256",\
"TLS_ECDH_ECDSA_WITH_RC4_128_SHA",\
"TLS_ECDH_ECDSA_WITH_RC4_128_SHA256",\
"TLS_ECDH_RSA_WITH_RC4_128_SHA",\
"TLS_ECDH_RSA_WITH_RC4_128_SHA256",\
"TLS_ECDHE_ECDSA_WITH_RC4_128_SHA",\
"TLS_ECDHE_ECDSA_WITH_RC4_128_SHA256",\
"TLS_ECDHE_PSK_WITH_RC4_128_SHA",\
"TLS_ECDHE_PSK_WITH_RC4_128_SHA256",\
"TLS_ECDHE_RSA_WITH_RC4_128_SHA",\
"TLS_ECDHE_RSA_WITH_RC4_128_SHA256",\
"TLS_KRB5_EXPORT_WITH_RC4_40_MD5",\
"TLS_KRB5_EXPORT_WITH_RC4_40_SHA",\
"TLS_KRB5_EXPORT_WITH_RC4_40_SHA256",\
"TLS_KRB5_WITH_RC4_128_MD5",\
"TLS_KRB5_WITH_RC4_128_SHA",\
"TLS_KRB5_WITH_RC4_128_SHA256",\
"TLS_PSK_WITH_RC4_128_SHA",\
"TLS_PSK_WITH_RC4_128_SHA256",\
"TLS_RSA_EXPORT_WITH_RC4_40_MD5",\
"TLS_RSA_EXPORT1024_WITH_RC4_56_MD5",\
"TLS_RSA_EXPORT1024_WITH_RC4_56_SHA",\
"TLS_RSA_EXPORT1024_WITH_RC4_56_SHA256",\
"TLS_RSA_PSK_WITH_RC4_128_SHA",\
"TLS_RSA_PSK_WITH_RC4_128_SHA256",\
"TLS_RSA_WITH_RC4_128_MD5",\
"TLS_RSA_WITH_RC4_128_SHA",\
"TLS_RSA_WITH_RC4_128_SHA256",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA",\
"TLS_RSA_WITH_3DES_EDE_CBC_SHA",\
".*3DES_EDE_CBC.*"\
]
org.apache.felix.http.path_exclusions=["/system"]
org.apache.felix.http.jetty.selectors=I"-1"
org.apache.felix.proxy.load.balancer.connection.enable=B"true"
org.eclipse.jetty.servlet.SessionDomain=""
org.apache.felix.https.jetty.renegotiateAllowed=B"false"
org.apache.felix.http.jetty.maxFormSize=I"204800"
org.apache.felix.http.jetty.sendServerHeader=B"false"
org.apache.felix.http.jetty.requestBufferSize=I"8192"
org.apache.felix.https.keystore.password="storepassword"
org.eclipse.jetty.servlet.SessionIdPathParameterName="jsessionid"
org.apache.felix.https.jetty.ciphersuites.included=[""]
org.apache.felix.http.mbeans=B"false"
org.apache.felix.http.host="0.0.0.0"
org.eclipse.jetty.servlet.SessionCookie="JSESSIONID"
org.eclipse.jetty.servlet.SessionPath=""
org.osgi.service.http.port.secure=I"54333"
org.apache.felix.https.jetty.session.cookie.httpOnly=B"true"
org.apache.felix.http.context_path="/"
org.apache.felix.https.enable=B"true"
org.apache.felix.https.keystore.key.password="key_password"
org.apache.felix.http.jetty.headerBufferSize=I"16384"
org.apache.felix.https.truststore=""
org.apache.felix.http.session.timeout=I"10"
org.eclipse.jetty.servlet.MaxAge=I"-1"
org.apache.felix.https.jetty.session.cookie.secure=B"false"
org.apache.felix.http.jetty.responseBufferSize=I"24576"

Esta obra está autorizada con arreglo a la licencia de Reconocimiento-NoComercial-CompartirIgual 3.0 Unported de Creative Commons.  Los términos de Creative Commons no cubren las publicaciones en Twitter™ y Facebook.

Avisos legales   |   Política de privacidad en línea