Themabewertung:
  • 0 Bewertung(en) - 0 im Durchschnitt
  • 1
  • 2
  • 3
  • 4
  • 5
linux sicherheit
#1
wir hatten inworld mal eine "gesittete diskusion" über schadsoftware bei linux updates. Es ging darum, das dein datendealer oder kurz isp als fetter man in the middle dir im auftrag der richtg fett cyberkrimminellen verseuchte programme oder updates unterschiebt. "bei lunux geht das nicht weil signeirt". An mir ist letztens fogendes vorbeigeflogen: https://www.amnesty.org/en/latest/resear...-revealed/ . Und genau finspy wird vom government crime bei uns eingesetzt. Wie sagte mal jemand so passent: gegen lvl 5 kriminelle hat neimend eine chance! Ergo dein dealer ist nicht dein freund.

diese Signatur ist in deinem Land nicht verfügbar :-P
Zitieren
#2
Siehe die erste als hilfreich markierte Antwort:
https://security.stackexchange.com/quest...itm-attack

Nicht nur Linux kann signieren.
Zitieren
#3
Im Prinzip ist das richtig. Aber wenn wir über staatliche Stellen reden und über gewöhnliche Computerbenutzer (keine IT-Profis), bleibt das folgende Szenario: Ein Geheimdienst XYZ signiert irgendwas mit dem Namen Microsoft bzw. was auch immer für eine Firma vorgetäuscht werden soll. Dafür benutzt er einen rootlevel Signaturserver, den er unter Kontrolle hat, und der von gewöhnlichen Browsern und PCs als vertrauenswürdige Signaturstelle angesehen wird. Dann sieht die Signatur auf den ersten Blick echt aus, man muss schon die einzelnen Zertifikate nachverfolgen und sich dann ggf. fragen, warum eine z.B. amerikanische Firma gerade für dieses Update eine russische/chinesische/deutsche Root-Zertificat-Authority (CA) einsetzen sollte.

EDIT: Windows-10-Treiber zum Beispiel kriegt man ohne gültige Signatur nicht installiert, außer man schaltet den Rechner bewusst in einen (unsicheren) Entwicklermodus. Das Verfahren könnte auf gewöhnliche Software ausgeweitet werden, wird es auch im Hochsicherheitsbereich, aber gewöhnliche Rechner wären dann zu stark eingeschränkt. Deshalb darf der lokale Admin außerhalb der Kernel-Schicht alles installieren, was er oder sie will. (Microsoft installiert sowas allerdings nicht automatisch, siehe Link in Kubwas Beitrag). Das gleiche gibt es bei manchen kommerziellen Linux-Distributionen. Bei selbstgebauter Software geht das zwar technisch auch, aber wie sollen die Empfänger dann mit vertretbarem Aufwand die Echtheit der diversen Zertifikate prüfen?

Das Angriffszenario ist übrigens, dem Computer ein falsches Zertifikat unterzujubeln. Eine Software so zu manipulieren, dass die Signatur zum Original-Zertifikat passt, ist meines Wissens nicht möglich.
Zitieren
#4
(16.10.2020, 19:35)Mareta Dagostino schrieb: Im Prinzip ist das richtig. Aber wenn wir über staatliche Stellen reden und über gewöhnliche Computerbenutzer (keine IT-Profis), bleibt das folgende Szenario: Ein Geheimdienst XYZ signiert irgendwas mit dem Namen Microsoft bzw. was auch immer für eine Firma vorgetäuscht werden soll. Dafür benutzt er einen rootlevel Signaturserver, den er unter Kontrolle hat, und der von gewöhnlichen Browsern und PCs als vertrauenswürdige Signaturstelle angesehen wird. Dann sieht die Signatur auf den ersten Blick echt aus, man muss schon die einzelnen Zertifikate nachverfolgen und sich dann ggf. fragen, warum eine z.B. amerikanische Firma gerade für dieses Update eine russische/chinesische/deutsche Root-Zertificat-Authority (CA) einsetzen sollte.

EDIT: Windows-10-Treiber zum Beispiel kriegt man ohne gültige Signatur nicht installiert, außer man schaltet den Rechner bewusst in einen (unsicheren) Entwicklermodus. Das Verfahren könnte auf gewöhnliche Software ausgeweitet werden, wird es auch im Hochsicherheitsbereich, aber gewöhnliche Rechner wären dann zu stark eingeschränkt. Deshalb darf der lokale Admin außerhalb der Kernel-Schicht alles installieren, was er oder sie will. (Microsoft installiert sowas allerdings nicht automatisch, siehe Link in Kubwas Beitrag). Das gleiche gibt es bei manchen kommerziellen Linux-Distributionen. Bei selbstgebauter Software geht das zwar technisch auch, aber wie sollen die Empfänger dann mit vertretbarem Aufwand die Echtheit der diversen Zertifikate prüfen?

Das Angriffszenario ist übrigens, dem Computer ein falsches Zertifikat unterzujubeln. Eine Software so zu manipulieren, dass die Signatur zum Original-Zertifikat passt, ist meines Wissens nicht möglich.

Was hindert den Geheimdienst denn einen Entwickler bei Linux einzuschleusen oder einen Linuxentwickler zu erpressen und dazu zu bringen Backdoors einzubauen oder Schadcode zu signieren?
Der Argumentation folgend bleibt nichts anderes übrig als den PC aus dem Fenster zu schmeißen.
Zitieren
#5
Wohl wahr. Deshalb mache ich mir zu Hause privat auch keinen Kopf um Geheimdienste, die vielleicht böse Dinge auf meinem Computer wollen. Big Data in den Datengräbern der großen Privatdienstleister macht mir da erheblich mehr Angst.

Computer im Hochsicherheitsbereich gehören nicht ans Internet. Und kritische Daten von Behörden oder NGO sollten eben in einem Environment laufen, wo nicht mal schnell ein automatisches Update irgendwas aus dem Netz nachlädt.
Zitieren
#6
(16.10.2020, 10:41)ska skaduwee schrieb: wir hatten inworld mal eine "gesittete diskusion" über schadsoftware bei linux updates. Es ging darum, das dein datendealer oder kurz isp als fetter man in the middle dir im auftrag der richtg fett cyberkrimminellen verseuchte programme oder updates unterschiebt. "bei lunux geht das nicht weil signeirt". An mir ist letztens fogendes vorbeigeflogen: https://www.amnesty.org/en/latest/resear...-revealed/ . Und genau finspy wird vom government crime bei uns eingesetzt. Wie sagte mal jemand so passent: gegen lvl 5 kriminelle hat neimend eine chance! Ergo dein dealer ist nicht dein freund.
Gerade FinSpy kocht nur mit Wasser, zumindest unter GNU/Linux. Es schafft es noch nicht einmal aus dem Userspace raus und dürfte entsprechend einfach a) aufzustöbern und b) zu beseitigen sein, wenn man ein bißchen Ahnung hat.

(16.10.2020, 19:35)Mareta Dagostino schrieb: Das Angriffszenario ist übrigens, dem Computer ein falsches Zertifikat unterzujubeln. Eine Software so zu manipulieren, dass die Signatur zum Original-Zertifikat passt, ist meines Wissens nicht möglich.
Vorteil guter GNU/Linux-Distributionen: Es gibt keine Zertifikate. Also kann man keine Zertifikate kompromittieren.

Alles wird signiert mit OpenPGP über GnuPG. Dafür verwendet jeder Entwickler einen eigenen OpenPGP-Key, und bei der Distribution ist genau hinterlegt, welcher Maintainer welchen Key verwendet.

Bei Windows kannst du versuchen, Zertifikate zu fälschen. Bei Debian mußt du dir den Maintainer eines für Angriffe geeigneten Pakets schnappen und von dem die Herausgabe seines Private Key erzwingen – und dich drauf verlassen, daß er nicht gleich hinterher seinen Key ungültig macht und einen neuen erstellt.

(16.10.2020, 20:49)Kubwa schrieb: Was hindert den Geheimdienst denn einen Entwickler bei Linux einzuschleusen oder einen Linuxentwickler zu erpressen und dazu zu bringen Backdoors einzubauen oder Schadcode zu signieren?
Einschleusen von Entwicklern wird schwierig. Da funktionieren freie Systeme ganz anders als Windows – und GNU/Linux ganz besonders. Es gibt ja keinen Riesenkonzern, der das alles zentral in-house entwickelt.

Trotzdem geht alles an Code durch viele Augen. Man kann da nicht einfach irgendwelchen Code einreichen, und morgen wird der offiziell ausgerollt. Wenn da irgendjemand versucht, eine Backdoor einzuschleusen, dann wird der Code ja noch reviewt, und zwar mehrfach. Und die Reviewers werden den ablehnen.

Du sprichst von „Linux“. Das ist der Kernel. Und gerade da dürfte sehr genau hingesehen werden.

Wenn du da also etwas, was im Kernelspace läuft, dauerhaft kompromittieren willst, dann mußt du sämtliche Reviewers entweder kennen, erpressen und dafür sorgen, daß sie alle die Klappe halten (und glaub mal nicht, daß nicht mindestens einer davon irgendwelche Hints rausgibt, wie es seinerzeit der TrueCrypt-Entwickler getan hat, als TrueCrypt von der NSA gekapert wurde – die entsprechende Version hat es in kein einziges Repository keiner einzigen Distri geschafft, dafür sind sie alle auf VeraCrypt umgeschwenkt).

Oder du mußt sämtliche Reviewers durch eigene Agenten ersetzen. Und das fällt erst recht auf, wenn die gesamte Reviewer-Kette von etwas Sicherheitskritischem, das schon seit Jahrzehnten existiert (eben beispielsweise Linux), binnen kürzester Zeit durch komplett neue Leute ersetzt wird.

Selbst wenn du es schaffen solltest, freie, quelloffene Software zu kompromittieren, wird es jemand merken. Irgendjemand wird garantiert immer Wireshark am Laufen haben und darin Unregelmäßigkeiten feststellen. Das dauert höchstens ein paar Tage, dann weiß er, wo die herkommen.

Dann wird er sich den Quellcode der Ursache dieser Unregelmäßigkeiten schnappen, einmal den der aktuellen Version, einmal einen von möglichst kurz vor Anfang der Unregelmäßigkeiten. Da kommt man ohne weiteres ran, auch an so ziemlich alle alten Versionen. Das ist ja das Schöne an quelloffener Software und an VCS.

Dann wird er die Quellcodes miteinander vergleichen. Das stellt man sich jetzt als reiner Windows-User schwierig vor. Aber unter fast allen Betriebssystemen, die nicht „Windows“ heißen, gibt es ein schönes Tool namens diff. Oder es gibt entsprechende grafische Tools. Damit kann man sich die Unterschied zwischen zwei Dateien anzeigen lassen.

Und ruckzuck ist die Backdoor gefunden.

Nächste Schritte: a) Maintainer kontaktieren. b) IT-News-Outlets kontaktieren, damit die das an die große Glocke hängen.

Jetzt kannst du vielleicht sagen: „Ja, was ist, wenn der Maintainer dazu gezwungen wurde, die Klappe zu halten und/oder alles abzustreiten? Dann bleibt die Backdoor doch bis in alle Ewigkeit drin!“

Nein, bleibt sie nicht. Dann nehmen sich nämlich neue Maintainer die Software vor – und machen einen sogenannten Fork. Das ist unter so ziemlich allen freien Lizenzen legal und bedarf nicht der Zustimmung des ursprünglichen Maintainers. Das heißt, die hat er schon durch die Wahl seiner Lizenz gegeben.

Man nimmt also möglichst aktuellen Quellcode, der noch nicht kompromittiert ist, zieht davon eine Kopie und benennt die um. Wenn man will, kann man noch die Änderungen im Original nach dieser Version, die nicht Backdoor sind, zurückportieren und mit einbauen.

Mit dem Fork tritt man dann an alle Distributionen – und auch wieder an die IT-News-Outlets. Die Distris werden ruckzuck das Original durch den Fork ersetzen, alleine, um die Sicherheit ihrer Nutzer zu gewährleisten. Das machen auch Distris wie Debian oder Ubuntu, die normalerweise zwischen zwei Versionsupgrades der ganzen Distri nur kleine Patches ausrollen, aber keine neuen größeren Versionen von Paketen. Das ist auch damals passiert, als Oracle Sun geschluckt hat und alle Schiß hatten, daß Oracle das von Sun betreute, aber freie und quelloffene Datenbanksystem MySQL relizensiert zu proprietärer, unfreier Closed-Source-Payware, um damit fett Kohle zu machen (zeitgleich ließ sich ja der Oracle-Chef Larry Ellison eine der größten Yachten überhaupt bauen). Also haben sie davon einen Fork namens MariaDB gemacht, der binnen weniger Tage sogar unter Debian stable und Ubuntu LTS in die Repositories kam und MySQL direkt ersetzt hat. Die meisten Distris verwenden heute noch MariaDB.

Anderes Szenario: Ein Maintainer wird von einem Geheimdienst gezwungen, seinen privaten OpenPGP-Key rauszurücken, mit dem er seine Pakete z. B. für Debian oder Ubuntu oder Arch oder so signiert. Damit würde der Geheimdienst dann per MITM Attack eingeschleuste Pakete nebst passender Prüfsummen (unter freien Systemen ist alles doppelt und dreifach abgesichert) mit seinem Key signieren können.

Zum einen aber können sie damit nicht das ganze System kompromittieren. Windows hängt ja tutto kompletto an einem einzigen Zertifikat, mit dem alles signiert wird. Wenn man sich jetzt GNU/Linux oder *BSD ansieht, da hat jeder Maintainer seinen eigenen Schlüssel, und jeder Maintainer ist für was anderes zuständig. Um wirklich alle Pakete unter allen Distributionen manipulieren zu können, bräuchtest du abertausende Private Keys von abertausenden Maintainern.

Zum anderen wird dieser Breach nicht lange halten. Ich wage zu behaupten, es gibt da längst ein Protokoll, nach dem in solchen Fällen vorgegangen wird: Das bisherige Schlüsselpaar wird zwar nicht für ungültig erklärt (das würde der Geheimdienst sofort merken), aber aus der Liste der offiziellen Keys der jeweiligen Distribution entfernt, d. h. was damit signiert ist, akzeptiert der Paketmanager nicht mehr. Derweil erstellt der Maintainer ein neues Schlüsselpaar und nimmt das von da an offiziell zum Signieren.

Unbemerkt jeden beliebigen OpenPGP Private Key klauen kann nicht mal die NSA.

Freie, quelloffene Software zum einen dauerhaft und zum anderen unbemerkt zu kompromittieren, ist verdammt schwierig bis unmöglich. Ganze Systeme, die darauf basieren, so zu kompromittieren, ist noch schwieriger.
Zitieren
#7
huhu Jupiter

wenn von Linux gesprochen wird, dann ist allgemein der kernel + userspace gemeint. Der kernel kann dir noch nicht mal 'hello world' ausgeben, dazu brauchst mindestens eine shell, die ist userspace. Zur sicherheit des systems nehme ich immer mal das völlig undenkbare Szenario: als beispiel hat openssl 10 Jahre lang einen bug, passiert ja nicht, ist open source, kann jeder reinschauen, wird sofort gefixt. Aber bei diesem undenkbaren fall kannst davon ausgehen, das lvl 4 - 5 cyber kriminelle den bug kennen und ausnutzen, also wäre ssl genau so sicher wie rot13, na gut rot13 ist seit ewigen zeiten unsicher nehmen wir double-rot13. Also kannst von ausgehen das irgendwo bugs schlummern die das manipulieren deines systems ermöglichen, siehe einbruch in Tor. Bei lvl5 kriminellen spielt geld zudem keine rolle.

diese Signatur ist in deinem Land nicht verfügbar :-P
Zitieren
#8
Bugs kann's natürlich überall geben, keine Software ist perfekt.

Aber gezieltes Kompromittieren durch Einbau von Backdoors ist bei quelloffener Software schwieriger. Und bei quelloffener Software unter einer freien Lizenz, die Forks erlaubt, ist es noch schwieriger, die Backdoor dauerhaft nutzbar zu halten, weil es rumsbums einen Fork ohne Backdoor geben wird.
Zitieren
#9
Das sehe ich anders, Signaturen sind meiner Meinung nach der leistungsfähigste Schutzmechanismus, den es derzeit gibt. Man kann Rechner sogar so konfigurieren, dass selbst ein lokaler Admin keine Software starten kann, deren Signatur nicht vorher schon dem System bekannt ist. Signaturen mit hinreichend langen Schlüsseln kann außer vielleicht Quantencomputern auch niemand in vertretbarer Zeit knacken.

Allerdings hängt das ganze Konzept am Prinzip einer Vertrauenskette. Private Endkunden können meistens einer Signatur nur soweit trauen wie etwa einem Schloss-Symbol in der Browserzeile. Wenn die - eventuell nur angebliche - Signaturautorität behauptet, der Schlüssel sei echt, wie will man das prüfen? Für Endkunden ist es meiner Meinung nach deshalb wumpe ob Software signiert ist oder nicht. Für speziell gesicherte Systeme (oder Systembereiche wie Kernel) hingegen ist das aktueller Stand der Technik.

EDIT: Bartholomew hat in einer Sache allerdings völlig Recht. Ein signiertes Computervirus ist auch mit Echtheitsnachweis per Signatur immer noch ein Computervirus. Wenn man über einen sicheren zweiten Weg den Fingerabdruck der korrekten Signatur in Erfahrung bringt, kann man feststellen, ob das Virus echt ist oder manipuliert wurde. Wink
[-] The following 1 user says Thank You to Mareta Dagostino for this post:
  • Pius Noel
Zitieren
#10
Damit hast du ja Recht. Aber Software-Signaturen sind nicht dafür gedacht, dass Menschen aus dem Vorhandensein einer Signatur auf die Qualität der Software schließen. Sie sind dafür gedacht, dass Systeme bei Updates den eigenen Hersteller oder vertrauenswürdige Geschäftspartner wiedererkennen. Dafür verwaltet der Hersteller der Software eine Liste von Signaturen, denen er vertraut. Wenn du ohne Umschalten auf den Entwicklermodus einem Windows-System einen Treiber unterjubeln willst, musst du erst eine Geschäftsbeziehung mit Microsoft aufnehmen und Bedingungen erfüllen. Ähnlich halt mit kommerziellen Linuxen.
Zitieren


Möglicherweise verwandte Themen…
Thema Verfasser Antworten Ansichten Letzter Beitrag
  opensimMULTITOOL Ubuntu Linux Server Manfred Aabye 62 14.409 01.02.2024, 19:24
Letzter Beitrag: Manfred Aabye
  Euer "Linux-Desktop" Dorena Verne 175 198.037 21.01.2024, 01:17
Letzter Beitrag: Mareta Dagostino
Thumbs Up Waydroid | Android in a Linux container DJ Archie 1 478 03.10.2023, 12:21
Letzter Beitrag: Dorena Verne
  Von LInux mint zu Manjaro (Arch Linux) Bogus Curry 22 2.508 25.06.2023, 13:32
Letzter Beitrag: Bogus Curry
  Linux Mint Soundproblem Klarabella Karamell 5 1.304 05.10.2022, 22:27
Letzter Beitrag: Bogus Curry

Gehe zu:


Benutzer, die gerade dieses Thema anschauen: 1 Gast/Gäste