Deaktivieren Sie schwache Hash-basierte Nachrichtenauthentifizierungscodes (HMACs) in SSH-Diensten

Kategorien anzeigen

Deaktivieren Sie schwache Hash-basierte Nachrichtenauthentifizierungscodes (HMACs) in SSH-Diensten

2 min gelesen

Was sind HMACs #

HMACs (Hash-based Message Authentication Codes) sind kryptografische Konstrukte, die einen geheimen Schlüssel und eine Hash-Funktion verwenden, um die Integrität und Authentizität von Daten oder Nachrichten zu überprüfen. HMACs bieten eine Möglichkeit, sicherzustellen, dass Daten während der Übertragung nicht manipuliert wurden und aus einer vertrauenswürdigen Quelle stammen. Dabei werden die Daten mit einem geheimen Schlüssel kombiniert, das Ergebnis gehasht und dann mit einem Referenz-HMAC beim Empfänger verglichen. Dies bietet eine sichere Methode zur Bestätigung der Datengültigkeit in verschiedenen Anwendungen, einschließlich sicherer Kommunikations- und Authentifizierungssysteme.

In SSH-Diensten (Secure Shell) wie SSHd (SSH-Daemon) werden HMACs eingesetzt, um die Sicherheit der Kommunikation zwischen Client und Server zu verbessern. Während des SSH-Schlüsselaustauschprozesses verhandeln Server und Client über eine Reihe kryptografischer Algorithmen, darunter den HMAC-Algorithmus, der zur Überprüfung der Datenintegrität verwendet werden soll. Der gewählte HMAC-Algorithmus wird in Kombination mit einem gemeinsamen geheimen Schlüssel verwendet, um HMAC-Tags für ausgehende Pakete zu generieren und die Integrität eingehender Pakete zu überprüfen. Dadurch wird sichergestellt, dass die zwischen Client und Server ausgetauschten Daten während der Übertragung nicht verändert wurden. Dies schützt vor Manipulationen und stellt die Authentizität der Kommunikation sicher, ein wichtiger Aspekt des SSH-Sicherheitsmodells.

Deaktivieren Sie schwache Chiffren in SSHD #

Um die Sicherheit des SSHd-Dienstes zu erhöhen, müssen Sie möglicherweise die Verschlüsselungs-, MAC- und Schlüsselalgorithmen von SSH anpassen, um sicherzustellen, dass weder MD5 noch 96-Bit-HMAC verwendet werden ( hmac-md5, hmac-md5-96, hmac-sha1-96 ). Bitte führen Sie die folgenden Schritte aus.

Überprüfen Sie die vorhandene SSHd-Konfiguration #

Untersuchen Sie die aktuelle SSH-Konfiguration, um die zulässigen Chiffren, MACs und Schlüsselalgorithmen zu ermitteln. Verwenden Sie den folgenden Befehl, um diese Informationen abzurufen:

root@noid-ee-01:~# sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"
Chiffren chacha20-poly1305@openssh.com,aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com
Macs umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-256-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-sha1-etm@openssh.com,umac-64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-sha1
Kexalgorithmen curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1

SSHD-Konfiguration bearbeiten #

Um die Sicherheit zu erhöhen, sollten Sie schwächere Verschlüsselungsverfahren und MAC-Adressen deaktivieren. Bearbeiten Sie die SSHD-Konfigurationsdatei (unter /etc/ssh/sshd_config ) mit einem Texteditor (z. B. nano oder vi ) . Entfernen Sie die nicht benötigten Verschlüsselungsverfahren und MAC-Adressen und speichern Sie die Datei. Falls die Konfiguration nicht existiert, fügen Sie am Ende der Datei neue Zeilen hinzu.

ciphers aes128-ctr,aes192-ctr,aes256-ctr
macs hmac-sha1,hmac-sha2-256,hmac-sha2-512

Starten Sie den SSHD-Dienst neu #

Starten Sie den SSHD-Dienst nach den Änderungen neu, um die neue Konfiguration anzuwenden.

root@noid-ee-01:~# systemctl restart sshd

Überprüfen der neuen Konfiguration #

Überprüfen Sie die aktualisierte Konfiguration mit demselben Befehl wie zuvor.

root@nid-ee-01:~# sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"
ciphers aes128-ctr,aes192-ctr,aes256-ctr
macs hmac-sha1,hmac-sha2-256,hmac-sha2-512
kexalgorithms curve25519-sha256,curve25519-sha256@libssh.org,ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2-nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group16-sha512,diffie-hellman-group18-sha512,diffie-hellman-group14-sha256,diffie-hellman-group14-sha1

Diese Schritte tragen zur Stärkung der SSH-Sicherheit bei, indem SSH so konfiguriert wird, dass sicherere Verschlüsselungssammlungen und MACs verwendet werden, während schwächere Optionen deaktiviert werden. Dadurch wird die allgemeine Sicherheit des SSHd-Dienstes verbessert. Beachten Sie, dass das Ändern dieser Einstellungen die Kompatibilität mit älteren oder weniger sicheren SSH-Clients beeinträchtigen kann. Stellen Sie daher sicher, dass Ihre Änderungen Ihren spezifischen Sicherheitsanforderungen entsprechen.

📄 Laden Sie dieses Dokument im PDF-Format herunter #

    EMAIL: *

    Bereitgestellt von BetterDocs