Ok Google, veröffentlichen Sie Ihre privaten DKIM-Schlüssel





Das Internet war selbst in den besten Jahren ein gefährlicher Ort. Manchmal haben die Architekten des Internets Wege gefunden, um Bedrohungen zu mindern, manchmal sind sie gescheitert. Die Situation wiederholt sich jedoch ständig, wenn ein großes Internetunternehmen eine Lösung findet, die die Situation für fast alle tatsächlich verschlimmert . Heute möchte ich über einen solchen Fall sprechen und darüber, wie ein großes Unternehmen wie Google einen Weg finden könnte, ihn zu beheben.



Dieser Beitrag behandelt Domain Keys Identified Mail (DKIM), ein harmloses kleines Anti-Spam-Protokoll, das sich irgendwie in ein Monster verwandelt hat. Meine Anfrage ist einfach und kann wie folgt zusammengefasst werden:



Sehr geehrtes Google, bitte implementieren Sie die regelmäßige Rotation und Veröffentlichung Ihrer privaten DKIM-Schlüssel. Dies wird das gesamte Internet viel sicherer machen, da Kriminelle einen starken Anreiz verlieren, E-Mails zu stehlen und zu verlieren. Das Update kostet Sie fast nichts und schlägt Dieben ein mächtiges Werkzeug aus den Händen.



Dies ist die Kurzversion. Detailliertere Informationen finden Sie unten.



Was ist dieses DKIM und wie schützt es meine E-Mails?



E-Mails wurden in den Tagen erstellt, als das Internet noch ARPANET hieß . Es waren viel ruhigere Tage, als moderne Sicherheitsmaßnahmen, und um ehrlich zu sein, die Vorstellung, dass das Internet Sicherheit braucht , eine ferne Science-Fiction-Zukunft blieb.



Die ersten E-Mail-Protokolle (wie SMTP) arbeiteten auf der Basis eines Vertrauenssystems. Die E-Mails sind möglicherweise direkt vom Mailserver des Absenders auf Ihren Mailserver eingegangen oder werden über Vermittler übertragen. Wie dem auch sei, wenn der Brief besagt, dass er von Ihrer Freundin Alice stammt, dann glauben Sie, dass er tatsächlich von Alice stammt. Warum sollte jemand jemals darüber lügen?



Die weit verbreitete Akzeptanz von E-Mails hat gezeigt, dass diese Haltung kläglich gescheitert ist. In nur wenigen Jahren haben die Internetnutzer erfahren, dass es viele Menschen gibt, die bereit sind, darüber zu lügen, wer sie sind. Die meisten von ihnen waren E-Mail-Spammer, die sich darüber freuten, dass SMTP es ihnen ermöglichte, sich als fast jeden Absender auszugeben - Ihre Freundin Alice, Ihr Chef, das Finanzamt, der freundliche nigerianische Prinz. Ohne einen zuverlässigen Mechanismus, der das Versenden solcher Spam-Mails verhindert, hat sich E-Mail als äußerst anfällig für Spoofing erwiesen.



Dem E-Mail-Anbieter wurde schnell klar, dass E-Mails ohne Absenderauthentifizierung von Natur aus unbrauchbar sind. Um E-Mails richtig zu filtern, brauchten sieÜberprüfen Sie zumindest , von welchem ​​Server die E-Mail stammt. Diese Eigenschaft hat einen technischen Namen und wird als Quellautorisierung bezeichnet .



Die Lösung für das Problem der Autorisierung der Quelle ähnelte, wie fast alle anderen Korrekturen grundlegender Internetprotokolle, der Reparatur mit Klebeband. Mail-Dienstanbieter wurden gebeten, eine (optionale) neue kryptografische Erweiterung namens Domain Keys Identified Mail (DKIM ) anzuschließen . DKIM backt digitale Signaturen in jede vom Mailserver gesendete E-Mail . Wenn der Mailserver des Empfängers einen von DKIM signierten Brief akzeptiert, der besagt, dass er beispielsweise von Google stammt, verwendet er zuerst das Domain Name System(DNS) findet den öffentlichen Schlüssel von Google. Der Empfänger kann jetzt die Signatur überprüfen, um sicherzustellen, dass die Nachricht authentisch und unverändert ist, da die Signatur dem Inhalt und den meisten Headern zugeordnet ist. Dieses Wissen kann dann als Eingabe zum Filtern von Spam verwendet werden. (Solche Garantien werden durch ein ähnliches Protokoll namens ARC bereitgestellt.)



Natürlich ist eine solche Lösung nicht ideal. Da DKIM optional ist, können böswillige Vermittler die DKIM-Signaturen aus der E-Mail entfernen, um die Empfänger davon zu überzeugen, dass sie nie von DKIM signiert wurden. Ein ähnliches Protokoll namens DMARC verwendet DNS, damit E-Mail-Absender ihre Einstellungen mitteilen können, die erzwingenÜberprüfen Sie die Signaturen ihrer E-Mails. Wenn Sie diese beiden Protokolle zusammen verwenden, sollte Spoofing aus dem Internet im Wesentlichen vollständig vermieden werden.





Ein Beispiel für eine DKIM-Signatur für eine der automatisierten E-Mails, die ich heute erhalten habe.



Was ist das Problem mit DKIM / ARC / DMARC und was ist "Herausforderung"?



Als Anti-Spam-Maßnahme haben DKIM, ARC und DMARC kein besonderes Problem. Der schwierige Teil ist, dass die DKIM-Signatur einen unerwarteten Nebeneffekt hat, der über die ursprüngliche Spam-Filteraufgabe hinausgeht. Kurz gesagt:



DKIM bietet eine lebenslange Garantie für die Authentizität von E-Mails, mit der jeder gestohlene E-Mails auch Jahre nach dem Versand kryptografisch authentifizieren kann.



Diese neue Nicht-Widerrufsfunktion war ursprünglich nicht als DKIM-Ziel gedacht. Die Designer hatten es nicht geplant, niemand diskutierte, ob es eine gute Idee wäre, und die meisten waren überrascht. Schlimmer noch, diese unerwartete Funktion hatte schwerwiegende Folgen: Sie macht uns anfälliger für Erpressung und Erpressung.



Um zu verstehen, wo das Problem liegt, sollten die Ziele von DKIM berücksichtigt werden.



Der Hauptzweck von DKIM war es, die Fälschung von Briefen durch Spammer während der Übertragung zu verhindern . Dies bedeutet, dass Empfängerserver tatsächlich überprüfen können sollten, ob die E-Mail vom beanspruchten Quell-E-Mail-Server gesendet wurde, selbst wenn die E-Mail unterwegs viele nicht vertrauenswürdige Server durchläuft.



Nach Abschluss der E-Mail-Übertragung ist das DKIM-Ziel jedoch abgeschlossen. Das heißt, die Echtheitsgarantie sollte nur für kurze Zeit aufrechterhalten werden. Da der Empfang von Briefen in der Regel nur wenige Minuten dauert (in seltenen Fällen Stunden), sollte dies nicht der Fall seindauern Jahre, und diese Signaturen sollten nicht an Benutzer weitergegeben werden. Dies ist jedoch der Fall.



Bis vor kurzem hat niemand darüber nachgedacht. Tatsächlich klangen die frühen DKIM-Konfigurationen wie ein schlechter Scherz: Mail-Dienstanbieter wählten DKIM-Signaturschlüssel, die für einen motivierten Angreifer sehr einfach zu hacken waren. Im Jahr 2012 entdeckte der Sicherheitsforscher Zachary Harris, dass Google und viele andere Unternehmen 512-Bit-RSA zum Signieren von DKIM verwendeten. Er zeigte, dass solche Schlüssel auf gemieteten Cloud-Geräten in wenigen Stunden geknackt und dann verwendet werden können, um Briefe von Larry und Sergey zu fälschen.



Die Reaktionen von Google und anderen E-Mail-Anbietern auf diese Verlegenheit von "Larry und Sergei" sind nicht schwer vorherzusagen. Ohne sorgfältig über die Auswirkungen nachzudenken, verstärkten sie die Schlüssel schnell und skalierten sie entweder auf 1024-Bit- oder 2048-Bit-RSA. Dies verhinderte Manipulationen, verwandelte das harmlose Antispam-Protokoll jedoch versehentlich in einen lebenslangen kryptografischen Authentizitätsstempel, mit dem jeder E-Mail-Speicherauszug überprüft werden kann, unabhängig davon, wie er in die Hände des Überprüfers gelangt ist.



Du bist verrückt, niemand benutzt DKIM, um E-Mails zu authentifizieren.



Der DKIM-Authentifizierungsstempel wurde jedoch von der Presse häufig verwendet, hauptsächlich im Zusammenhang mit dem Hacken von E-Mails von Politikern. Es ist real, wichtig und sinnvoll.



Das bekannteste Beispiel, das gleichzeitig ernsthafte Kontroversen auslöste: 2016 veröffentlichte Wikileaks eine Reihe von Briefen, die aus John Podests Google-Konto gestohlen wurden . Da die Quelle dieser Briefe trübe war , stand WikiLeaks vor der entmutigenden Aufgabe, die Echtheit dieser Nachrichten zu überprüfen. DKIM ist zu einer eleganten Lösung geworden: Jeder auf Wikileaks-Seiten veröffentlichte Brief gibt öffentlich den Bestätigungsstatus der angehängten DKIM-Signaturen an . Die Website bietet auch eine hilfreiche Ressourcenseite für Journalisten, auf der erklärt wird, wie DKIM die Realität von Briefen beweist.



Die DKIM-Geschichte endete jedoch nicht mit Podestàs Briefen. Im Jahr 2017 überprüfte ProPublica mithilfe von DKIM die Echtheit von Briefen, die angeblich von Präsident Trumps persönlichem Anwalt Mark Kasovitz an Kritiker gesendet wurden. Im Jahr 2018 verwendete die Associated Press es erneut, um durchgesickerte E-Mails zu authentifizieren , die einen russischen Anwalt mit Donald Trump Jr. verbinden. Und es geschah auch in diesem Jahr, als die Empfänger des angeblichen "Hunter Biden-Laptops" Rob Graham 2015 einen Brief zur DKIM-Überprüfung überreichten , um die Skepsis der Journalisten gegenüber ihren Quellen zu überwinden.



Jemand könnte sagen, dass die DKIM-Überprüfung nicht wichtig ist und dass Sie nur aufgrund ihres Inhalts an durchgesickerte Briefe glauben oder nicht glauben können. Die Tatsache, dass sich zahlreiche Nachrichtenorganisationen für DKIM entschieden haben, zeigt jedoch deutlich, wie falsch diese Annahme ist. Nachrichtenorganisationen, einschließlich Wikileaks, geben implizit zu, dass die kontroversen Quellen für den Empfang von E-Mails zu Zweifeln führen, die wahrscheinlich so stark sind, dass eine überzeugende Veröffentlichung in einer nationalen Nachrichtenorganisation unmöglich wird. DKIM kann dieses Problem umgehen und solche Störungen beseitigen.



Die Associated Press hat sogar ein DKIM-Überprüfungstool veröffentlicht .



Kurz gesagt, das Antispam-Protokoll, das ursprünglich zur kurzfristigen Identifizierung von Briefen zwischen Mailservern entwickelt wurde, hat seinen Zweck geändert (ohne die geringste Diskussion oder Zustimmung von kommerziellen Mail-Benutzern) und wurde zu einem Tool, das die kryptografisch unbestreitbare Authentifizierung jedes Ihrer eingehenden oder ausgehenden Briefe ermöglicht. Dies ist eine großartige Ressource für Journalisten, Hacker und Erpresser.



Aber er gibt dir keinen Vorteil .



Was können Sie dagegen tun?



DKIM war nie für die langfristige E-Mail-Authentifizierung gedacht. Die Sicherheitsgarantien sind wichtig, sollten jedoch nur einige Stunden (möglicherweise Tage) ab dem Zeitpunkt gelten, an dem der Brief vom Mailserver gesendet wird. Die Tatsache, dass DKIM weiterhin verwendet werden kann, um die Echtheit einer gestohlenen E-Mail zu beweisen, die im Jahr 2015 geschrieben wurde , ist im Wesentlichen ein Fehler: das Ergebnis von Missbrauch und Fehlkonfiguration durch E-Mail-Anbieter, die mit dem Kopf nachdenken mussten.



Zum Glück gibt es eine einfache Lösung.



Mit DKIM können Anbieter Schlüssel, die zum Signieren ausgehender E-Mails verwendet werden, regelmäßig "drehen" oder ersetzen. Die Häufigkeit dieser Drehung wird durch Caching geringfügig begrenztDNS-Infrastruktur, aber diese Einschränkungen sind nicht sehr streng. Selbst ein großer Anbieter wie Google kann die Signaturschlüssel mindestens alle paar Wochen problemlos ändern, ohne die Übertragung von E-Mails zu beeinträchtigen. Das Ändern solcher Schlüssel ist ohnehin eine gute Praxis und Teil der Lösung.



Natürlich wird eine einfache Änderung der DKIM-Schlüsselpaare allein nichts lösen: Die schlauen Leute im Internet archivieren ständig die öffentlichen DKIM-Schlüssel. Genau dies wurde 2020 in einem Brief an ein Google-Postfach aus dem Jahr 2015 bestätigt: Der Schlüssel, mit dem Google in diesem langen Zeitraum DKIM-E-Mails signiert hat (von 2012 bis 2016 wurde derselbe Schlüssel verwendet - im Ernst, Google, Was für ein Durcheinander!) wird nicht mehr verwendet, wurde aber an vielen Stellen im Internet zwischengespeichert.



Die Lösung für dieses Problem erfordert nur ein kleines zusätzliches Element: Google muss nach Rotation und Pensionierung eine Teilmenge der Schlüsselpaare mit dem geheimen Schlüssel veröffentlichen . Das Unternehmen muss diesen geheimen Schlüssel an einem leicht zugänglichen öffentlichen Ort veröffentlichen, damit jeder damit verdächtige alte E-Mails von Google-Nutzern fälschen kann. Die öffentliche Verfügbarkeit des Google-Signaturschlüssels würde jedes neue E-Mail-Leck kryptografisch in Frage stellen. Da jeder Außenstehende DKIM-Signaturen fälschen kann, werden sie als Echtheitsnachweis fast unbrauchbar.



(Diejenigen mit eigenen Mailservern können dies mit diesem großartigen Skript automatisch tun .)



Google könnte diesen Prozess jetzt ankurbeln, indem es seine alten privaten Schlüssel für 2016 veröffentlicht. Da ihre Geheimhaltung heute buchstäblich keinem Sicherheitszweck dient, mit Ausnahme der Bestätigung von durchgesickerten E-Mails durch Dritte, gibt es keinen Grund, diese Werte geheim zu halten. Legen Sie sie einfach aus.



(Ein paranoider Leser könnte auch die Möglichkeit in Betracht ziehen, dass motivierte Angreifer bereits alte private DKIM-Schlüssel von Google gestohlen haben.... Letztendlich sind DKIM-Signaturschlüssel nicht die "königlichen Juwelen" des Google-Ökosystems, sodass Google kaum Anstrengungen unternimmt, um sie sicher zu halten. In diesem Fall führt die Geheimhaltung der Schlüssel durch Google lediglich zu einer Situation, in der bestimmte Akteure ungestraft Briefe fälschen können.)



Aber die DKIM-Authentifizierung ist eine großartige Sache! Wollen wir nicht in der Lage sein, durchgesickerte Post von Politikern zu überprüfen?



Moderne DKIM-Implementierungen verursachen Probleme, da sie eine bestimmte Art von Straftat fördern: Diebstahl privater Briefe zur Verwendung in öffentlichen Erpressungs- und Erpressungskampagnen. In den letzten Jahren hat sich herausgestellt, dass diese Funktion größtenteils auf eine Weise verwendet wurde, die viele Menschen für akzeptabel halten, entweder weil sie den Vorlieben ihrer Anhänger entspricht oder weil die "gefangenen" Politiker es verdienen.



Aber auch guten Menschen passieren schlechte Dinge. Wenn Sie einen Mechanismus schaffen, der Kriminalität stimuliert, wird früher oder später ein Verbrechen gegen Sie begangen.



E-Mail-Dienstanbieter wie Google haben entschieden (häufig ohne ihre Kunden zu fragen), dass jeder, der das E-Mail-Passwort eines Kunden abruft oder es von einem Mitarbeiter des Unternehmens phishing, einen kryptografisch unbestreitbaren Beweis liefern kann, der jedem zur Bestätigung der Echtheit der Ergebnisse vorgelegt werden kann . Verbrechen. Vielleicht ist ein solcher Beweis für die Aufgaben des Verbrechers unnötig. Aber es hat definitiv Wert. Eine solche Möglichkeit auszuschließen ist ein Segen in seiner reinsten Form.



Die Tatsache, dass ich darüber streiten muss, macht mich sehr traurig.



Zeitstempel, verbesserte Kryptographie und andere formelle Einwände



Jedes Mal, wenn ich die Idee erwähne, alte geheime Schlüssel zu veröffentlichen, bekomme ich eine Reihe formeller Einwände von Leuten mit sehr guten Kommentaren . Aber sie denken über ein ernsthafteres Bedrohungsmodell nach als das, mit dem wir normalerweise konfrontiert sind.



Der häufigste Einwand ist, dass das Veröffentlichen von privaten Schlüsseln nur funktioniert, wenn signierte Briefe nach dem Veröffentlichen der privaten Schlüssel eingegangen sind . Nach dieser korrekten Logik ist jede E-Mail, die vor der Veröffentlichung des privaten DKIM-Schlüssels gestohlen und veröffentlicht wurde, nicht zu leugnen. Wenn sich beispielsweise jemand in Ihr Konto einhackt und sofort mit der Veröffentlichung von E-Mails beginnt, die Sie in Echtzeit erhalten, ist die kryptografische Überprüfbarkeit weiterhin möglich.



Jemand schlug sogar die Möglichkeit eines cleveren Angriffs vor, bei dem Empfänger (oder Hacker, die ständigen Zugriff auf Ihr E-Mail-Konto haben) einen öffentlichen Zeitstempeldienst wie die Blockchain verwenden, um E-Mails, die sie zum Zeitpunkt des Eingangs erhalten, sicher zu "stempeln". Auf diese Weise können solche Empfänger nachweisen, dass sie den Brief unterschrieben haben, bevor sie den geheimen DKIM-Schlüssel - check and checkmate - veröffentlichen.



Dies ist ein großartiger, cleverer theoretischer Hack, der für unser Thema jedoch im Wesentlichen irrelevant ist, da er ein stärkeres Bedrohungsmodell anspricht. Das kritischste Problem bei DKIM ist heute, dass sich DKIM-Signaturen in Ihrem archivierten Postfach befinden. Dies bedeutet, dass ein Hacker, der sich heute in mein Google Mail-Konto gehackt hat, DKIM-Signaturen in E-Mails nachweisen kann, die ich gesendet / empfangen habe.vor Jahren . Durch das Veröffentlichen alter privater DKIMs wird dieses Problem sofort gelöst. Die Lösung des theoretischen Problems eines "Echtzeit-Hackers" kann warten, bis er an die Reihe kommt.



Ein weiterer Einwand, den ich manchmal höre, ist, dass die kryptografische Authentifizierung eine nützliche Funktion ist . Und unter bestimmten Bedingungen stimme ich dem zu. Das Problem mit DKIM besteht darin, dass kein Kunde gefragt wurde, ob er diese Funktion standardmäßig in seinem kommerziellen E-Mail-Konto verwenden möchte . Wenn Personen ihre Briefe kryptografisch überprüfen möchten, können zu diesem Zweck praktische Tools verwendet werden .



Darüber hinaus stellt sich die Frage, ob es möglich sein wird, das Problem der DKIM-Herausforderung mit Hilfe einer neuen Kryptographie zu lösen. Als Kryptograf bin ich davon sehr begeistert. Tatsächlich haben meine Co-Autoren Mike Spectre und Sanu Park und ich kürzlich einen Artikel darüber geschrieben, wie eine langfristige Lösung des DKIM-Problems funktionieren könnte. (Mike hat einen großartigen Beitrag darüber geschrieben .) Ich werde nicht behaupten, dass unsere Lösung notwendigerweise die beste ist, aber ich hoffe, dass sie jemanden dazu inspiriert, mehr Forschung zu betreiben.



Manchmal ist jedoch die einfachste die beste Lösung. Und im Moment kann Google als größter kommerzieller E-Mail-Dienstleister auf sehr einfache Weise eine enorme Wirkung erzielen (und seine Kunden vor zukünftigen Lecks schützen). Und es ist mir ein Rätsel, warum das Unternehmen dies immer noch nicht getan hat.






Werbung



Mit einem virtuellen Server von VDSina mit Schutz vor DDoS-Angriffen können Sie jedes Projekt hosten - alles funktioniert reibungslos und mit hoher Verfügbarkeit! Sie können die Serverparameter mithilfe eines praktischen Konfigurators selbst auswählen.






All Articles