• Hallo Leute,
    ein kleines Problem beschäftigt mich schon seit einiger Zeit.
    Der Fx. wird zu recht als sicherer Browser beurteilt. Auch Patrick Kolla der Programmiere von SpyBot empfiehlt den Fx als sehr sichere Anwendung. Eigentlich müße doch der offene Quellcode für Mozilla den H(K)ackern doch jede nur erdenkliche Möglichkeit geben, um Manipulationen vornehmen zu können. Beim IE von Windows ist es genau umgekehrt. Microsoft versucht (wie aktuell zu erfahren vergeblich) den Quellcode geheim zu halten. Und doch haben es H(K)acker leicht die Sicherheitslücken für ihre Manipulationen zu nutzen. Kann mir jemand mit einfachen Worten den Sachverhalt erklären?
    Danke.
    Gruß
    rabenvogel

  • Hallo,
    du hast (wie leider so viele Menschen) eine falsche Vorstellung, wie man Sicherheit erreicht, und was Sicherheit eigentlich bedeutet.
    Viele halten "security by obscurity" für eine gute Idee. Grob gesagt heißt das sowas wie "Sicherheit durch Verschleierung" und meint z.B. folgendes: Ich verschlüssele meine Daten mit einem ganz geheimen Algorithmus, der nur mir bekannt ist. Niemand kann das entschlüsseln, weil niemand die genaue Funktionsweise kennt.

    Mit dieser Auffassung kann man ganz brachial auf die Klappe fliegen, wie z.B. D2 vor einigen Jahren gemerkt hat. Sie haben in ihrem GSM-Netz einen geheimen Algorithmus verwendet und kamen sich unglaublich clever vor. Was ist passiert? Der Algorithmus ist irgendwann durchgesickert, Experten haben eine Schwachstelle gefunden und D2 stand mit runtergelassener Hose da.
    Was wäre besser gewesen? Einen lange erprobten, von tausenden unabhängigen Experten analysierten Algorithmus zu nehmen. Die Sicherheit einer Verschlüsselung darf nicht auf der Geheimhaltung des Algorithmus sondern ausschließlich auf der Stärke des Algorithmus und dem Schutz der verwendeten Schlüssel basieren. Der Feind kennt den Algorithmus sowieso, jedenfalls ist davon bei Sicherheits-Analyse auszugehen.

    Etwas ähnliches kriegt grade Microsoft zu spüren. Bei denen basiert die Sicherheit zum Teil darauf, daß der Code nicht allgemein zugänglich ist - und nicht auf der Korrektheit des Codes selbst. Wird der Code veröffentlicht, dann finden die ganzen bösen Jungs die Probleme und können sie sich zu Nutze machen.
    Bei OpenSource passiert (oder besser gesagt: soll passieren) das ganze im Vorfeld. Einer programmiert etwas, andere sehen drüber, Programm-Fehler werden schnell gefunden und können von jedem fähigen Programmier gefixed werden. Die Verfügbarkeit von Source-Code führt theoretischerweise zu sehr viel sichererem Code, eben weil alles unter den Augen der Öffentlichkeit geschieht.

    Phil

  • Kurz gesagt, bzw. einfach ausgedrückt:

    Man lässt Opensource-Software schon im Vorfeld hacken. Und zwar nicht nur von den Mitgliedern des eigenen Programmiererteams, dass vielleicht nur aus 30 Mann besteht, sondern von allen die Lust haben. Was mit unter recht viele sind. Und treu nach dem Motto "4 Augen sehen mehr als 2" (wobei die relation nicht 2:1 sonder weit höher liegt), werden fehler viel früher gefunden.

    Des weiteren. Ein geheimgehaltener Quelltext der über die Zeit wächst (bei Microsoft über Jahre auf eine enorme Grösse), bei dem sammeln sich die nie gefundenen Fehler und Lücken und ermöglichen unter umständen auch rückwirkende Lücken, so dass die neuen Programmzeilen zwar sicher sind, aber sie von "unten", also der Basis auf der sie aufgebaut wurden, angegriffen werden können.

    Wären bei OpenSource-Projekten dauernt die Fehler und Lücken auftauchen und zumeist direkt behoben werden und sich so kaum welche ansammeln können, ist bei so QuellcodeMonstern, wie z.B. Windows (das ja teilweise jetzt aus den Händen von Microsoft geschlüpft ist) eher der Fall das sich unmengen Fehler finden lassen, sobald genügen Leute suchen.

    Daher ist es auch so gefährlich, wenn plötzlich ein geheimer Quellcode öffentlich wird. Unmengen von Programmierern und vor allem Hackern stürzen sich auf den Quellcode auf der Suche nach nie entdeckten Fehlern.

    Ausserdem fühlen sich Programmierer von "geheimer/geschützter" Software auch sicherer und werden mit der Zeit nachlässiger: "Den Fehler kann ja keiner Finden, wenn er den Quellcode nicht kennt, machen wir erstmal was anderes. Z.B. Bunte Buttons. Die sind Verkaufsfördernder.".

    Eigendlich ganz logisch, nicht?

  • Danke für die ausführlichen Anworten
    Wenn ich Euch richtig verstanden habe wird bei sicherern Programmen so vogegangen, daß Fehler aufgedeckt und beseitigt werden können und so keine Manipulationenj möglich sind.
    Tatsächlich war ich der Meinung, je geheimer, umso sicherer. Allein diese Korrektur dieser fehlerhaften Ansicht war es wert , dieses Forum zu nutzen.
    Danke und Grüße
    rabenvogel

  • Zitat von rabenvogel


    Wenn ich Euch richtig verstanden habe wird bei sicherern Programmen so vogegangen, daß Fehler aufgedeckt und beseitigt werden können und so keine Manipulationenj möglich sind.


    Wichtig ist, daß möglichst viele _unabhängige_ Leute drauf sehen. Das schützt vor absichtlichen Manipulationen, aber eine Garantie hat man nie. Borland hat seine Interbase-DB jahrelang mit einer geheimen Backdoor ausgeliefert. Die ist auch nach Veröffentlichung des Codes erst viel zu spät entdeckt worden, eben weil nicht genug unabhängige Leute drauf gesehen haben. https://www.kb.cert.org/vuls/id/247371

    Zitat


    Tatsächlich war ich der Meinung, je geheimer, umso sicherer. Allein diese Korrektur dieser fehlerhaften Ansicht war es wert , dieses Forum zu nutzen.


    Und damit du das noch mal von einem international anerkannten Crypto-Guru nachlesen kannst: http://www.schneier.com/crypto-gram-0205.html
    Das ist jetzt sehr auf Kryptographie bezogen, aber läßt sich analog auf Source-Code anwenden. Sowohl in closed-source- als auch in open-source-Software (OSS) existieren Fehler (Exoten wie TeX oder qmail ignoriere ich jetzt mal bewußt, deren Autoren sind einfach keine "normalen" Programmierer sondern spielen in einer ganz anderen Liga). Bei OSS ist im Allgemeinen nur die Chance einfach größer, daß jemandem die Fehler auffallen.
    Sieh dir einfach mal an, wieviele Lücken es im IE gibt. Angenommen auf jede endeckte Lücke (trotz nicht vorhandenem Code) kommen 5 weitere, die man durch Code-Review finden könnten, dann sieht das _ganz_ düster aus sollte der Code seinen Weg in die Öffentlichkeit finden.
    Phil

  • Zitat von bugcatcher


    Des weiteren. Ein geheimgehaltener Quelltext der über die Zeit wächst (bei Microsoft über Jahre auf eine enorme Grösse), bei dem sammeln sich die nie gefundenen Fehler und Lücken und ermöglichen unter umständen auch rückwirkende Lücken, so dass die neuen Programmzeilen zwar sicher sind, aber sie von "unten", also der Basis auf der sie aufgebaut wurden, angegriffen werden können.


    Da hat closed-source aber kein Monopol drauf. Es haben auch schon sicherheitsrelevante Bugs im Linux-Kernel Jahre unentdeckt geschlummert.

  • Ich halte mich lieber an die Praxis. Und da ist eher die Regel, dass das eine oder andere Fehler hat. Und selbst wenn es keine richtigen Fehler sind, dann sind es irgendwelche nervigen "Features". ; )

  • Hallo Leute,
    folgender Aspekt von OS beschäftigt mich weiter:
    1. Schritt: Jemand benutzt OS, um die Version einer Anwendung mit einem Bug auszustatten, der nach einer bestimmten Zeit virulent wird.
    2 .Schritt: Man stellt dieses Produkt auf einen Server zum Herunterladen.
    3. Schritt: Man verlinkt diesen Server mit e-Mail oder auf anderen Webseiten.
    Vielleicht ist das garnicht möglich, aber als technischer Laie, weiß man das nicht so genau.
    Ich kann mir jedenfalls vorstellen, daß jemand mit krimineller Energie, Möglichkeiten. Motiven und Gelegenheit das machen könnte.
    Als Laie habe ich gottseidank nur die Vorstellung davon.
    Grüße
    rabenvogel
    l

  • Prinzipiell ist das richtig.
    Allerdings kann dir das bei jedem Freeware-Tool, dass du irgendwo ziehst, noch viel eher passieren.

    Wenn das Programm aber Open Source ist, gibt es zumindest die berechtigte Hoffnung, dass sowas ziemlich bald jemanden auffällt. Abgesehen davon schreckt die Aussicht, dass es eh entdeckt wird, Leute eher davon ab sowas zu machen denke ich.

    Bei großen Projekten wie z.B. Firefox oder gar dem Linux Kernel gibt es natürlich Gruppen von Leuten, die verhindern sollen, dass sowas passiert. Da werden die hinzugefügten Codes überprüft und gesicherte CVS-Systeme sorgen dafür, dass nix eingeschmuggelt werden kann.

    Aber natürlich gilt auch bei OSS genauso wie bei jeder anderen, dass man möglichst nicht alles blind installieren soll. Großen Projekten kann man aber grundsätzlich vertrauen.


    ..and some might argue that the earth is flat
    ..and some might argue that smoking is not harmful
    ..and some might argue that even Windows XP has become stable