Wie schützen wir den https-Port von AEM vor neueren SSL / TLS Sicherheitslücken? Zum Beispiel LOGJAM oder SWEET32.

Umgebung

AEM 6.x

Schritte

Um sich gegen verschiedene SSL-Schwachstellen auf dem HTTPS-Port einer AEM-Instanz zu schützen, führen Sie die unten aufgelisteten Schritte aus.

  1. Melden Sie sich bei Ihrem AEM-Server und fügem Sie den JVM-Parameter unten dem Java-Befehl hinzu:

    -Djdk.tls.ephemeralDHKeySize=2048

    Wenn Sie das out-of-the-box-crx-quickstart/bin/start-Skript verwenden, dann geschieht dies durch Hinzufügen der obigen Variable zur CQ_JVM_OPTS-Variablen.

  2. Starten Sie AEM neu, nachdem Sie die JVM-Option hinzugefügt haben.  Sie können bestätigen, dass die JVM-Option / Systemeigenschaft auf diesem Bildschirm https://aem-host:port/system/console/jmx/java.lang%3Atype%3DRuntime aufgenommen wurde.  Durchsuchen Sie die Seite und bestätigen Sie, dass die Eigenschaft jdk.tls.ephemeralDHKeySize auf 2048

  3. Wenn Sie https-Unterstützung konfiguriert haben, dann gehen Sie zu https://aem-host:port/crx/de/index.jsp und melden Sie sich als Administrator an.

  4. Navigieren Sie zu /apps/system/config/org.apache.felix.http.config.

  5. Ändern Sie die Konfigurationsdatei.  Ersetzen Sie die vier unten aufgeführten Konfigurationseigenschaften in der Datei durch die angegebenen Werte [1].  Wenn eine Variable in Ihrer Konfiguration nicht existiert, dann kopieren Sie sie an das Ende der Konfigurationsdatei.  

    • 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

    Eine Konfigurationsdatei wird unten bereitgestellt [2].

  6. Klicken Sie auf Alle Speichern

  7. Nach dem Anwenden der aktualisierten Konfiguration überprüfen Sie, ob die Konfiguration wirksam wurde.  Gehen Sie zu dieser URL https://aem-host:port/system/console/configMgr/org.apache.felix.http.config und überprüfen Sie die Konfiguration, um zu sehen, dass die Eigenschaftswerte übertragen wurden.

  8. Verwenden Sie ein Tool wie testssh.sh, um sicherzustellen, dass das System nicht mehr anfällig ist.

Weitere Informationen

Es wird empfohlen, die Systeme mit der optimalen Sicherheit zu konfigurieren, um direkt auf die AEM zuzugreifen. [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] Beispiel von /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"

Dieses Werk unterliegt den Bedingungen der Creative Commons Attribution-Noncommercial-Share Alike 3.0 Unported License.  Twitter™- und Facebook-Beiträge fallen nicht unter die Bedingungen der Creative Commons-Lizenz.

Rechtliche Hinweise   |   Online-Datenschutzrichtlinie