Das Ubuntu-Problem
Endlich habe ich verstanden, warum die sich so schwer tun.
Ich hatte ja was dazu geschrieben, dass ein Benutzer angefragt hatte, weil ihm die Überprüfung der Ubuntu-Images zweifelhaft vorkam.
Ganz so schlimm wie beschrieben war es jetzt nicht (siehe Nachtrag zu der Seite), weil in dem Tutorial auf Seite 4 unten schon steht, dass man die fingerprints prüfen soll, allerdings so, dass Anfänger das nicht richtig verstehen können, und auf Seite 5, wo erklärt wird, wie man die Echtheit der Datei prüft, arg geschlampt wird, weil da nur „something like“ steht und nicht, dass man sich vergewissern muss, dass die Datei auch mit dem fingerprint-geprüften Schlüssel und nicht einem anderen, ähnlich aussehenden signiert wurde, der auch „something like“ liefert.
In der Kryptographie ist es ein Riesen-Unterschied zwischen „exactly like“ und „something like“.
Dazu kommt noch die Schlamperei mit den Zertifikaten der Webseiten.
Mir war das früher schon mehrmals aufgefallen, zuletzt, als ich meine Skripten zum Download für die Zweitwohnung überarbeitete, und weil sich jetzt ein Benutzer meldete, war mir das wieder in Erinnerung gekommen.
Es ist zwar jetzt nicht völlig unsicher, denn man kann es verifizieren, wenn man dem Tutorial folgt und sich trotzdem gut genug mit GPG auskennt, um die Ausgaben zu interpretieren, und zu wissen, welche Teile der Ausgabe exakt stimmen müssen und welche jedesmal anders aussehen können.
Dazu kommt, dass man von den Download-Seiten und Mirrors nicht zu diesem Tutorial kommt, da gibt es keinen Link. Und selbst wenn: Von http-Seiten könnte der Link genauso gefälscht sein wie das Image und auf ein Tutorial mit ausgetauschtem fingerprint verweisen.
Der Knackpunkt, den ich daran sehe, ist, dass sich Ubuntu ja explizit auch an Anfänger und Windows-Umsteiger wendet. Und die können das nicht verifizieren.
Als PGP damals neu herauskam, weiß nicht mehr genau, Anfang der Neunziger als Reaktion auf Joe Bidens Gesetz, kannten sich die meisten Informatiker mit PGP aus. Komischerweise ist heute das Wissen darüber und wie man es anwendet, geringer als damals.
Kurzum:
Sie bleiben bei ihrer Ansicht. Weil
- Die Anfänger und Windows-Wechsler ja alle über https://ubuntu.com gingen, und damit per HTTPS abgesichert seien.
- Über die HTTP-Seiten und Mirrors ja nur die Profis gingen, und die wüssten mit gpg genau umzugehen.
Schön. Und wenn es doch anders läuft?
Security ist ja nicht, dass es alles stimmt, wenn es gut läuft. Security ist, wenn es auch stimmt, wenn irgendwas ganz schlecht oder ganz schief läuft.
Wir wissen doch, wieviele Behörden und Universitäten mit irgendwelchen Fake-Mails angegriffen werden. Wieviele Leute in Schulen, Universitäten, Behörden sind in der Lage, das alles genau zu durchblicken?
Ich wäre ja schon froh, wenn man auf den Downloadseiten auf das Tutorial verwiese, und im Tutorial farbig anstreicht, was genau stimmen muss, wo man welche Fingerprints wirklich genau prüfen muss und nicht nicht „something like“ genügt.
Manchem mag das jetzt an den Haaren herbeigezogen erscheinen, aber so läuft Security eben. Da wird ständig an den Haaren gezogen, und erinnert Euch mal, wie das kürzlich mit dem xz-Angriff auf sshd lief. Da wurde auch enormer Aufwand getrieben, um eine Fake-Version unterzujubeln.
Was, wenn es einer schafft, irgendeiner Behörde oder Schule ein manipuliertes Installations-Image unterzujubeln, das Malware gleich irgendwo im Bootprozess installiert? Und das dann innerhalb der Behörde weiterverbreitet wird?
Zugegeben, die Sache ist nicht völlig unsicher, man kann, wenn man weiß wie und will, die Downloads verifizieren. Aber wieviele Leute wühlen sich tatsächlich da durch? Der Angreifer muss ja nicht alle angreifen, ein paar Leute, die nicht verifizieren, könnten reichen – und wir sind im Krieg.
Eine Antwort aber fand ich sehr ernüchternd:
Hadmut,
The turorials website is community-maintained documentation, we don’t have rights to modify it. There is a link on the bottom of the tutorial page to suggest changes to the community members that maintain that documentation, please click it and tell them your comments.
The official way to download Ubuntu images is through the Download link on our website, and by verifying the hash supplied over https, not by accessing arbitrary mirrors directly.
If you insist on not following the official procedure and downloading an image from an arbitrary mirror, you’re on your own with regards to verifying that image. That being said, the security team maintains a list of valid signing keys here over https you can verify against: https://wiki.ubuntu.com/SecurityTeam/FAQ#GPG_Keys_used_by_Ubuntu
Was schon mal der eigenen Aussage widerspricht, dass die Fingerprints unter https://ubuntu.com zu finden wären, offenbar mussten sie da selbst erst suchen. Und eine Wiki-Seite, also ein Ding, das von vielen Leuten beschrieben werden kann, ist jetzt auch nicht der Security Brüller.
Der Brüller dagegen ist, dass der da sagt, dass sie nicht das Recht hätten, ihre eigenen Webseiten zu bearbeiten, weil das „community-maintained“ sei. Und mit „community“ fangen die Probleme richtig an, da ist man nämlich gleich wieder in diesem woke- und code-of-conduct-Ding.
Richtig schräg finde ich, dass sie zwar Mirrors anbieten und die sogar offiziell auf Ubuntu-/Canonical-Seiten verlinken, aber sagen, dass sei ja gar nicht der offizielle Weg, sie runterzuladen.
Ja, was denn nun? Sind sie nun, oder sind sie nicht?
Und was hindert sie daran, in den Seiten-Header reinzuschreiben, wo man die Keys findet oder dass man https benutzen soll?
Langer Rede kurzer Sinn: Es ist zwar jetzt nicht völlig unsicher, sie haben sich schon was dabei gedacht. Aber es ist auch nicht sicher, es beruht auf zu vielen Annahmen, Schlampereien, Nachlässigkeiten, Kompetenzverteilungen.
Mal ehrlich: Wieviele Leute, die ihre Images von irgendwelchen Spiegeln herunterladen, achten auf https oder führen die PGP-Verifikation mit Fingerprint durch?
Und dann wundern sich wieder alle, wenn wieder irgendwo eine Behörde, eine Universität, ein Gericht runterknallt.
Oder sie schreien, wenn ihnen irgendwer die End-zu-End-Verschlüsselung nehmen will.