Jeder kennt sie oder hat vielleicht schon mal davon gehört: Open-Source-Software. Es gibt Anwendungsprogramme, die als Open Source “auf den Markt” gebracht werden und kostenlos benutzt und weiterverteilt werden dürfen, sogar Betriebssysteme (wie Linux z.B.) laufen als Open-Source, doch was bedeutet Open Source eigentlich?
Open Source steht im Grunde für Quelloffenheit. Das bedeutet, dass man nicht nur das Produkt selbst (also z.B. die Office-Suite oder das Betriebssystem) in kompilierter, also lauffähiger, Form bekommt, sondern auch den Quell- oder auch Programmcode erhalten kann, wenn man es möchte. Diese Tatsache hat diverse Vorteile (aber auch Nachteile), die man als IT-Kundiger durchaus für sich selbst nutzen kann.Die Tatsache, dass man den Quellcode ausgeliefert bekommt, versetzt den Nutzer (entsprechende Kenntnisse vorausgesetzt) in die Lage, das Produkt entsprechend eigenen Wünschen anzupassen und zu modifizieren. Ein praktisches Beispiel sind vielleicht im Blog-Umfeld die gern genutzten Plugins und Themes. Hier hat man, entsprechende Programmierkenntnisse vorausgesetzt, die Möglichkeit, ein Plugin in seiner Funktion so zu modifizieren, dass es den individuell gewünschten Effekt erreicht, oder aber man kann z.B. im Theme diverse Änderungen vornehmen (wie ich es immer wieder gerne tue), die sich auf die Optik im Blog niederschlagen.
Genau dieses Problem, nämlich dass er in seinem Theme keine Änderungen vornehmen kann, hat Andreas Majeres derzeit. Er hat nämlich für sein Blog ein optisch zwar sehr schön daher kommendes Theme gekauft, hat aber das Problem, dass die PHP-Dateien “encrypted”, also verschlüsselt sind.
Der Verschlüsselung liegt hier meist eine “base64-encryption” zu Grunde, die sich in der Regel auch wieder invertieren lässt (z.B. über diesen Base 64 Decoder). Eine Decodierung durch die Nutzerseite ist aber häufig durch die Nutzungsvereinbarungen untersagt – also im Grunde durch die entsprechenden Entwickler nicht erwünscht. Der Grund ist hier wohl klar: Individuelle Anpassungen sollen gefälligst dem Entwickler wieder Geld einbringen – also soll der Kunde sich mit einem “Entwicklungsauftrag” an ihn wenden.
Ob in Andreas Fall auch eine Base64-Codierung zum Einsatz kommt, weiß ich nicht – hier fehlt es mir an Hintergrund-Wissen, jedoch die Wahrscheinlichkeit ist recht hoch, dass dem so ist.
Wir erkennen also einen sehr großen Vorteil von Open-Source-Software: Fehlerkorrekturen oder Anpassungen sind durch den Benutzer (entsprechendes Wissen immer wieder vorausgesetzt) selbst durchführbar und legitim. Doch Open Source birgt auch Nachteile:
Genauso wie man Fehler beheben kann, kann man sie auch ausnutzen, schließlich hat man als “Bad Guy” das Programm in seiner reinsten Form vor sich, kann es analysieren und seine Fehler finden. Häufig werden dann Schwachstellen gesucht, die die Ausführung von eigenem Code (zur weiteren Infektion des Systems) ermöglichen. Heap-Overflow und Buffer-Overflow wären hier zwei Begriffe, die in solchen Zusammenhängen immer wieder zu lesen sind.
Da aber hinter der Open-Source-Software in der Regel eine recht große Entwickler- und Supportergemeinde steht, die ebenfalls aktiv die Suche nach solchen Problemen betreiben, sind Fehlerbehebungen in diesem Zusammenhang auch häufig recht schnell und wirkungsvoll gefunden. Bei “Closed-Source-Software” kann dies schon mal etwas länger dauern.
Wer sich etwas mehr mit diesem Thema beschäftigen möchte, dem sei nachfolgende Liste “weiterführender Literatur” empfohlen:
- May Computer Blog | Über Open Source und freie Software
- Open source software: Controlling your computing environment
- Was ist Linux?!












Klasse Tip. Danke, vor allem mit dem Decodieren, denn das kommt immer häufiger vor.
26. Jun. 2009 um 11:02 Uhr | #
@Andy:
Ich weiß, ich habe solche Themes auch schon gehabt, um sie mir anzuschauen, hab sie aber dann wegen dieses Encodings als ungeeignet verworfen – ich will mich ja nicht angreifbar machen gegenüber irgendwelchen Theme-Entwicklern.
Aber wer selbst mal was encoden oder decoden will, der kann mit diesem Link-Tipp auf jeden Fall was anfangen
26. Jun. 2009 um 11:03 Uhr | #
Danke dir Kim für diesen sehr hilfreichen Beitrag!
Wie das Theme codiert ist, weiß ich nicht. Damit es funktioniert musste ich erst IonCube auf dem Server installieren. Vielleicht sagt dir das was.
Wenn der Decoder funktioniert, werde ich das Theme auf jeden Fall decodieren und die Anpassungen machen. Ich will schließlich keine Piraterie betreiben, sondern nur mein bezahltes Eigentum zum Laufen bekommen.
26. Jun. 2009 um 11:24 Uhr | #
@Andreas:
Kannst ja mal in der footer.php z.B. nachschauen, wenn dort irgendwas in der Art eval(base64_decode(…)); zu finden ist, dann kannst du den Decoder auf jeden Fall mal nutzen und das Buchstabengewirr dort reinkopieren.
26. Jun. 2009 um 11:26 Uhr | #
Ich habe den Decoder eben mit dem Code gefüttert. Funktioniert leider nicht.
Den Codeschnipsel gibt es leider nicht in meiner footer.php
26. Jun. 2009 um 11:36 Uhr | #
@Andreas:
Hmpf… dumm dümmlich doof… Schade, dass man da nicht weiterhelfen kann. Scheinbar ist wirklich das IonCube das Problem zu sein. Ich habe damit zwar noch nie Erfahrungen gemacht, aber was man so auf der Website von denen liest… ich bin begeistert im negativen Sinne.
Ich drück dir mal die Daumen, dass du das doch irgendwie hin bekommst.
26. Jun. 2009 um 11:41 Uhr | #
Ich habe auch gerade zu dem Thema gegooglet. So wie es ausschaut nicht zu entschlüsseln…
26. Jun. 2009 um 11:45 Uhr | #
@Andreas:
Zumindest mal nicht so einfach. Man müsste sich jetzt in den installierten Code con IonCube reinlesen und einarbeiten um herauszubekommen, wie wie das decodieren dort. Ob der Aufwand dem Nutzen jedoch in einem vernünftigen Verhältnis gegenüber steht, wage ich zu bezweifeln. Ich denke mal, bis man als Mensch mit PHP-Kenntnissen versteht, was die Jungs da treiben, können vielleicht Wochen oder Monate vergehen… wenn man Pech hat.
26. Jun. 2009 um 11:56 Uhr | #