Cyber Security: Resiliente Software für digitale Unternehmen

min Lesezeit

Für die Programmiererinnen und Programmierer bei Abacus haben Sicherheitsaspekte bei der Entwicklung einer Software seit jeher eine hohe Priorität. Seit zwei Jahren erhalten sie Unterstützung. Ein Information-Security-Manager kontrolliert die Sicherheitsaspekte im Lebenszyklus der ERP-Software. Ziel seiner Tätigkeit ist es, Cyberangriffe, Datenlecks und Softwarefehler zu verhindern.

Stefan Schwizer ist Information Security Manager bei Abacus und kontrolliert, ob die Richtlinien und Qualitätsvorgaben bei der Softwareentwicklung eingehalten werden.

Software­Sicherheit ist eine IT­-Disziplin, die verhindern soll, dass sich aus Software unerlaubt Daten extrahieren lassen. Die zunehmende Abhängigkeit von digitalen Lösungen hat es nötig gemacht, adäquate Sicherheitsmassnahmen bei der Programmentwicklung vorzunehmen. Mit steigender digitaler Transformation vertrauen Unternehmen zunehmend ERP­Systemen, um ihre Geschäftsprozesse zu optimieren. Der dabei anstehende Datenaustausch ermöglicht es zwar vermehrt, Ressourcen effizienter zu verwalten und Prozesse zu automatisieren. Diese Verarbeitung von Kunden­ und Finanzdaten macht diese aber zu einem attraktiven Ziel für mögliche Cyberangriffe, so dass sie bestmöglich geschützt werden müssen.

Abacus orientiert sich bei ihren Entwicklungen an den Schutzzielen respektive Grundwerten der Informationssicherheit. Diese umfassen Vertraulichkeit, Integrität und Verfügbarkeit. Die Bedeutung dieser Grundwerte lässt sich anhand einer Banküberweisung verdeutlichen: Vertraulichkeit gewährleistet, dass Informationen wie Empfänger, Absender und Betrag geheim bleiben. Die Integrität stellt sicher, dass der Überweisungsbetrag nicht verändert werden kann. Die Verfügbarkeit garantiert, dass die Überweisung erfolgreich an die Bank übermittelt wird. Nur wenn diese Grundwerte nicht verletzt werden, kann von einer erfolgreichen Verarbeitung gesprochen werden.

Sichere Prozesse für sichere Software

Durch die Implementierung sicherer Prozesse entlang des gesamten Software­Lebenszyklus lassen sich die Risiken der Software auf ein Minimum reduzieren. Denn oft sind Datenlecks eine Verkettung von kleineren Fehlern oder Ungenauigkeiten, die sich summieren. In den vergangenen 38 Jahren hat Abacus in dieser Hinsicht eine solide Bilanz vorzuweisen, nicht zuletzt aufgrund ihres kontinuierlich aktualisierten Fachwissens auf diesem Gebiet. Dennoch sind in der Vergangenheit vereinzelt Schwachstellen aufgetreten, die jedoch stets rechtzeitig erkannt und behoben werden konnten, so dass bei Anwendern kein Schaden entstanden ist.

Bei der Entwicklung der Abacus Software haben Sicherheitsaspekte für die verantwortlichen Programmiererinnen und Programmierer seit jeher eine hohe Priorität. Vor zwei Jahren wurde als zusätzliche Unterstützung in Sachen Software­Sicherheit die Stelle eines Information Security Managers geschaffen. Diese Funktion übt Stefan Schwizer aus, der nicht nur den Entstehungsprozess einer Software, sondern den gesamten Lebenszyklus einer Software begleitet. Dabei kontrolliert er, ob die Richtlinien und Qualitätsvorgaben bei der Softwareentwicklung eingehalten werden. Ziel seiner Tätigkeit ist es, Cyberangriffe zu verhindern. Nur wenn Sicherheitsaspekte kontinuierlich überwacht werden, ist die Integrität und Resilienz der Software während ihrer gesamten Einsatzzeit gewährleistet.

Sicherheitsaspekte sind in jeder Phase des Produktlebenszyklus relevant – von der Idee über die Programmierung bis zum laufenden Betrieb und der Wartung.

Sicherheit von A bis Z

Um sichere Software zu planen, zu entwickeln und zu überwachen, verfolgt Abacus den «DevSecOps»­Ansatz. Dieser steht für «Development», «Security» und «Operation», was Entwicklung, Sicherheit und Betrieb bedeutet. Es geht darum, Sicherheitsaspekte von Anfang an in den Lebenszyklus einer Applikationsentwicklung zu integrieren. Der Prozess beschreibt die sich wiederholenden Tätigkeiten über die verschiedenen Lebensphasen der Software. Sicherheitsaspekte werden in Entwicklung und Betrieb berücksichtigt und unterstützen diese Prozesse.

Der Sicherheitsspezialist von Abacus ist bereits ab dem Planungsprozess einer neuen Software involviert ebenso wie die Rechtsspezialistin für den Datenschutz und der CTO. Danach bleiben die drei auch an der gesamten weiteren Entwicklung beteiligt. Sie sind auch im «Abacus Security Board» aktiv, genauso wie die Entwicklungsleitung selbst, um bei gravierenden Fällen schnell zu entscheiden, wie weiter vorgegangen wird.

In der «Code­Phase» erfolgt eine erste Qualitätsprüfung des neu entwickelten Quellcodes. Denn fehlerfreier Sourcecode ist die Basis für eine sichere Software. Die Qualitätsprüfung besteht aus rund 1800 Regeln, welche auf die von Abacus verwendete Programmiersprache Java abgestimmt sind. Diese werden in verschiedene Kategorien und Schweregrade eingeteilt und automatisch überprüft. Nur Software, die den hohen Qualitätsvorgaben entspricht, wird zugelassen. In der «Testing­Phase» führt Abacus eine breite Palette von Testverfahren durch, die von vollständig automatisierten Tests bis hin zu manuellen Überprüfungen reichen. Dabei werden sowohl funktionale Aspekte als auch Fragen des Datenschutzes und der Sicherheit überprüft.

Abacus orientiert sich bei ihren Entwicklungen an den Schutzzielen respektive Grundwerten der Informationssicherheit. Diese umfassen Vertraulichkeit, Integrität und Verfügbarkeit.

Im Vorfeld einer Softwareveröffentlichung wird regelmässig ein simulierter Angriff durch eine von Abacus beauftragte Schweizer Sicherheitsfirma durchgeführt. Dabei wird die Softwaresicherheit auf Schwachstellen überprüft, damit diese behoben werden können, bevor wirklicher Schaden entsteht. Im finalen Schritt des Entwicklungsprozesses erfolgt die Abnahmekontrolle, in welcher der Code signiert wird. Dies dient als Beleg für die Integrität der Software. Auf diese Weise erhält die Kundin oder der Kunde die Sicherheit, dass der Code unverändert von Abacus stammt. Obwohl Abacus nicht direkt für die Inbetriebnahme, also das Bereitstellen der Software beim Anwender verantwortlich ist – diese Aufgabe obliegt den Vertriebspartnern –, bleibt dies ein bedeutsamer und potenziell risikoreicher Schritt. Daher bietet Abacus eine umfassende Unterstützung für Kunden und Vertriebspartner während dieser Phase an.

Laufende Pflege und Überwachung

Um die Resilienz der Software über ihren gesamten Lebenszyklus hinweg zu gewährleisten, werden monatlich Hotfixes entwickelt. Diese Anpassungen sind von geringem Umfang und tragen hauptsächlich zur Sicherheit bei. Dank des reduzierten Aktualisierungsaufwands durch kleinere Updates können die Anwender die aktuellste und somit sicherste Version verwenden.

Während der «Überwachungs­Phase» liegt das Hauptaugenmerk auf der kontinuierlichen Überwachung einer Anwendung, um mögliche Sicherheitslücken oder Angriffsversuche frühzeitig zu identifizieren. Unter anderem werden sämtliche von Drittanbietern entwickelten Softwarekomponenten auf potenzielle Schwachstellen überwacht. Entweder wird eine betroffene Komponente aktualisiert oder durch eine andere Komponente ersetzt, welche die Sicherheit komplett gewährleisten kann. Gegenwärtig werden vier aktive Versionen der ERP­Software mit jeweils etwa 600 verschiedenen externen Komponenten überwacht. Im Verlauf eines Jahres führt dies im Schnitt zu 60 Ereignissen. Von sämtlichen gemeldeten potenziellen Schwachstellen lassen sich etwa 80 Prozent problemlos durch ein Update beheben. Die verbleibenden 20 Prozent werden vom «Abacus Security Board» behandelt und erfordern anspruchsvollere Lösungsstrategien. Einige wenige kritische Fälle werden nach erfolgreicher Lösung auf der Abacus Partnerwebsite veröffentlicht. Dabei werden wichtige Informationen für mindestens 90 Tage zurückgehalten, um allen Anwendern ausreichend Zeit für ein Update zu gewähren.

Nur wenn Sicherheitsaspekte kontinuierlich überwacht werden, ist die Integrität und Resilienz der Software während ihrer gesamten Einsatzzeit gewährleistet.

Fazit

Die Summe dieser vielen einzelnen Tätigkeiten ermöglicht Abacus bereits seit 38 Jahren erfolgreich, resiliente Software für Kundinnen und Kunden zu entwickeln. Allerdings ist es ebenso wichtig, dass auch die Anwender und Vertriebspartner ihren Beitrag zur Sicherheit beitragen, in dem sie sich über Sicherheitsthemen auf dem Partnerportal informieren, bei der Konfiguration die vorgeschlagenen bewährten Vorgehensweisen von Abacus berücksichtigen und vor allem ihre Software stets auf einem aktuellen Stand halten.