Bedeutet eine MD5-Übereinstimmung zwischen einer Torrent-Datei und einer Originaldatei eines Providers, dass die Torrent-Datei sicher ist?

3472
johnny

Ich wollte eine bestimmte Distribution von Linux herunterladen. Es wird jedoch nur Bittorent zum Download verwendet. Ich bin nicht auf bittorent interessiert. Wenn ich es jedoch benutze, wenn das MD5, das ich herunterlade, mit dem MD5 der Distrubition-Website übereinstimmt, bedeutet das, dass die Datei nicht manipuliert wurde? Dass es genau mit dem übereinstimmt, was der Anbieter hat und wenn das Original "sicher" ist, ist die heruntergeladene Torrent-Datei auch?

3
Es ist sehr wahrscheinlich, dass die Datei genau so ist, wie sie veröffentlicht wurde. Abgesehen davon kann niemand sagen, mit einem so gebrochenen Hash-Algorithmus wie MD5 heutzutage. Es ist unwahrscheinlich, dass ein Peer Daten so injizieren konnte, dass der Hash insgesamt identisch ist, die Daten jedoch unterschiedlich sind (es wäre fast unmöglich, eine Kollision zu finden, die dies tun würde). Ich gehe davon aus, dass die heruntergeladene Version dem Original entspricht. Ich möchte auch darauf hinweisen, dass Bittorrent keine schlechte Sache ist. Einige fehlerhafte Dateien werden auf diese Weise verteilt, aber .... Frank Thomas vor 9 Jahren 3
Grund genug: Ja, es wäre sicher. MD5 ist nicht 100%, daher wäre die Verwendung von SHA-1 oder etwas moderneren Systemen besser, aber es wäre sehr schwierig, mit einem ISO so zu stampfen, dass Sie es unsicher machen könnten. 2) Als Nitpick: Das Überprüfen von MD5 bedeutet nicht, dass es sicher ist. Ich kann einen Virus erstellen, Torrent und Sie die richtige Prüfsumme. ;) Hennes vor 9 Jahren 2

3 Antworten auf die Frage

6
LawrenceC

Wenn das heruntergeladene MD5 mit dem MD5 der Distrubition-Website übereinstimmt, bedeutet das, dass die Datei nicht manipuliert wurde?

Wahrscheinlich wurde nicht manipuliert. MD5 hat bekannte Angriffe, so dass es nicht so gut ist wie SHA-1. Für etwas wie das Überprüfen, ob Sie die richtige Datei haben, ist MD5 in Ordnung.

Wo MD5 irgendwie nicht ok ist, wenn Sie als gespeicherte Passwort-Hashes verwenden. Normalerweise möchten Websites und dergleichen nicht Ihr Passwort speichern, sondern einen Hashwert - und vergleichen Sie dann das von Ihnen eingegebene Passwort, um sich mit einem Hash anzumelden. Auf diese Weise kennen sie Ihr Passwort nicht. Wenn ein Hacker jedoch eine Liste von Konten mit diesen Hashes erhält, kann er möglicherweise ein Kennwort generieren, das bei der Eingabe durch MD5 denselben Hash generiert (dies wird als Hash-Kollision bezeichnet). Ich bin mir nicht sicher, wie das alles funktioniert, nur dass es mit MD5-Hash-Kollisionen möglich und einfacher ist als in der Vergangenheit.

Bittorrent verwendet SHA-1, um zu "wissen", welche Datei heruntergeladen wird und ob die Peer-Produkte gut sind oder nicht. Es ist unwahrscheinlich, dass ein böswilliger Peer schlechte Daten in den Schwarm einschleusen könnte - selbst wenn ein Peer wusste, wie man SHA-1 zerstört, müssen die meisten anderen Peers ebenfalls kooperieren. Sie können sich relativ sicher sein, dass niemand auf dem Bittorrent-Schwarm den Download beschädigen kann, vorausgesetzt, Sie haben die richtige .torrentDatei und wurden nicht in böswilliger Absicht so verändert, dass sie auf einen anderen Tracker oder die darin enthaltenen Hashes zeigen.

Ich hatte den Eindruck, dass MD5 als sicher angesehen wird, um gegen beschädigte Dateien zu schützen, nicht jedoch gegen Dateien, die absichtlich manipuliert wurden. Ajedi32 vor 9 Jahren 3
Es ist am besten, SHA-1 oder besser zu bevorzugen. LawrenceC vor 9 Jahren 0
Müssen die anderen Kollegen jedoch zusammenarbeiten? Ich bin nicht sicher, aber ich glaube, dass Sie keinen bestimmten * Block * von mehreren Peers herunterladen. Sie fordern von jedem Peer mehrere vollständige Blöcke an (die jedoch Probleme haben, dies zu überprüfen). Das Torrent-Protokoll enthält keinen Hash der gesamten Datei, sondern nur Hashes der einzelnen Blöcke und möglicherweise Hashes dieser Hashes. Wenn ein Angreifer SHA-1 irgendwie gebrochen hat (was eine außergewöhnliche Leistung wäre), könnten sie den ganzen Tag lang manipulierte Blöcke schicken, und niemand würde das bemerken oder sich beschweren. Alexis Beingessner vor 9 Jahren 1
Es stimmt, ich habe nachgesehen und die .torrent-Datei hat keinen Hashwert der gesamten Datei. Ja, ich denke, Kollegen müssen nicht kooperieren, wenn sie SHA-1 gebrochen haben. Ich weiß nicht, warum ich dachte, es hätte einen Hash der gesamten Datei. Ich denke, es sollte ... Obwohl ich nicht weiß, würde das Hashing von 100 GBytes Daten zu lange dauern. LawrenceC vor 9 Jahren 0
Ich war auch überrascht. Ich hatte gedacht, dass es tatsächlich einen ganzen Baum von Hashes von den einzelnen Blöcken bis hin zur ganzen Datei gab, aber es stellt sich heraus, dass es sich bei jedem Baum nur um einen merkle-Baum handelt, der nur Hashes der Hashes ist. Ich hatte auch gedacht, dass Magnetlinks den gesamten Hash der Datei als URI verwenden, aber es stellt sich heraus, dass es sich nur um einen anderen Hash der relevanten Torrents handelt. Ich bin enttäuscht, ich hatte gedacht, Torrents hätten eine robustere Prüfsumme, die eine ganze Hierarchie von Hash-Kollisionen erfordern würde - sogar für MD5 unlösbar. Es ist "nur" so sicher wie SHA-1. Alexis Beingessner vor 9 Jahren 0
"Kollisionen sind kein Problem beim Passwort-Hashing", siehe [diesen Beitrag] (http://security.stackexchange.com/a/31846) (insbesondere der Abschnitt "Kollisionen und MD5"). ComFreek vor 9 Jahren 0
Vielleicht denke ich an Regenbogentische. LawrenceC vor 9 Jahren 0
2
ben

Ja, es ist wahrscheinlich in Ordnung.

Ich verwende md5 häufig in meiner täglichen Arbeit mit sysadmin, also habe ich mich intensiv mit Sicherheitsfragen beschäftigt. Einige großartige Links dazu gefunden und Sicherheitsbedenken und Verwendung von Hashes in einem Blogbeitrag zusammengefasst

Das Wesentliche: Drei Hauptpunkte, die zu beachten sind:

1) Es ist möglich, dass zwei verschiedene Dateien denselben Hash haben. In ihren Befunden müssen beide Dateien vom Angreifer erstellt werden, dh vom Ersteller der Dateien.

2) Auch der Hash kann nicht anvisiert werden. Sie können keinen Hash finden und dann eine Datei entwerfen, die diesem Hash entspricht. Stattdessen muss der Ersteller zwei unterschiedliche Dateien mit identischen Hashwerten erstellen, und die tatsächlichen Hashwerte selbst können nicht vorab "ausgewählt" werden

3) Schließlich gibt es eine endliche Anzahl von Hashes, und so ist es möglich, dass zwei zufällige Dateien denselben Hash haben ("Kollision" genannt). Eine der Stärken eines guten Hashalgorithmus ist die Vermeidung von Kollisionen.

Berücksichtigen Sie das Obige: Wenn Sie also den Hash des Anbieters verwenden, wissen Sie, dass dies der eigentliche Hash ist, gegen den Sie mit einem hohen Prozentsatz an Vertrauen prüfen können

Hier einige Referenzen für Sie:

Einen fantastischen Artikel über die Sicherheit von Hashing finden Sie hier: http://blog.codinghorror.com/speed-hashing/

Sehr ausführlicher Artikel zur Sicherheitsanfälligkeit von Hashing (und zeigt sogar ein Beispiel für das Erstellen zweier unterschiedlicher Dateien mit identischen Hashwerten) http://www.win.tue.nl/hashclash/SoftIntCodeSign/

Meine eigene Sammlung von Informationen zu Sicherheit und Verwendung von Hash http://geekswing.com/geek/the-magic-of-hash-and-i-mean-of-the-md5-and-sha-1-vintage/

0
Dice9

Es ist wahrscheinlich in Ordnung. MD5 ist jetzt nicht der sicherere Algorithmus - weitaus besser als ein CRC, aber schwächer als SHA1, Ripemd und SHA256 -, aber das Auffinden einer MD5-Hash-Kollisionen ist ziemlich anspruchsvoll, etwas, das sich nur eine große Organisation für einen bestimmten Angriff leisten kann auf einen zufälligen Torrent ohne guten Zweck passieren.