Skip to main content
Cybersicherheit

Was ist Hashing?

Hashing ist eine grundlegende Technik der Datensicherheit. Erfahren Sie, wie Hashing funktioniert und welche Rolle es beim Schutz sensibler Informationen spielt.

Von SentinelOne
Was ist Hashing?

Hashing ist ein grundlegendes Konzept der Kryptografie und Informationssicherheit. Unser Leitfaden erklärt die Prinzipien des Hashings, die Funktionsweise kryptografischer Hashfunktionen und ihre Bedeutung für den Schutz sensibler Daten.

Lernen Sie verschiedene Arten von Hashfunktionen, ihre Eigenschaften und typische Anwendungen kennen, etwa die Speicherung von Passwörtern, die Prüfung der Datenintegrität und digitale Signaturen. Erfahren Sie, wie Sie die passende Hashfunktion für Ihren Anwendungsfall auswählen und sichere Hashing-Verfahren in Ihrem Unternehmen umsetzen.

Hashing - Featured Image | SentinelOne

Was ist ein Hashing-Algorithmus?

Hashwerte sind das Ergebnis eines Hash-Algorithmus wie MD5 (Message Digest 5) oder SHA (Secure Hash Algorithm). Diese Algorithmen erzeugen für beliebige Daten oder „Nachrichten“ eine möglichst eindeutige Zeichenfolge fester Länge – den Hashwert oder „Message Digest“. Da jede Datei auf einem Computer letztlich aus Daten besteht, die sich binär darstellen lassen, kann ein Hash-Algorithmus diese Daten komplex berechnen und als Ergebnis eine Zeichenfolge fester Länge ausgeben. Dieses Ergebnis ist der Hashwert oder Message Digest der Datei.

Um den Hashwert einer Datei in Windows 10 zu berechnen, verwenden Sie das integrierte PowerShell-Cmdlet Get-FileHash und geben den Pfad der betreffenden Datei an. Standardmäßig verwendet es den Algorithmus SHA-2 256:

image of use powershell to create hash

Mit dem Schalter -Algorithm nach dem Dateipfad können Sie einen anderen Algorithmus angeben. Wenn Sie das Ergebnis an Format-List übergeben, erhalten Sie außerdem eine besser lesbare Ausgabe:

image of powershell formatted hash values

Für Nutzer von Mac und Linux erfüllen die Kommandozeilenprogramme shasum und md5 denselben Zweck. Wie wir gleich sehen werden, ist der Hashwert für eine bestimmte Datei und einen bestimmten Hashing-Algorithmus identisch, unabhängig davon, ob Sie Windows, Mac oder Linux verwenden.

Wie Hashwerte die Identität einer Datei nachweisen

Hashwerte lassen sich nicht umkehren. Wenn Sie den Hashwert einer Datei kennen, können Sie daraus ihren Inhalt nicht rekonstruieren. Sie können jedoch feststellen, ob zwei Dateien identisch sind, ohne etwas über ihren Inhalt zu wissen.

Deshalb ist die Eindeutigkeit des Ergebnisses für das gesamte Konzept der Hashwerte entscheidend. Würden zwei verschiedene Dateien denselben Hashwert erzeugen, läge eine „Kollision“ vor und der Hashwert wäre kein zuverlässiger Identifikator für die Datei.

Kollisionen sind selten, aber möglich. Deshalb haben sicherere Algorithmen wie SHA-2 die Verfahren SHA-1 und MD5 abgelöst. Beispielsweise unterscheiden sich die Inhalte der beiden folgenden Dateien, ship.jpg und plane.jpg deutlich, wie ein Blick auf die Bilder zeigt. Sie sollten daher unterschiedliche Hashwerte erzeugen.

image of md5 collision example

Berechnen wir die Werte jedoch mit MD5, erhalten wir eine Kollision: Die Dateien erscheinen fälschlicherweise als identisch. Die Ausgabe stammt hier aus der Kommandozeile von macOS mit Terminal.app. Der Hashwert von ship.jpg entspricht dem Wert, den wir zuvor mit PowerShell erhalten haben:

image of md5 example

Berechnen wir den Hashwert mit SHA-2 256. Jetzt erhalten wir das erwartete, genauere Ergebnis: Die Dateien unterscheiden sich tatsächlich:

image of shasum example

Wofür wird Hashing verwendet?

Ein eindeutiger Identifikator für eine Datei lässt sich auf verschiedene Weise nutzen. Manche älteren AV-Produkte verlassen sich ausschließlich auf Hashwerte, um Dateien als schädlich einzustufen, ohne ihren Inhalt oder ihr Verhalten zu prüfen. Dazu führen sie eine interne Datenbank mit Hashwerten bekannter Malware. Beim Scannen eines Systems berechnet die AV-Engine den Hashwert jeder ausführbaren Datei auf dem Gerät des Nutzers und sucht in ihrer Datenbank nach einer Übereinstimmung.

In der Anfangszeit der Cybersecurity schien das vermutlich ein guter Ansatz zu sein. Rückblickend sind die Schwächen einer ausschließlichen Prüfung von Hashwerten jedoch offensichtlich.

Erstens ist die Pflege einer Signaturdatenbank angesichts der explosionsartig gestiegenen Zahl von Malware-Samples zu einer Aufgabe geworden, die sich schlicht nicht skalieren lässt. Schätzungen zufolge tauchen täglich mehr als 500.000 unterschiedliche Malware-Samples auf. Das liegt höchstwahrscheinlich zu einem großen Teil daran, dass Malware-Autoren erkannt haben, wie leicht sich AV-Engines täuschen lassen, die Samples anhand von Hashwerten erkennen. Ein Angreifer muss lediglich ein zusätzliches Byte an das Ende einer Datei anhängen, damit sie einen anderen Hashwert erhält.

Image of Hashing Used For

Der Vorgang ist so einfach, dass Malware-Entwickler ihn automatisieren können. So kann dieselbe URL Opfern alle paar Sekunden dieselbe Malware mit einem anderen Hashwert bereitstellen.

Zweitens muss eine Bedrohung bekannt sein, bevor ältere AV-Produkte sie erkennen können. Ein Anti-Malware-Produkt, das auf einer Datenbank bekannter Hashwerte beruht, ist dem nächsten Angriff daher zwangsläufig einen Schritt hinterher.

Die Antwort darauf ist ein Sicherheitsprodukt, das verhaltensbasierte KI nutzt und einen mehrschichtigen Verteidigungsansatz verfolgt.

Das bedeutet jedoch nicht, dass Hashwerte nutzlos sind! Im Gegenteil: Eine Datei eindeutig identifizieren zu können, bietet weiterhin wichtige Vorteile. Hashwerte finden sich in digitalen Signaturen und Zertifikaten, etwa bei der Codesignierung und bei SSL. Sie dienen dazu, die Echtheit einer Datei, Website oder heruntergeladenen Datei nachzuweisen.

image of ssl certificate hash

Hashwerte sind auch für Sicherheitsforscher, SOC-Teams, Malware-Researcher und Reverse Engineers wertvoll. Eine der häufigsten Anwendungen von Hashwerten in technischen Berichten hier auf SentinelOne und anderswo ist der Austausch von Kompromittierungsindikatoren. Mithilfe von Hashwerten können Researcher auf Malware-Samples verweisen und sie über Malware-Repositories wie VirusTotal, VirusBay, Malpedia und MalShare mit anderen teilen.

image of virus bay malware repository

Vorteile von Hashwerten beim Threat Hunting

Threat Hunting wird durch Hash-Werte ebenfalls erleichtert. Sehen wir uns an, wie ein IT-Administrator in der SentinelOne-Managementkonsole mithilfe von Hash-Werten auf allen Geräten nach Bedrohungen suchen kann.

Hash-Werte sind besonders nützlich, wenn Sie auf einem Gerät eine Bedrohung erkennen und prüfen möchten, ob die betreffende Datei auch in Ihrem übrigen Netzwerk vorhanden ist. Klicken Sie in der SentinelOne-Managementkonsole auf das Visibility-Symbol und starten Sie eine neue Abfrage. In diesem Beispiel verwenden wir nur den SHA1-Hash der Datei und suchen nach Vorkommen in den letzten drei Monaten.

image of threat hunting

Wir sehen einige Treffer. Doch damit sind die Möglichkeiten noch nicht ausgeschöpft. Die Hash-Suche führt uns zur TrueContext ID. Von dort aus können wir die Untersuchung vertiefen und genau nachvollziehen, was die Datei getan hat: welche Prozesse sie erstellt, welche Dateien sie verändert und welche URLs sie kontaktiert hat. Kurz gesagt: Ausgehend vom Datei-Hash können wir mit wenigen Klicks den gesamten Angriffsverlauf rekonstruieren.

image of sentinelone true context ID 
Callout Background Image Gradient

KI-gestützte Cybersicherheit

Verbessern Sie Ihre Sicherheitslage mit Echtzeit-Erkennung, maschineller Reaktion und vollständiger Transparenz Ihrer gesamten digitalen Umgebung.

Fazit

Hash-Werte sind ein grundlegendes Werkzeug der Computersicherheit. Mit sicheren Hash-Algorithmen, die Kollisionen vermeiden, lässt sich zuverlässig feststellen, ob zwei Dateien identisch sind. Wie wir gesehen haben, können zwei Dateien jedoch das gleiche Verhalten und die gleiche Funktionalität aufweisen, ohne denselben Hash-Wert zu haben. Sich bei der AV-Erkennung allein auf identische Hash-Werte zu verlassen, ist daher ein fehlerhafter Ansatz.

Dennoch sind Hash-Werte für Sicherheitsanalysten nützlich, etwa beim Austausch von IOCs und beim Threat Hunting. Wenn Sie im Bereich Computer- oder Netzwerksicherheit arbeiten, werden Ihnen Hash-Werte zweifellos täglich begegnen.


Hat Ihnen dieser Artikel gefallen? Folgen Sie uns auf LinkedIn, Twitter, YouTube oder Facebook, um unsere Beiträge zu sehen.

Mehr über Cybersecurity erfahren

"

Häufige Fragen zum Hashing

Hashing ist ein Einwegverfahren, das Daten in eine Zeichenfolge fester Länge umwandelt. Der Vorgang lässt sich nicht umkehren, um die ursprünglichen Daten wiederherzustellen. Ein Hash-Wert funktioniert wie ein digitaler Fingerabdruck: Dieselbe Eingabe erzeugt immer denselben Hash-Wert, während unterschiedliche Eingaben völlig unterschiedliche Ergebnisse liefern. Hashing schützt Passwörter, prüft die Integrität von Dateien und stellt fest, ob Daten manipuliert wurden. Es ist für die Blockchain-Technologie und digitale Signaturen unverzichtbar.

Ein gängiges Beispiel: Wird das Wort „hello“ mit SHA-256 gehasht, entsteht der Wert „2cf24dba4f21d4288094c30e2ede82c380cac19544bb5c4ab02f5b2db38500d3“. Ändern Sie nur einen Buchstaben zu „Hello“, erhalten Sie einen völlig anderen Hash-Wert. Auch Passwortsysteme verwenden Hashing: Wenn Sie ein Passwort erstellen, wird es gehasht und gespeichert. Bei der Anmeldung wird Ihr eingegebenes Passwort gehasht und mit dem gespeicherten Hash-Wert verglichen. Bei der Prüfung der Dateiintegrität lassen sich mithilfe von Hashing ebenfalls Änderungen erkennen.

Hashing schützt die Datenintegrität, indem es unbefugte Änderungen erkennbar macht. Es schützt Passwörter, weil sie selbst nach einer Kompromittierung der Datenbank nicht im Klartext vorliegen. Sie können prüfen, ob heruntergeladene Dateien beschädigt oder mit Malware infiziert wurden. Hashing bildet die Grundlage für digitale Signaturen und sichere Kommunikationsprotokolle. Auch für die Blockchain-Technologie und die Sicherheit von Kryptowährungen ist es unverzichtbar. Ohne Hashing könnten Sie nicht darauf vertrauen, dass Daten bei der Übertragung oder Speicherung unverändert bleiben.

Die wichtigsten Familien von Hash-Algorithmen sind MD (Message Digest), SHA (Secure Hash Algorithm) und RIPEMD. MD5 erzeugt 128-Bit-Hash-Werte, gilt heute aber als unsicher. SHA-256 ist derzeit am weitesten verbreitet und erzeugt 256-Bit-Hash-Werte. SHA-3 ist der neueste Standard und wurde entwickelt, um ältere Algorithmen zu ersetzen. Die Verfahren unterscheiden sich hinsichtlich ihrer Sicherheit, Hash-Länge und Rechenanforderungen. Moderne Systeme bevorzugen SHA-256 oder SHA-3 für sicherheitskritische Anwendungen.

Hashing ist ein Einwegverfahren und lässt sich nicht umkehren. Verschlüsselung hingegen ist umkehrbar. Hashing erzeugt unabhängig von der Größe der Eingabe stets ein Ergebnis fester Länge. Bei der Verschlüsselung hängt die Länge des Ergebnisses von den Eingabedaten ab. Hashing prüft die Integrität von Daten, während Verschlüsselung ihre Vertraulichkeit schützt. Mit dem richtigen Schlüssel können Sie verschlüsselte Daten entschlüsseln, einen Hash-Wert jedoch nicht in die ursprünglichen Daten zurückverwandeln. Beide Verfahren erfüllen unterschiedliche Sicherheitszwecke und werden häufig gemeinsam eingesetzt.

Hashing schützt Daten, indem es die Rekonstruktion der ursprünglichen Informationen unmöglich macht. Selbst wenn Angreifer gehashte Passwörter stehlen, können sie die tatsächlichen Passwörter nicht ohne Weiteres ermitteln. Jede Änderung der Originaldaten erzeugt einen völlig anderen Hash, sodass Manipulationen erkennbar werden. Hashing benötigt keine Verschlüsselungsschlüssel, sodass kein Schlüssel kompromittiert werden kann. Es ermöglicht die Überprüfung der Datenintegrität, ohne die eigentlichen Inhalte offenzulegen. Damit eignet es sich ideal für die Speicherung von Passwörtern und die Überprüfung von Dateien.

Hashing ermöglicht den schnellen Abruf und die Verifizierung von Daten. Es gewährleistet die Datenintegrität, ohne den ursprünglichen Inhalt offenzulegen. Geeignete Hashing-Verfahren verbessern die Passwortsicherheit erheblich. Die Überprüfung der Dateiintegrität wird einfach und zuverlässig. Hashing ermöglicht Blockchain-Technologie und sichere Transaktionen. Es ist recheneffizient und erfordert keine Schlüsselverwaltung. Digitale Signaturen und Authentifizierungssysteme sind für ihre Sicherheit auf Hashing angewiesen. Auch Datendeduplizierung und eine effiziente Speicherverwaltung profitieren von Hashing.

Mehr erfahren über Cybersicherheit

Decorative background gradient

Erleben Sie die fortschrittlichste Cybersicherheitsplattform

Erfahren Sie, wie die intelligenteste, autonome Cybersicherheitsplattform der Welt Ihr Unternehmen heute und in Zukunft schützen kann.
Dark dashboard UI with purple-highlighted nav, summary cards showing 149, 7, 78, 56, 1.2 h, and a status table with linked purple text