In puncto Sicherheit gibt es große Unterschiede zwischen einem proprietären Content-Management-System und einem Open-Source-CMS. Lassen Sie uns diskutieren.
Verfolgen Sie die Nachrichten und fühlen Sie sich in diesen Tagen weniger sicher?
Wenn Sie die Nachrichten verfolgen, haben Sie vielleicht bemerkt, dass Geschichten über Datensicherheit - das Fehlen davon - mit zunehmender und alarmierender Geschwindigkeit berichtet werden. Diese Angriffe gehen von verschiedenen Quellen aus und betreffen unterschiedliche Plattformen. Sie reichen von besorgniserregend über ärgerlich bis hin zu gruselig.
Wenn Sie sich auf dem Markt für eine Content-Management-Plattform befinden, lesen Sie diese Berichte mit besonderer Aufmerksamkeit, während Sie Ihre Wahl treffen. Während Ihnen bei der schwindelerregenden Anzahl von Optionen der Kopf schwirrt, werden Sie schließlich in eine Debatte über die Vorzüge von Open-Source-CMS-Plattformen hineingezogen. Open-Source-Optionen bieten Flexibilität, Freiheit und Kosteneffizienz (zumindest für den Softwareteil Ihrer Implementierung), aber der Faktor Sicherheit spielt in dieser Gleichung eine große Rolle.
Die Open-Source-Entwicklung entstand in den späten 1990er Jahren und führte Die Zusammenarbeit und Kooperation in den Softwareerstellungsprozess ein. Es war eine große Abkehr von der traditionellen Entwicklung, bei der Programmierer aus den Gewinnen von Softwareunternehmen bezahlt wurden und der Quellcode als geistiges Eigentum gehütet wurde. Eine Gemeinschaft von Entwicklern zu schaffen und den Code jedem mit einer DFÜ-Breitbandverbindung zur Verfügung zu stellen, schien für einige rücksichtslos, aber es wurde argumentiert, dass die schiere Transparenz die Rechenschaftspflicht sicherstellte, Fehler aufdeckte und gutes Verhalten sicherstellte. Obwohl die Software effektiv kostenlos war, können die damit entwickelten Produkte vermarktet und verkauft werden. Heutzutage werden viele Produkte auf diese Weise hergestellt, wobei Wartung und Dienstleistungen für viele Unternehmen Einnahmequellen schaffen.
Das ist eine berechtigte Frage, und je nachdem, wen Sie fragen, werden Sie sehr unterschiedliche Antworten erhalten. Die Debatte dreht sich um zwei wesentliche Unterschiede zwischen Open-Source- und proprietären Systemen. Den ersten haben wir bereits angesprochen - den Zugang zum Quellcode. Der zweite Unterschied sind die Programmiersprachen, die für die Entwicklung von Open-Source-Projekten verwendet werden. Wenn wir also über die Sicherheit von Open-Source-Systemen nachdenken, müssen wir auch die inhärente Sicherheit der Programmiersprachen selbst berücksichtigen.
Open-Source-Content-Management-Systeme wie Drupal, WordPress, Joomla und andere werden in der Regel von einer riesigen Community von Entwicklern erstellt. Niemand trägt speziell die Verantwortung für die Sicherung des Systems, aber da jeder Entwickler ein persönliches Interesse hat, ist die Argumentation, dass Schwachstellen behoben werden, sobald sie entdeckt werden. Die Entwickler sind motiviert durch engagement für das Projekt und die Chance, einen Ruf in der Community aufzubauen.
Diese Anwendung von Eigeninteresse und Stammesmentalität wird als anregender angesehen als eine finanzielle Entschädigung. Außerdem sind diese internen Motivatoren nicht anfällig für Zeitknappheit, Budgetbeschränkungen und Personalpolitik.
Proprietäre Content-Management-Systeme wie Adobe, Sitecore, Optimizely, Progress Sitefinity und viele andere erlauben es nur ihren eigenen Entwicklern, den Code zu sehen und zu ändern. Diese Unternehmen schützen ihre Investitionen, indem sie talentierte interne Teams einstellen, um ihr Produkt zu entwickeln und zu testen. In der Praxis sind diese Teams kleiner als die Open-Source-Entwickler-Communities, aber als Mitarbeiter, unterstützt durch die formale Struktur und Sicherheit eines Geschäftsumfelds, haben sie den Spielraum, sich Vollzeit auf das Projekt zu konzentrieren und von der Synergie einer Teamstruktur zu profitieren.
In der Praxis existiert keines der beiden Modelle in seiner reinsten Form. Open-Source-CMS-Entwickler sind oft professionelle Programmierer, die von Unternehmen für die Arbeit an Open-Source-Projekten eingestellt werden. Sie leisten einen Beitrag zur Arbeit der Gemeinschaft und erhalten gleichzeitig einen Gehaltsscheck. Einige aufgeklärte Unternehmen gewähren den Entwicklern sogar Zeit für die Arbeit an Nebenprojekten, um die berufliche Entwicklung zu fördern und vielleicht marktfähige Ergebnisse für das Unternehmen zu erzielen. Einige dieser Projekte sind natürlich Open Source
Und obwohl Open-Source-CMS-Entwickler eindeutig von Leidenschaft angetrieben werden, ist es nur fair, darauf hinzuweisen, dass angestellte Entwickler, die für proprietäre CMS-Softwareunternehmen arbeiten, ebenfalls Befriedigung aus ihrer Arbeit ziehen. Die besten Programmierer haben einen großen Spielraum, für wen sie arbeiten und suchen sich die besten Projekte aus.
Motivierende Faktoren sind immer eine Mischung aus vielen Elementen. Open-Source-Gemeinschaften dienen in der Tat auch als professionelle Netzwerke, deren Mitglieder in der Hoffnung auf ein höheres Einkommensniveau beitreten.
Open-Source-Entwickler verwenden eine Reihe von Programmiersprachen, darunter PHP, SQL, MySQL, Java, JavaScript und Python, während Entwickler proprietärer Plattformen eher ASP.NET mit C # oder Java verwenden.
Die meisten Berichte über Open-Source-Schwachstellen lassen darauf schließen, dass die von Open-Source-Entwicklern verwendeten Sprachen weniger sicher sind, aber so einfach ist das nicht. Website-Hacks sind in der Regel auf Sicherheitslücken in Plugins und Themes zurückzuführen, nicht auf die CMS-Software selbst.
Wichtiger als die gewählte Sprache ist die Sorgfalt und Professionalität Ihres Entwicklungsteams. Die Wahrheit ist, dass gute Programmierpraktiken ein sicheres Projekt hervorbringen und schlechte Programmierprozesse das Gegenteil bewirken.
Allerdings sind einige Umgebungen besser geeignet, um gute Praktiken durchzusetzen. Das .NET Framework und .NET Core von Microsoft enthalten beispielsweise Funktionen, die die sichere Entwicklung unterstützen. Teams, die effektiv planen und sich auf diese Funktionen verlassen, haben eine viel höhere Wahrscheinlichkeit, ein sicheres Produkt zu entwickeln. Das ist ein Grund, warum sich Unternehmen wie Progress für die .NET-Entwicklung einsetzen.
Interessanterweise hat Microsoft im Jahr 2014 den Quellcode des .NET Frameworks geöffnet und seine Entwicklerplattform ist mit der Veröffentlichung von .NET Core weiterhin Open Source. Microsoft tat dies aus guten geschäftlichen Gründen, um sein Ökosystem zu fördern und die plattformübergreifende Entwicklung zu unterstützen. Es scheint ironisch zu sein, aber in Wirklichkeit unterstreicht es den Gedanken, dass Open Source im richtigen Kontext von großem Wert ist. Aber der Kontext ist, wie immer, sehr wichtig.
An ihrem richtigen Platz fördert die Open-Source-Entwicklung die Kreativität und die Zusammenarbeit, aber genau aus diesem Grund werden die mit Open-Source-Entwicklung erstellten Content-Management-Systeme angreifbar.
Sicherheits-Patches und Software-Updates müssen mit Sorgfalt und Regelmäßigkeit angewendet werden, um jedem kreativen Hacker, der eine Schwachstelle ausnutzen will, einen Schritt voraus zu sein. Dies gilt unabhängig davon, ob es sich um ein Open-Source- oder ein proprietäres Produkt handelt.
Bei proprietären Systemen wird, wenn eine Schwachstelle entdeckt wird, die Änderung im Code vorgenommen und die Aktualisierung mit einer Erklärung der behobenen Schwachstelle veröffentlicht. Die Schwachstelle ist durch die Geheimhaltung des Codes etwas versteckt. Bei Open-Source-Systemen hingegen wird der geänderte Code zusammen mit dem Fix oder der Umgehung veröffentlicht. Die Quelle der Schwachstelle ist offengelegt, und jeder, der den Patch noch nicht angewendet hat, kann schändliche Angriffe durchführen.
Wie bereits erwähnt, ist es selten das CMS selbst, das anfällig für Angriffe ist, sondern die Plugins und Abhängigkeiten, die eine Website angreifbar machen. Integrationen in einem System auf Unternehmensebene erfordern mit hoher Wahrscheinlichkeit komplexe Verbindungen. Implementierungen mit mehreren Integrationen und einer Vielzahl sensibler Daten sind möglicherweise keine guten Kandidaten für ein automatisches Patching. Aus diesem Grund bieten proprietäre CMS-Systeme einen gewissen Schutz, da der Grund für den Patch nicht öffentlich sichtbar ist.
Allein aus diesem Grund ist es bei jeder CMS-Implementierung auf Unternehmensebene am sichersten, bei einem proprietären System zu bleiben und einen sorgfältigen Patch-Management-Plan anzuwenden.
J.D. Little ist Senior CMS Market Strategist, kreativer Kommunikator, Pädagoge und Verfechter des Wandels. Er begann seine Karriere in der traditionellen Medientechnologie und hilft seit mehr als 25 Jahren Führungskräften, die Wellen disruptiver Innovationen zu navigieren.
Lassen Sie sich von unseren Experten beibringen, wie Sie die erstklassigen Funktionen von Sitefinity nutzen können, um überzeugende digitale Erlebnisse zu bieten.
Weitere InformationenAbonnieren Sie, um alle Neuigkeiten, Informationen und Tutorials zu erhalten, die Sie benötigen, um bessere Business-Apps und -Websites zu erstellen