Christoph Zurnieden: Pornoblocker. Gibt es eine Software?

Beitrag lesen

Hi,

irgendwie finde ich, daß Du das Ganze in diesem Fall etwas verkomplizierst.

Ja, das ist mein Problem.
Aber ich hoffe jetzt doch so langsam dahinter gestiegen zu sein, wo die durch meinen Duktus und meine Didaktik verursachten Unklarheiten liegen und gestatte mir noch einen letzten Versuch.
Zunächst einmal möchte ich erwähnen, das ich die Ziele der Open-Source-Gemeinde zwar unterstützen kann, der Gemeinde selber aber nicht angehöre. Meine Gründe sind nicht philosophischer Natur, sondern ziemlich pragmatisch und auch im Einklang mit der herrschenden Lehrmeinung.
Ich seh' vielleicht etwas wild aus, bin aber doch im Grunde meines Herzens ein rechter Spießbürger.

D'rum ab jetzt nicht mehr als wildes Frage&Antwortspiel - wofür ich ja zu Recht schon einen auf den Deckel bekam - sondern wissenschaftlich ordentlich und mit Bügelfalte soweit die stark begrenzten Ressourcen es zulassen.

Im Folgenden soll dargelegt werden, ob und wann es nötig ist, den Quellcode eines Computerprogrammes öffentlich zugänglich zu machen und wenn: in welchem Maße dies geschehen soll.

Da bei der Leserschaft ein erweitertes Grundwissen über die Informationsverarbeitung mittels PCs vorrausgesetzt werden kann, aber vor allem aus Platzgründen hier nur eine stark gekürzte Liste nötiger Definitionen:

Maß der Sicherheit von DV-Anlagen:
Inwieweit DV-Anlagen den Zugriff - Lesen und Schreiben - auf Daten in der Lage sind zu beeinflussen. Diese Maß ist dimensionslos.

Sicherheitsprogramm:
Ein Programm welches das Sicherheitsmaß beeinflußt.

Quellen:
Hier: die vollständige Information, die zur Herstellung eines lauffähigen Programmes nötig ist. Hierzu gehören neben dem eigentlichem Quellcode auch Hilfsdateien und Informationen bezüglich aller nötigen Hilfsprogrammen (Version, Bezug, Quelloffenheit usw). Dies kann auch ein Betriebsystem und/oder BIOS mit einschließen.

Dokumentation:
Text- und evt auch Bildmaterial, das ein Programm vollständig beschreibt.

Größe eines Programmes:
Komplexität und Länge eines Codes. Komplexität und Länge sind nicht zwingend proportional zueinander, die Umgebung spielt ebenfalls eine große Rolle. Der Code muß nicht unbedingt menschenlesbar sein.

Anlaß dieser Untersuchung war die Veröffentlichung eines kleine Sicherheitsprogrammes, das einige der Aktivitäten eines Computerbenutzers aufzeichnet und zum Teil diese Aktivitäten auch einzuschränken in der Lage ist.
Relevant für die Einteilung diese Programms als Sicherheitsprogramm ist alleine schon die Tatsache, das es dem Programm aus technischen Gründen nicht möglich ist zu unterscheiden, wer der Benutzer tatsächlich ist, dessen Aktivitäten aufgezeichnet werden. Das kann datenschutzrechtlich problematisch werden. Nun soll dies aber auch keine juristische Abhandlung werden, sondern nur aufzeigen, wie sich Risiken minimieren lassen.

Folgende einfache Alternativen stehen zur Auswahl:

  • Untätigkeit
  • Zurückziehen des Programmes
  • Herausgabe der Quellen auf Anfrage
  • Veröffentlichung der Quellen

Untätigkeit ändert nichts am Problem. Ein Zurückziehen des Programms von der öffentlichen Zugänglichkeit ist wegen der Struktur des Internets nicht mehr möglich, da bereits Kopien existieren und sie auch nicht mehr "eingesammelt" werden können.

Die individuelle Herausgabe der Quellen auf Anfrage wurde angeboten, aber zum Zeitpunkt der Niederlegung dieses Aufsatzes nicht an der gleichen Stelle, wie das Angebot zum Download des zur Diskussion stehenden Programmes. Dadurch kann zwar eine allgemeine Bekanntheit angenommen werden, es wären dazu aber größere Aktivitäten nötig, die aufgrund der Tatsache, das Quellen stets am gleichem Platz wie Binaries zu bekommen sind - Ausnahmen bestätigen die Regel - höchstwahrscheinlich gar nicht erst vorgenommen werden. Das die Quellen erhältlich sind bleibt dem Nutzer also eher verborgen.
Wenn Quellen veröffentlicht werden sollen müssen sie also an prominenter und leicht auffindbarer Stelle plaziert werden.

Was aber macht die Veröffentlichung der Quellen überhaupt nötig? Der Anwender kann ja damit gemeinhin nicht viel anfangen, der benötigt nur das fertige Programm. Ob mit oder ohne Quellen, dem einfachem Anwender kann man alles unterschieben. Ist er ein wenig sensibilisiert gegenüber Computersicherheit wird er noch ein aktuelles Virus-Suchprogramm auf das heruntergeladene Binary ansetzen. Das sollte das Risiko auf ein erträgliches Maß heruntersetzen, wofür dann noch Quellen?
Nun, bei vollständiger Veröffentlichung der Quellen kann in diese Quellen _jeder_ hineinschauen, nicht nur der Anwender. Sei es aus Zufall oder auf Nachfrage: diese Quelle kann auch jemand anschauen, der sich damit auskennt. Augrund der Struktur des Internets können so festgestellte Unregelmäßigkeiten (geschickt verborgene Backdoor, Quellen pasen gar nicht zum Programm etc) sofort und weltweit veröffentlicht werden. Da so zumindest die Quellen als überprüft gelten können, kann aus diesen Quellen ein insoweit sicheres Programm gebaut werden, als es die Statistik zuläßt. Vom Problem mit kompromitierten Compilern und sonstigen Hilfsprogrammen einmal abgesehen, denn rein theoretisch kann alle Software *from scratch* händisch gebaut werden, praktisch muß man sich aber auf die "Sauberkeit" einiger Programme verlassen.

Nun, das ist ja alles schön und gut, aber lästig und teilweise auch unmöglich, da es viele Programme gibt für die es auch mit sehr viel Geld und guten Worten keine Quellen gibt. (Militär hilft aber, Regierungen bekommen auf Nachfrage meist die Quellen) Es gibt da einige Programme darunter auf die niemand verzichten möchte und auch keineswegs soll.

Kann eine Trennlinie gezogen werden und wenn ja wo? Ja, es kann und sie sollte da gezogen werden, wo das Programm das Sicherheitsmaß beeinflussen kann. Diese Trennung ist aber leider alles andere als scharf, zumindest eine Art Threshhold wäre begrüßenswert. Eine sinnvoller, wenn auch recht hoher Threshhold wäre ein Konflikt mit bestehendem Gesetz. Im beschriebenem Fall wäre das der Datenschutz.

Wo kann da nun die Veröffentlichung der Quellen dem normalem Anwender helfen?

Gibt es gar keine Veröffentlichung:
"Es ist allgemein bekannt, das man nicht so einfach irgendwelche Programme aus dem Netz läd!" -> Hammer -> 100 Tagessätze.

Gibt es eine Veröffentlichung nur auf Nachfrage:
Der bessere Anwalt könnte bei dem richtigem Richter gewinnen. Die Chancen setze ich aber mal bei fifty-fifty.

Gibt es eine Veröffentlichung der Quellen:
"Ich habe mich kundig gemacht, Herr Richter, und es war nichts Negatives zu finden. Da habe ich die Herkunft der Quellen sorgfältig geprüft und daraus das Programm gebaut. Ging ja einfach mit der Dokumentation. Was kann ich denn mehr machen, Herr Richter?" Ist auch der Anwalt keine Graupe stehen die Chancen gut, da unbehelligt rauszukommen.

Der Anwender steht sich also bei Veröffentlichung der Quellen auch dann noch besser, wenn er damit direkt nichts anfangen kann.

Es kam der Einwurf, das bei Veröffentlichung der Quellen jederman ene Änderung, auch maligner Art vornehmen kann. Dies scheint unter der Vorrausetzung angenommen worden zu sein, das diese Änderung nicht nachweisbar ist. Das wäre zwar nicht einfach, aber durchaus möglich. Nötig wäre dazu ein voller Zugriff auf alle Server auf denen das angebotene Programm liegt. Ist eine kryptographische Prüfsumme im Umlauf, ist auch diese an allen Orten zu ändern. Letzteres ist möglich, wenn der Orginalautor gerade anderweitig beschäftigt ist und der Angreifer eine "neue Version" publik macht. Eine massive Verbreitung eines Schädlings im Internet kann auch in Minuten erfolgen, nicht unbedingt erst in Tagen oder gar Wochen. Jüngste Ereignisse sind beredtes Zeugnis. In den durchschnittlich 7,5 Stunden gesunden Nachtschlafes kann also allerhand geschehen.
Dies ist relativ einfach zu umgehen, wenn die Quellen eine Lizenz tragen, die zumindest die Veröffentlichung von Kopien an anderer Stelle erlaubt. Je mehr Server daran beteiligt sind, desto niedriger ist die Chance alle zu besitzen. Hier zieht auch der Trick mit der neuen Version nicht mehr wirklich, da diese erst langsam Verbreitung findet, durch diese Verbreitungaber auch mehr Augen passiert und eine maligne Intention erkannt werden könnte.

Ist die Größe des Programmes entscheidend?
Nun, wenn es sich um die Quellen handelt könnte sich in der Vielfalt natürlich allerhand verstecken. Doch sind so große Programm nicht von einem Einzelnem geschrieben worden, es wäre also eine kriminelle Vereinigung vorauszusetzen, die für nichts anderes als dem Verbergen übler Tricks viel Arbeit einsetzt. Das ist unwirtschaftlich und deshalb unwahrscheinlich. Es könnte jedoch ein Fehler in einem anderem Programm genutzt werden Zugriff auf die Quellen auf dem Originalserver zu bekommen, wie das letzthin erst bei PostNuke geschehen ist. Es wurde jedoch innerhalb kurzer Zeit erkannt. Nichtsdestotrotz: es ist stets mit einem Restrisiko zu rechnen.
Wenn das Programm nun recht klein ist, können die Quellen bequem geprüft werden. Das funktioniert aber natürlich nur, wenn die Quellen auch vorhanden sind, denn bösartiger Code ist sehr klein, der fällt nicht unbedingt auf.

Sicherheitsprogramme ohne Quellen sind also nicht sicher und auch nicht zu sichern. Es ist also davon die Finger zu lassen. Genaueres ist in den allgemein anerkannten "Common Criteria" (http://www.commoncriteriaportal.org/) enthalten.
Das führt dann aber auch zu folgenden Konsequenzen:
Um ein System sicher machen zu können, müssen _alle_ Quellen öffentlich sein. Dazu gehört rein theoretisch dann auch die Hardware. Alle Systeme, die keine Quellen veröffentlichen sind prinzipiell als unsicher anzusehen und entsprechend zu behandeln. Das schlägt sich auch auf den Kosten nieder, die bei gleichem Sicherheitsmaß für Systeme ohne respektive mit Quellen aufgewand werden müssen.

Ich schreibe keine Riesenprogramme (außer mal Warenwirtschaften, usw.), bin kaum bekannt, habe nur zwischen 500 und 1000 Sessions pro Tag. Ich habe auch nicht vor, eine große Softwarefirma auf die Beine zu stellen oder einen Browser zu schreiben.

Eigentlich wollte ich ja nicht direkt reagieren, aber hier muß ich, da vielleicht auch andere hier mitlesen, die Deine Aussagen resignieren lassen könnten.

Es sind meist die kleinen Progrämmchen, die einem das Leben erleichtern. Nur als Beipiele für wirklich nützliche kleine Helferlein:

  • etwas, das den Text aus Worddateien zieht.
  • etwas, das Excel-Dateien in HTML-Tabellen wandelt
  • etwas, das PDF-Dateien zusammenfügen kann.
  • eine deutsche Übersetzung
  • ein Stück fehlender Dokumentation.
  • etwas das tausende von GIF-Dateien in PNG umwandelt.
    Alle solchen Kleinigkeiten erleichtern einem das Leben als Benutzer, dafür muß man teilweise noch nicht einmal programmieren können, da kann jeder mitmachen. Das einzige unabdingliche sind vielleicht noch ein Mindestmaß an sozialer Kompetenz und damit einhergehend ein relativ dickes Fell.

Deshalb bewegen wir uns in ganz verschiedenen Regionen und werden hier wahrscheinlich keine Einigung erzielen.

Das wäre zwar erfreulich, ist aber keineswegs Ziel.

An einem trübem Samstag nach all zu langer Arbeitswoche geschrieben. Bitte mir alle Ungereimtheiten, grammatikalischen Fehler und orthographischen Unzulänglichkeiten nachzusehen. Zumindest soweit möglich.

so short

Christoph Zurnieden

0 98

Pornoblocker. Gibt es eine Software?

Robi
  • software
  1. 0

    Nein.

    Christoph Zurnieden
    1. 0
      Robi
      1. 0
        Christoph Zurnieden
      2. 0
        Thomas J.S.
        1. 0
          Thomas J.S.
        2. 0
          Christoph Zurnieden
          1. 0
            Thomas J.S.
            1. 0
              Chräcker Heller
            2. 0
              Christoph Zurnieden
              1. 0
                Thomas J.S.
                1. 0
                  Christoph Zurnieden
            3. 0
              fastix®
              1. 0
                Christian Kruse
                1. 0
                  fastix®
          2. 0
            Tom
    2. 0
      fastix®
      1. 0
        Auge
      2. 0
        Tom
        1. 0
          fastix®
          1. 0
            Auge
  2. 0
    Alexander Brock
    1. 0
      Robi
    2. 0
      Jens Holzkämper
      1. 0
        dbenzhuser
      2. 0
        Alexander Brock
    3. 0
      Johannes Zeller
      1. 0
        Alexander Brock
        1. 0
          Johannes Zeller
  3. 0
    skyposter
    1. 0
      Robi
      1. 0
        skyposter
      2. 0
        Jo2A
        1. 0
          Robi
  4. 0
    Thomas W.
    1. 0
      Robi
      1. 0
        Chräcker Heller
      2. 0
        Slyh
        1. 0
          Chräcker Heller
          1. 0
            Slyh
  5. 0
    Gernot Back
    1. 0
      Arx
      1. 0
        Gernot Back
      2. 0
        dbenzhuser
        1. 0
          Gernot Back
  6. 0
    Marc Reichelt
    1. 0
      Chräcker Heller
      1. 0
        Marc Reichelt
      2. 0
        Gernot Back
        1. 0
          Chräcker Heller
          1. 0
            Gernot Back
        2. 0
          Tom
          1. 0
            Gernot Back
    2. 0
      Robi
  7. 0

    Surfen Deine Kinder auf Porno-Seiten oder der IE?

    Bio
    1. 0
      Ludger
  8. 0
    Tom
  9. 0

    Internetzugang sperren - wie?

    Louis
    1. 0
      dbenzhuser
      1. 0
        Louis
        1. 0
          Tom
    2. 0
      Bio
      1. 0
        Louis
        1. 0
          Bio
    3. 0
      Jens Holzkämper
      1. 0
        Tom
        1. 0
          Tom
        2. 0
          Jens Holzkämper
  10. 0
    Mathias Bigge
    1. 0
      fastix®
    2. 0
      Gernot Back
      1. 0
        Tom
        1. 0
          Johannes Zeller
          1. 0
            Tom
    3. 0
      Tom
  11. 0
    Jörg Lorenz
    1. 0
      Christoph Zurnieden
      1. 0
        Jörg Lorenz
        1. 0
          Christoph Zurnieden
          1. 0
            Jörg Lorenz
            1. 0
              Christoph Zurnieden
              1. 0
                Jörg Lorenz
                1. 0
                  Christoph Zurnieden
                  1. 0
                    molily
                    1. 0
                      Christoph Zurnieden
                  2. 0
                    Jörg Lorenz
                    1. 0
                      Christoph Zurnieden
                      1. 0
                        Jörg Lorenz
                        1. 0
                          Christoph Zurnieden
                          1. 0
                            molily
                            1. 0
                              Christoph Zurnieden
                              1. 0
                                molily
                                1. 0
                                  Christoph Zurnieden
                          2. 0
                            Jörg Lorenz
                            1. 0
                              Christoph Zurnieden
    2. 0
      Robi
  12. 0
    Tom
    1. 0
      Robi