Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
hassh — HASSH ist ein Netzwerk-Fingerprinting-Standard, mit dem sich spezifische SSH-Client- und SSH-Server-Implementierungen identifizieren lassen. Die Fingerprints können in Form eines kleinen MD5-Fingerprints einfach gespeichert, durchsucht und geteilt werden. | Kitploit
Tools/GitHubGitHub/salesforce/hassh
Management von Indicators of Compromise (IOC)IoT-SicherheitForensikNetzwerksicherheitBedrohungsanalyseEinbruchserkennungIncident ResponseAnomalieerkennungArchived
GitHubsalesforce/hassh

hassh

HASSH ist ein Netzwerk-Fingerprinting-Standard, mit dem sich spezifische SSH-Client- und SSH-Server-Implementierungen identifizieren lassen. Die Fingerprints können in Form eines kleinen MD5-Fingerprints einfach gespeichert, durchsucht und geteilt werden.

554779vor 1 JahrVon Kitploit geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Repository anzeigen
Teilen

„HASSH“ – eine Profiling-Methode für SSH-Clients und -Server.

„HASSH“ ist ein Netzwerk-Fingerprinting-Standard, der zur Identifizierung spezifischer SSH-Client- und Server-Implementierungen verwendet werden kann. Die Fingerabdrücke können leicht in Form eines MD5-Fingerprints gespeichert, durchsucht und geteilt werden.

HASSH wurde 2018 bei Salesforce entwickelt. Das Projekt wird jedoch nicht mehr aktiv von Salesforce gepflegt. Der ursprüngliche Entwickler Ben Reardon verwaltet den aktiven Fork bei Corelight.

License: BSD 3-Clause License

Wobei HASSH helfen kann:

  • Einsatz in stark kontrollierten, gut verstandenen Umgebungen, in denen alle Fingerprints außerhalb eines bekannten Gut-Sets alarmierbar sind.
  • Es ist möglich, Brute-Force- oder Credential-Stuffing-Passwortversuche auf einer feineren Granularitätsebene zu erkennen, zu kontrollieren und zu untersuchen als die IP-Quelle – die durch NAT oder botnetzartiges Verhalten beeinträchtigt sein kann. Der hassh ist ein Merkmal der spezifischen Client-Softwareimplementierung, die verwendet wird, selbst wenn die IP-Adresse per NAT so geteilt wird, dass sie von vielen anderen SSH-Clients verwendet wird.
  • Erkennung von verdeckter Datenexfiltration innerhalb der Komponenten der Client-Algorithmussätze. In diesem Fall kann ein speziell codierter SSH-Client Daten aus einer vertrauenswürdigen in eine weniger vertrauenswürdige Umgebung in einer Reihe von SSH_MSG_KEXINIT-Paketen versenden. In einem Szenario ähnlich der bekannteren Exfiltration über DNS könnten Daten als eine Reihe von versuchten, aber unvollständigen und nicht protokollierten Verbindungen zu einem von Angreifern kontrollierten SSH-Server gesendet werden, die diese Daten dann aufzeichnen, decodieren und in ihre ursprüngliche Form rekonstituieren können. Bislang werden solche Versuche – geschweige denn die Inhalte der Klartextpakete – selbst von ausgereiften Paketanalysatoren oder auf Endpunktsystemen nicht protokolliert. Die Erkennung dieser Art von Exfiltration kann nun einfach durch Anomalieerkennung oder Alarmierung bei SSH-Clients mit mehreren verschiedenen hassh-Werten durchgeführt werden.
  • Einsatz zusammen mit anderen kontextuellen Indikatoren, z.B. Erkennung von Netzwerkerkundung und Lateral-Movement-Versuchen durch ungewöhnliche hassh-Werte, wie sie z.B. von Paramiko, PowerShell, Ruby, Meterpreter, Empire verwendet werden.
  • Teilen von bösartigen hassh-Werten als Indicators of Compromise.
  • Schaffung einer zusätzlichen Ebene der Client-Anwendungssteuerung, z.B. könnte man alle Clients blockieren, die sich mit einem SSH-Server verbinden, wenn sie außerhalb eines genehmigten Satzes bekannter hassh-Werte liegen.
  • Beitrag zur Nichtabstreitbarkeit in einem forensischen Kontext – auf einer höheren Abstraktionsebene als die IP-Quelle – die durch NAT beeinträchtigt sein kann, oder wenn mehrere IP-Quellen verwendet werden.
  • Erkennung von betrügerischen Anwendungen. Z.B. ein hasshServer-Wert, der bekanntermaßen zur Cowrie/Kippo-SSH-Honeypot-Serverinstallation gehört, die vorgibt, ein gewöhnlicher OpenSSH-Server im Server-String zu sein.
  • Erkennung von Geräten mit einem hassh, der bekanntermaßen zu IOT-Einbettungssystemen gehört. Beispiele können Kameras, Mikrofone, Keylogger, Wanzen sein, die leicht außer Sichtweite versteckt werden könnten und leise über verschlüsselte Kanäle zu einem Steuerungsserver kommunizieren.

Wie funktioniert HASSH:

„hassh“ und „hasshServer“ sind MD5-Hashes, die aus einem bestimmten Satz von Algorithmen konstruiert werden, die von verschiedenen SSH-Client- und Serveranwendungen unterstützt werden. Diese Algorithmen werden nach dem anfänglichen TCP-Drei-Wege-Handshake als Klartextpakete, sogenannte „SSH_MSG_KEXINIT“-Nachrichten, ausgetauscht und sind ein wesentlicher Bestandteil des Aufbaus des endgültig verschlüsselten SSH-Kanals. Die Existenz und Reihenfolge dieser Algorithmen ist einzigartig genug, um als Fingerabdruck zur Identifizierung der zugrunde liegenden Client- und Serveranwendung oder der spezifischen Implementierung verwendet werden zu können, unabhängig von übergeordneten offensichtlichen Identifikatoren wie „Client“- oder „Server“-Strings.

Beispiel 1: Client-Fingerprinting – der „hassh“

Für den SFTP-Client „Cyberduck“ (genauer: SSH-2.0-Cyberduck/6.7.1.28683 (Mac OS X/10.13.6) (x86_64)) ist der Satz unterstützter Algorithmen wie folgt:

Das Zusammenfügen dieser Algorithmen mit einem Trennzeichen „;“ ergibt die hasshAlgorithms, die für detaillierte Analysen nützlich ist. [email protected],diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group14-sha256,diffie-hellman-group15-sha512,diffie-hellman-group16-sha512,diffie-hellman-group17-sha512,diffie-hellman-group18-sha512,[email protected],diffie-hellman-group15-sha256,[email protected],[email protected],diffie-hellman-group16-sha256,[email protected],[email protected],[email protected];aes128-cbc,aes128-ctr,aes192-cbc,aes192-ctr,aes256-cbc,aes256-ctr,blowfish-cbc,blowfish-ctr,cast128-cbc,cast128-ctr,idea-cbc,idea-ctr,serpent128-cbc,serpent128-ctr,serpent192-cbc,serpent192-ctr,serpent256-cbc,serpent256-ctr,3des-cbc,3des-ctr,twofish128-cbc,twofish128-ctr,twofish192-cbc,twofish192-ctr,twofish256-cbc,twofish256-ctr,twofish-cbc,arcfour,arcfour128,arcfour256;hmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96,hmac-sha2-256,hmac-sha2-512;[email protected],zlib,none

Schließlich ist der hassh einfach der MD5-Wert von hasshAlgorithms und wird zum Speichern, Durchsuchen und Teilen verwendet. Einige Beispiele folgen:

de30354b88bae4c2810426614e1b6976 Powershell Renci.SshNet.SshClient.0.0.1 (verwendet von Empire-Exploit-Modulen) fafc45381bfde997b6305c4e1600f1bf Ruby/Net::SSH_5.0.2 x86_64-linux (verwendet von Metasploit-Exploit-Modulen) b5752e36ba6c5979a575e43178908adf Python Paramiko_2.4.1 (verwendet von Metasploit-Exploit-Modulen) 16f898dd8ed8279e1055350b4e20666c Dropbear_2012.55 (verwendet in IOT-Eingebetteten Systemen)
8a8ae540028bf433cd68356c1b9e8d5b CyberDuck Version 6.7.1 (28683)
06046964c022c6407d15a27b12a6a4fb OpenSSH_7.7p1 Ubuntu-4

Beispiel 2: Server-Fingerprinting – der „hasshServer“

Für einen Standard-SSH-2.0-OpenSSH_5.3-SSH-Server ist der Satz unterstützter Algorithmen wie folgt:

Das Zusammenfügen dieser Algorithmen mit einem Trennzeichen „;“ ergibt die hasshServerAlgorithms, die für detaillierte Analysen nützlich ist. diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1;aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected];hmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96;none,[email protected]

Schließlich ist der hasshServer einfach der MD5-Wert von hasshServerAlgorithms, einige Beispiele folgen: c1c596caaeb93c566b8ecf3cae9b5a9e SSH-2.0-dropbear_2016.74 d93f46d063c4382b6232a4d77db532b2 SSH-2.0-dropbear_2016.72 2dd9a9b3dbebfaeec8b8aabd689e75d2 SSH-2.0-AWSCodeCommit
696e7f84ac571fdf8fa5073e64ee2dc8 SSH-2.0-FTP

Referenzen:

  • RFC4253 The Secure Shell (SSH) Transport Layer Protocol
  • Salesforce Engineering Blog

Danksagungen:

hassh und hasshServer wurden konzipiert und entwickelt von Ben Reardon (@benreardon) im Detection Cloud Team bei Salesforce, mit Inspiration und Beiträgen von Adel Karimi (@0x4d31) und der JA3-Crew: John B. Althouse, Jeff Atkinson und Josh Atkins.

Tool herunterladen
FunktionIn SSH_MSG_KEXINIT-Paketen gesehene Algorithmen
Schlüsselaustauschverfahren[email protected],diffie-hellman-group-exchange-sha256,ecdh-sha2-nistp521,ecdh-sha2-nistp384,ecdh-sha2-nistp256,diffie-hellman-group-exchange-sha1,diffie-hellman-group1-sha1,diffie-hellman-group14-sha1,diffie-hellman-group14-sha256,diffie-hellman-group15-sha512,diffie-hellman-group16-sha512,diffie-hellman-group17-sha512,diffie-hellman-group18-sha512,[email protected],diffie-hellman-group15-sha256,[email protected],[email protected],diffie-hellman-group16-sha256,[email protected],[email protected],[email protected]
Verschlüsselungaes128-cbc,aes128-ctr,aes192-cbc,aes192-ctr,aes256-cbc,aes256-ctr,blowfish-cbc,blowfish-ctr,cast128-cbc,cast128-ctr,idea-cbc,idea-ctr,serpent128-cbc,serpent128-ctr,serpent192-cbc,serpent192-ctr,serpent256-cbc,serpent256-ctr,3des-cbc,3des-ctr,twofish128-cbc,twofish128-ctr,twofish192-cbc,twofish192-ctr,twofish256-cbc,twofish256-ctr,twofish-cbc,arcfour,arcfour128,arcfour256
Nachrichtenauthentifizierunghmac-sha1,hmac-sha1-96,hmac-md5,hmac-md5-96,hmac-sha2-256,hmac-sha2-512
Komprimierung[email protected],zlib,none
FunktionIn SSH_MSG_KEXINIT-Paketen gesehene Algorithmen
Schlüsselaustauschverfahrendiffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1
Verschlüsselungaes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,[email protected]
Nachrichtenauthentifizierunghmac-md5,hmac-sha1,[email protected],hmac-ripemd160,[email protected],hmac-sha1-96,hmac-md5-96
Komprimierungnone,[email protected]