Open Source: Lizenzen gegen den Missbrauch freier Software

Für die Entwicklung seiner Schnüffelsoftware macht das Hacking Team ausgiebig Gebrauch von Open-Source-Software (OSS). Dabei kommen nicht nur Entwicklungswerkzeuge wie Ruby und Python zum Einsatz, einige freie Komponenten landen auch als Teil der Spionagesoftware auf den Geräten der Opfer - sehr zum Ärger ihrer Entwickler. Sie werden damit unfreiwillig zu Komplizen des Hacking Teams, das seine Software weltweit verkauft - auch an zweifelhafte Kunden . Thorsten Schröder vom Chaos Computer Club (CCC) will den OSS-Entwicklern daher mehr Rechte zur Verfügung stellen, selbst zu entscheiden, für welche Zwecke ihre Software eingesetzt werden darf. Er stellt damit aber auch die grundsätzlichen Regeln für die Veröffentlichung freier Software infrage.
In kürzlich geleakten Unterlagen des Hacking Teams finden sich zuhauf Hinweise auf freie Software. Die Entwickler der Spionagesoftware analysierten und nutzen etwa den Treiber für Microsofts Dateisystem NTFS, das der freie Bootloader Grub verwendet. Er soll im Uefi-Rootkit des Hacking Teams Verwendung finden, das dessen Spionagesoftware auch nach einer Neuinstallation von Windows automatisch mitinstalliert.
Mit Open Source gegen Open Source
Die Spionagesoftware des Hacking Teams wurde auch auf Linux portiert. Naturgemäß kam bei der Entwicklung auch freie Software zum Einsatz. In den Sitzungsprotokollen des Unternehmens vom Juni 2015(öffnet im neuen Fenster) , kurz vor dem Leak der Unterlagen, kam die Linux-Distribution Tails auf die Agenda. Für sie sollte ebenfalls ein Rootkit entwickelt werden. Darüber sollten Dritte Zugriff auf das auf Sicherheit getrimmte Betriebssystem erhalten, das Whistleblower Edward Snowden nach eigenen Angaben genutzt hat , um sich mit dem Tor-Netzwerk zu verbinden und verschlüsselt mit Journalisten zu kommunizieren.
Auch für die Versionen seiner Spionagesoftware für die mobilen Betriebssysteme Blackberry und Android musste das Hacking Team auf Open-Source-Werkzeuge zurückgreifen. Besonders der Entwickler Collin Mulliner war erbost darüber(öffnet im neuen Fenster) , als er Hinweise erhielt, dass das Hacking Team gleich zwei seiner Entwicklungen genutzt habe.
Gefunden wurde die Software in dem Hacking-Team-Fundus, weil die Entwickler dort gemäß den GPL-Vorgaben die Namensnennung des ursprünglichen Entwicklers im Quellcode beibehielten. Er habe sich zunächst gegen Vorwürfe wehren müssen, er habe seine Software im Auftrag des Hacking Teams entwickelt, schreibt Mulliner in seinem Blog. Er wünsche sich eine Lizenz, die einen solchen Missbrauch seiner Software ausschließe, habe aber keine Ahnung, ob es bereits eine gebe oder wie diese aussehen sollte.
Die unbedingte Freiheit für Open Source
Verboten ist eine solche Verwendung gegenwärtig nämlich nicht. Im Gegenteil: Die meisten freien Lizenzen - allen voran die GNU General Public License, kurz GPL - sehen die uneingeschränkte Nutzung freier Software durch Dritte vor. Dieses Recht gehört zu den vier Freiheiten, die GPL-Initiator Richard Stallman bereits 1985 formulierte. Sobald eine Software in Umlauf gebracht worden ist, muss sich jeder an dem Quellcode bedienen und ihn selbst modifizieren und weiterverwenden können. Er muss dann allerdings auch selbst seinen Quellcode offenlegen und den ursprünglichen Entwickler erwähnen. Genau das ist der von Richard Stallman beabsichtigte Nutzen der GPL. Software soll unter den sogenannten "Vier Freiheiten" stehen: Sie soll von jedem begutachtet, verwendet, weitergegeben und eben nach den eigenen Bedürfnissen angepasst werden können.
Thorsten Schröder vom Chaos Computer Club hält die GPL inzwischen für unzeitgemäß. Die rigiden Vorgaben der Lizenz schränkten die Freiheiten der Entwickler beim Einschränken von Freiheiten ein, sagt er(öffnet im neuen Fenster) . Entwickler müssten auch bestimmen können, unter welchen Umständen ihre Software nicht eingesetzt werden dürfe, etwa in Spionagesoftware oder zu auch militärischen Zwecken, bei denen Menschen zu Schaden kommen könnten.
Die Gefahr uneingeschränkter Freiheiten
Ganz offen bewirbt beispielsweise der Open-Source-Anbieter Red Hat einen seiner größten Kunden: das US-Verteidigungsministerium. Besonders das System des US-Militärs zur Ortung von Freund und Feind erwähnt das Unternehmen auf seiner Webseite(öffnet im neuen Fenster) . Blue Force Tracking heißt es und nutzt unter anderem den Linux-Kernel. "Wir marschierten in Bagdad ein, mit Hilfe von Open Source" , zitiert Red Hat den US-General Nicholas Justice, der für Blue Force Tracking verantwortlich war.
Die Betriebssysteme der Drohnen des US-Militärs basieren auch auf dem Linux-Kernel , der unter der GPLv2 steht. Grundsätzlich schreibt die GPL eine Weitergabe des Quellcodes nur dann vor, wenn auch die Software weiterverteilt wird. Wer seine eigens weiterentwickelte Open-Source-Software unter Verschluss halten will, muss demnach auch den Quellcode nicht veröffentlichen.
Militärischer und ziviler Nutzen
Der Philosophie des Nehmens und Gebens, die Stallman auf Software übertrug, folgt aber auch das US-Militär(öffnet im neuen Fenster) . Die Zusammenarbeit von Red Hat und der US-Regierung beispielsweise brachte unter anderem SE Linux hervor, eine Sicherheitsplattform, die inzwischen in fast allen Linux-Systemen zum Einsatz kommt. Auch in Android wird sie genutzt, samt Linux-Kernel. Und das militärische Forschungszentrum Darpa veröffentlicht regelmäßig Software unter freien Lizenzen, etwa die Suchmaschine Memex für das sogenannte Deepweb, also die Teilbereiche des Internets, die gängige Suchmaschinen wie Bing, Google oder Yahoo nicht erfassen. Der geplante Einsatz für Memex: Kriminelle im Internet aufspüren.
Die uneingeschränkte Weitergabe von Open-Source-Software wird in Abschnitt 6 der Lizenz definiert. "Jedesmal, wenn Sie das Programm (oder ein auf dem Programm basierendes Werk) weitergeben, erhält der Empfänger automatisch vom ursprünglichen Lizenzgeber die Lizenz, das Programm entsprechend den hier festgelegten Bestimmungen zu vervielfältigen, zu verbreiten und zu verändern. Sie dürfen keine weiteren Einschränkungen der Durchsetzung der hierin zugestandenen Rechte des Empfängers vornehmen." Sie ist die Basis der sogenannten Freiheit Null(öffnet im neuen Fenster) , "die Freiheit, das Programm auszuführen wie man möchte, für jeden Zweck."
Ausnahmen sind nicht erlaubt
2006 veröffentlichten Entwickler einen Gnutella-Client namens Global Processing Unit (GPU)(öffnet im neuen Fenster) , der Rechenleistung über das P2P-Netzwerk auf mehrere Computer verteilen kann. Angesichts des möglichen militärischen Einsatzes einer solchen Software ergänzten die Entwickler die beigelegte GPLv2 um eine eigene Klausel: Ihre Software dürfe nicht zum Schaden von Menschen eingesetzt werden(öffnet im neuen Fenster) . Nur die Free Software Foundation dürfe als Verwalter der GPL Änderungen vornehmen, war die Reaktion, und Stallman sagte der längst nicht mehr verfügbaren Webseite Newsforge, niemand habe das Recht, anderen Anwendern Beschränkungen bei der Nutzung von Software aufzuerlegen. Inzwischen ist der Passus aus der beigelegten Lizenz wieder verschwunden.
Die Allegorie der Stifte
Sechs Jahre später verteidigte Stallman diese Freiheit Nummer 0 nochmals. Nur weil Stifte und Schreibmaschinen für üble Taten verwendet werden, könne man sie nicht verbieten. Und er wäre sehr unglücklich darüber, wenn seine Freunde beim Militär in Venezuela neue Versionen einer Software nicht auf ihre Server installieren dürften, ein Server, der das Land später möglicherweise vor einer militärischen Invasion schützen würde(öffnet im neuen Fenster) .
Felix von Leitner vom CCC griff das Thema ebenfalls 2012 auf, als bekannt wurde, dass die US-Navy ihre Drohnenkontrollsysteme auf Linux umstellen wollte(öffnet im neuen Fenster) . Der jüngste Vorfall um das Hacking Team veranlasste Thorsten Schröder vom CCC, diese Problematik noch einmal zur Diskussion zu stellen. Schröder greift erneut die Idee einer Zivilklausel(öffnet im neuen Fenster) für freie Software auf.
Mit Ausschlussklauseln gegen Software-Missbrauch
Schröder will Entwicklern mehr Verantwortung für ihre Software und deren Einsatz überlassen. Nicht nur die GPL, sondern auch andere freie Softwarelizenzen wie die Lesser GNU General Public License (LGPL), die BSD-Lizenz (Berkeley Systems Distribution) oder die Apache-Lizenz brächten zwar alle einen Haftungsausschluss mit, der besage, dass der ursprüngliche Entwickler nicht für Einschränkungen oder Folgeschäden seiner Software zur Verantwortung gezogen werden könne.
Darum geht es Schröder aber nicht. Er will den Entwicklern die Möglichkeit geben, durch Ausschlussklauseln einen Einsatz ihrer Software zu verhindern, wenn dieser ihrem ethischen Standpunkt widerspricht. Er wolle dem Dogmatismus Richard Stallmans durch eine fortschrittliche Lizenzierung entgegentreten, sagt er.
Creative Commons für Software
Schröders Vorschlag: Eine Sammlung von Ausschlussklauseln zu erstellen, die ähnlich den Creative-Commons-Lizenzen ganz gezielt Einsatzzwecke ausschließt. Er nennt als Beispiel eine Non-Military-Usage-Klausel. Software dürfte dann weder für militärische Zwecke eingesetzt werden, noch als Grundlage für militärische Forschung dienen - auch dann nicht, wenn die jeweilige Regierung auf ihre nationale Sicherheit pocht. So soll verhindert werden, dass Gerichte einen Entwickler dazu zwingen, sich nationalen Interessen unterzuordnen.
Solche Klauseln müssten indes kurz, klipp und klar formuliert werden. Entwickler könnten so genau definieren, von wem ihre Software eingesetzt werden dürfe. Manche Programmierer hätten wohl keine Probleme damit, wenn ihre Werke bei der Polizei oder in Kernkraftwerken zum Einsatz kommen, während andere auch das verhindern wollten.
Eine weitere Möglichkeit: Der ursprüngliche Entwickler verlangt, dass der Benutzer, auf dessen Hardware die Software später läuft, auch damit einverstanden ist. So könnte beispielsweise der Einsatz von Open-Source-Software in Schnüffelsoftware wie einem Staatstrojaner verhindert werden. Auch für IT-Sicherheitsforscher wäre eine Klausel interessant, etwa wenn sie Machbarkeitsstudien veröffentlichen, die nicht missbraucht werden sollen.
Missbrauch muss geahndet werden
Diese modulare Lizenzierung nennt Schröder Coding Commons, in Anlehnung an die Creative-Commons-Lizenzen(öffnet im neuen Fenster) . Sie sollten herkömmliche Lizenzen nicht ersetzen, sondern lediglich ergänzen. Mit der BSD-Lizenz seien solche Ausschlussklauseln bereits möglich, sagte Schröder. Andere müssten nur geringfügig angepasst werden.
Der Missbrauch sollte aber auch geahndet werden können. Eine rechtliche Handhabe gebe es nämlich, denn wie die bereits mehrfach erfolgreich vor Gerichten verteidigte GPL sollen die Klauseln einen Vertrag darstellen. Gegner von Ausschlussklauseln argumentieren stets, dass sich deren Umsetzung nur schwer kontrollieren lasse. Das möge stimmen, sagte Schröder, aber solche Klauseln seien immerhin auch ein Statement.
Öffentliche Debatte als Strafe
Sollte ein Missbrauch entdeckt werden, müsste der Ertappte die vertragswidrig eingesetzte Software veröffentlichen. Hier nennt Schröder das Hacking Team als Beispiel, auch wenn ein Nachweis oft kaum möglich sein wird. Auch eine hohe Geldstrafe schlägt Schröder vor. Sie solle bereits im Vorfeld vor der illegalen Nutzung von Software abschrecken. Das wirksamste Mittel gegen den Missbrauch sieht Schröder aber in der öffentlichen Debatte, die beispielsweise eine Gerichtsverhandlung auslösen würde.
Schröder will bis zum Chaos Communication Congress Ende dieses Jahres Ideen für solche Klauseln sammeln und diskutieren. Bis dahin will er auch eine erste nutzbare Lizenzform präsentieren, die Entwickler dann bereits nutzen können. Wer sich engagieren will, erreicht Schröder über die E-Mail-Adresse ths@ccc.de.



