Technische Schulden

7 Wege ins Security-Verderben

01.07.2021
Von 
John Edwards ist freier Autor.
Technische Schulden können zu ernsthaften Sicherheitsproblemen führen. Das sollten Sie vermeiden.
Technische Schulden sind der Entstehung von Sicherheitslücken zuträglich. Diese sieben Wege führen ins Security-Unglück.
Technische Schulden sind der Entstehung von Sicherheitslücken zuträglich. Diese sieben Wege führen ins Security-Unglück.
Foto: vidzone - shutterstock.com

Schludrig entwickelte und ausgelieferte Projekte können dem Security-Niveau Ihres Unternehmens nachhaltigen Schaden zufügen. Das liegt in erster Linie an technischen Schulden - also der Differenz zwischen dem, was ein Projekt braucht und dem, was letztendlich ausgeliefert wird. Wie das Proofpoint-Whitepaper "2021 Voice of CISO" zeigt, sind zwei von drei CISOs der Meinung, technische Schulden, - neudeutsch technical depts - seien ein wesentlicher Faktor für Sicherheitsschwachstellen.

Technische Schulden würden meist durch "Shortcuts" verursacht, die zentrale Aspekte von IT-Projekten wie Architektur, Codequalität, Usability und eben auch Security zur Nebensache machen, ist auch Jeff Williams, CTO beim Sicherheitsanbieter Contrast Security, überzeugt. "Die Vulnerability-Management-Systeme vieler großer Unternehmen beherbergen zehntausende entdeckter - aber nicht behobener - Security-Risiken. In vielen Branchen herrscht der wahnwitzige Irrglaube, ein viel zu knappes Budget für Security-Initiativen und ein bisschen Risk Management seien ausreichend - ein gefährlicher Fehler, der diese Unternehmen und ihre Partner großen Gefahren aussetzt."

Um die Auswirkungen technischer Schulden auf die Security zu minimieren, ist ein Verständnis darüber notwendig, wie schlechte IT-Projekte Cyberkriminellen ganz konkret Tür und Tor öffnen. So werden technische Schulden zum Problem für CISOs:

1. Zwielichtige Software

Technische Schulden sind nach Einschätzung von Rahul Telang, Professor für Informationssysteme am Heinz College of Information Systems and Public Policy der Carnegie Mellon University, ein überstrapazierter Begriff: "Im Grunde bedeutet es, dass man sich etwas geliehen hat, um das Produkt herauszubringen und jetzt gilt es, die Schulden zu begleichen", erklärt er. "Es ist nicht schwer, sich vorzustellen, dass sich das Sicherheitsrisiko erhöht, wenn die Schulden nicht schnell getilgt werden."

CISOs sollten sich darüber im Klaren sein, dass jedes Softwareentwicklungsprojekt Phasen durchläuft, in denen der Code überarbeitet werden muss, um potenzielle Sicherheitslücken zu schließen. Der CISO müsse über eine Struktur verfügen, um mögliche Probleme vor der Bereitstellung zu erkennen, meint Telang - denn wenn das Produkt bereits in Gebrauch ist, seien diese leicht zu übersehen.

Ryan Davis, CISO von NS1, ist der Meinung, dass die durch Software erzeugten technischen Schulden das größte Sicherheitsrisiko für Unternehmen darstellen: "Dazu gehören Elemente, die von außerhalb des Unternehmens stammen, wie zum Beispiel Programmiersprachen, Bibliotheken von Drittanbietern und andere in die Software integrierte Komponenten sowie von internen Entwicklern geschriebener First-Party-Code."

Irgendwann erreiche jede Software ihr End-of-Life-Stadium und werde nicht mehr vom Hersteller unterstützt. Leider könne es in manchen Fällen schwierig sein, ein aktuelles Softwareprodukt auslaufen zu lassen, weil der Entwickler das Angebot entweder aufgegeben hat oder nicht mehr im Geschäft ist: "Dann besteht die Gefahr, dass durch den Weiterbetrieb der alten Software eine gefährliche technische Schuld entsteht, da Eindringlinge und Angreifer möglicherweise neue Wege gefunden haben, diese auszunutzen. Das Ergebnis kann verheerend sein. Wir haben viele Beispiele aus der Praxis gesehen, wie sich die Sicherheitslage der Software eines einzelnen Unternehmens auf Tausende von Organisationen weltweit auswirken kann", versichert der CTO.

2. Schwache Governance

Eine starke Governance ist unerlässlich, um zu verhindern, dass technische Schulden zu einem Sicherheitsproblem werden. David Chaddock, Director beim IT-Beratungsunternehmen West Monroe, weiß, wie wichtig es ist, den gesamten Lebenszyklus eines Assets zu berücksichtigen - einschließlich der langfristigen Betriebskosten und Support-Ressourcen, die benötigt werden, um Sicherheitsprobleme zu verhindern. "Das erfordert, Sicherheitsteams frühzeitig in den Designprozess mit einzubeziehen", sagt Chaddock.

3. Rudimentäre strategische Ausrichtung

Ein CISO sollte innerhalb des Unternehmens arbeiten, um ein Verständnis für technische Schulden zu schaffen und die richtigen Metriken zu entwickeln, um sie zu verwalten, schlägt Eugene Okwodu, Direktor für Cybersicherheitslösungen bei Guidehouse vor: "Der CISO sollte auch die Kosten für notwendige technische Aktualisierungen in sein Budget einplanen. Technische Schulden entstehen häufig, wenn IT- und Cybersicherheitsstrategien aufeinanderprallen. Um eine angemessene Abstimmung zu gewährleisten und den Konflikt zu lösen, kann es notwendig sein, mit einem internen Projektmanagementbüro (PMO) zu arbeiten oder externe Hilfe in Anspruch zu nehmen."

4. Modernisierungs-Delay

In manchen Fällen könne es Jahre dauern, bis eine technische Schuld offensichtlich wird. Veraltete Technik, egal ob Hard- oder Software, stelle ein enormes Sicherheitsrisiko dar, ist sich Okwodu sicher: "Nicht nur, dass die Technik in einigen Fällen unmöglich zu ersetzen und zu reparieren ist, sie ist in der Regel stärker vernetzt und wird von den aktuellen Mitarbeitern weniger verstanden, was den Weg für potenzielle Sicherheitsverletzungen ebnet."

Jahre und manchmal Jahrzehnte der Workarounds, Updates, Upgrades sowie Fusions- und Übernahmeaktivitäten können technische Schulden besonders problematisch machen. "Technische Schulden, die eine teure Systemmodernisierung erfordern, stellen insbesondere bei Softwaresystemen in Verbindung mit dem weniger verbreiteten Spezialwissen ein erhebliches Sicherheitsrisiko für Unternehmen in jeder Branche dar", sagt Okwodu.

5. Schlechte Entwicklungspraxis

DevSecOps ist mehr als nur ein Buzzword. Viele Sicherheitsprobleme können vermieden werden, wenn solide Entwicklungspraktiken angewendet werden. "Bestehen Sie von Anfang an darauf, DevSecOps richtig zu machen. Dazu gehören auch Kontrollen, die dabei helfen können, Metriken in Bezug auf Sicherheitslücken zu visualisieren", empfiehlt Keatron Evans, leitender Sicherheitsforscher beim Infosec Institute.

Wenn Programme wachsen, würden sie in der Regel immer nützlicher und häufiger verwendet. Doch diese Eigenschaften könnten auch dazu führen, dass Sicherheitslücken schwerer zu beheben oder zu entschärfen sind: "Genau die Energie, die dazu führt, dass ein Stück Code wächst und produktiv, nützlich und wertvoll wird, führt auch dazu, dass übersehene Sicherheitsprobleme auf lange Sicht verheerender werden", erklärt Evans. DevSecOps automatisiere die Integration von Sicherheit in jeder Phase des Softwareentwicklungslebenszyklus und verhindere so effektiv, dass Schlupflöcher für Cyberkriminelle entstehen.

6. Verzögertes Testing

Das Zurückhalten von Software-Sicherheitstests bis in die späteren Phasen der Entwicklung kann zu Schwachstellen führen, deren Behebung schwierig, zeitaufwendig und kostspielig sein kann.

"Das Testen bis zum Ende des Entwicklungsprozesses hinauszuzögern, kann zu massiven Neuentwicklungsanstrengungen führen, um Sicherheitsbedenken zu beseitigen. Das kann wiederum in Gewinneinbußen und einer erheblichen Verlängerung der Entwicklungszeit resultieren", warnt Jeremy Dodson, CISO des Beratungsdienstleisters NextLink Labs.

Sicherheit sollte eine gemeinschaftliche Anstrengung sein, meint Dodson: "Ein CISO kann entscheidend dazu beitragen, eine Sicherheitskultur in seinem Unternehmen zu schaffen, vor allem wenn es um das Entwicklungsteam geht. Eine veränderte Einstellung kann einen großen Beitrag dazu leisten, Sicherheitsmaßnahmen in den gesamten Design- und Entwicklungsprozess zu integrieren."

7. Komplexitäts-Überschuss

Barry Goff, Senior Director of Platform Strategy beim Low-Code-Anbieter OutSystems, hat die Vielzahl unterschiedlicher Entwicklungssprachen, Tools, Plattformen und Frameworks als eine der Hauptursachen für technische Schulden identifiziert: "Mit der Komplexität kommen die Fehler. Selbst wenn Probleme erkannt werden, macht es die Komplexität schwieriger, diese Schwachstellen zu beheben."

Komplexität allein garantiere zwar keine Sicherheitslücken, aber sie erhöhe die Wahrscheinlichkeit, dass diese auftreten und damit die Kosten, die mit ihrer Eindämmung verbunden sind, so Goffe: "In Anbetracht der Tatsache, dass Komplexität eine der Hauptursachen für technische Schulden ist, können Bemühungen um die Standardisierung und Vereinfachung von Anwendungsentwicklungswerkzeugen und -infrastrukturen einen großen Beitrag zur Minimierung der Entstehung neuer technischer Schulden leisten."

Goffe sieht technische Schulden einerseits als Risikotreiber, andererseits auch als Hemmnis für Innovation und IT-Sicherheit. Für Unternehmen, die nach der Pandemie wieder zur Normalität zurückkehren wollten, sei es jetzt an der Zeit, die Versäumnisse anzugehen, die durch die Jahre schludriger oder nicht vorausschauender Entwicklungsarbeit entstanden sind: "Je mehr Unternehmen ihre technischen Schulden angehen, desto weniger setzen sie sich Sicherheitsrisiken aus und desto eher maximieren sie ihre Innovationsfähigkeit." (fm)

Dieser Beitrag basiert auf einem Artikel unserer US-Schwesterpublikation CSO Online.