01.08.2023

Sicherheit ist das A und O: Die 7 wichtigsten Schritte sicherer Softwareentwicklung

  • Menschen vernetzen und supporten
  • Nicht jede Software ist gleich. Eine gute Software erkennen Sie daran, dass von Anfang an auf eine sichere Entwicklung geachtet wird. Unser Chief Information Security Officer, Robert Haist, erklärt, wie das Konzept des sicheren Softwareentwicklungslebenszyklus (SDLC) Ihnen dabei hilft, sichere Software zu entwickeln.

    „Bei TeamViewer halten wir uns bei jedem Softwareentwicklungslebenszyklus akribisch an eine erweiterte Version des sicheren SDLC. Es ist dieser ganzheitliche und umfassende Sicherheitsansatz, der Unternehmen auf der ganzen Welt die Gewissheit gibt, sich auf TeamViewer verlassen zu können.“
    Robert Haist, Chief Information Security Officer

    Sichere Softwareentwicklung ist im Grunde nur dann möglich, wenn die Rahmenbedingungen stimmen. Der sichere SDLC erfüllt diese Bedingungen. Er besteht aus einer Reihe von einzelnen Bausteinen, die sieben übergreifenden Entwicklungsphasen entsprechen.

    In einer agilen Umgebung, in der ständig neue Features entwickelt werden, durchläuft jedes Entwicklungsteam wiederholt den SDLC. So bleibt die Sicherheit immer gewährleistet.

    Erfahren Sie mehr darüber, wie der SDLC funktioniert und erhalten Sie praktische Tipps, wie Sie ihn in Ihrem Unternehmen umsetzen können.

    Phase 1: Schulung

    Phase 1 kurz zusammengefasst

    Sicherheitsrisiken sind in den meisten Fällen auf menschliches Versagen zurückzuführen. Deswegen müssen entsprechende Schulungen und Weiterbildungen in jedem Unternehmen eine große Rolle spielen. Alle Mitarbeitenden sollten sich für die Sicherheit verantwortlich fühlen, unabhängig von ihrer Abteilung, Funktion oder ihrer Betriebszugehörigkeit. Allen Beschäftigten sollten von Anfang an allgemein zugängliche und regelmäßige Schulungen angeboten werden.

    Phase 1 im Einzelnen

    Wir erklären, warum Sicherheitsschulungen für Mitarbeitende so wichtig sind. Außerdem erhalten Sie eine praktische To-do-Liste.

    Wenn Sie vor dem Start eines neuen Projekts in Schulungen investieren und ein Bewusstsein für die Problematik schaffen, können Sie viele Sicherheitsrisiken von vornherein vermeiden. Machen Sie allen Projektbeteiligten klar, warum Sicherheit wichtig ist, und weisen Sie sie darauf hin, welche aktuellen sicherheitsrelevanten Themen sie beachten sollten.

    Bei TeamViewer beginnt das Sicherheitstraining am allerersten Tag
    Das gilt für alle Beschäftigten. Unabhängig von ihrer Rolle oder Position erfahren alle Neuzugänge, wie wichtig Sicherheit für das gesamte Unternehmen ist und wie sie Risiken vermeiden. Damit sind die Grundvoraussetzungen geschaffen. Darauf aufbauend erhalten Beschäftigte während ihrer gesamten Zeit bei TeamViewer weiterführende Schulungen, unter anderem zu Themen wie Zero Trust, OWASP Top 10 und sicheres Design.

    Sicherheitsbeauftragte
    TeamViewer hat ein Projekt ins Leben gerufen, bei dem spezielle Sicherheitsbeauftragte im Unternehmen benannt werden. Sicherheitsbeauftragte sind Personen, die eng mit dem Sicherheitsteam zusammenarbeiten. Sie erhalten spezielle Schulungen und werden in sicherheitsrelevante Projekte eingebunden. Das Ziel ist es, eine einheitliche Sicherheitskultur zu fördern und ein Verständnis für Softwareentwicklung zu schaffen. Sicherheitsbeauftragte geben allen im Unternehmen Einblick in die Produkte und die Arbeit der Entwicklungs- und CI/CD-Teams. So helfen Sie dabei, Sicherheitsvorfälle zu verhindern.

    Impulse von außen für mehr Sicherheit
    Externe Perspektiven kommen der Sicherheit eines Unternehmens zugute. Deshalb lässt TeamViewer externe Audits in Form von White-Box- und Black-Box-Pentests vornehmen. Dabei führt eine vertrauenswürdige dritte Partei Angriffsszenarien auf die Systeme von TeamViewer oder der User durch. Diese Tests zeigen TeamViewer, wo das Unternehmen beim Thema Sicherheit steht.

    In einer aktuellen Umfrage gaben 80 % der befragten Unternehmen an, dass ihre Mitarbeitenden durch Schulungen sicherer im Umgang mit Phishing-Angriffen geworden sind. Regelmäßige Schulungen senken das Risiko innerhalb der ersten zwölf Monate von 60 auf 10 %.

    Sicherheitsschulungen in der Praxis – Ihre To-do-Liste

    Beginnen Sie sofort mit dem Sicherheitstraining
    Sobald neue Teammitglieder starten – unabhängig von ihrer Funktion oder Position – sollten Sie ein geeignetes Schulungsprogramm bereitstellen.

    Führen Sie regelmäßig Ad-hoc-Schulungen durch
    Zudem sollten regelmässig Ad-hoc-Schulungen durchgeführt werden. Auf diese Weise verlieren Ihre Mitarbeitenden das Thema Sicherheit nicht aus den Augen und sind stets bestens über neue Bedrohungen oder Best Practices informiert.

    Richten Sie die Schulungsinhalte auf neue Bedrohungen aus
    Themen wie Zero Trust, die Top Ten des Open Web Application Security Project (OWASP) oder sicheres Design sind derzeit besonders relevant. Die Inhalte sollten jedoch ständig aktualisiert werden, um neue Arten von Bedrohungen abdecken zu können. Bei TeamViewer orientieren wir uns bei der Entwicklung unserer Sicherheitsschulungen an den Erkenntnissen, die wir bei unseren regelmäßigen Tests gewonnen haben.

    Erstellen Sie eine Wissensdatenbank zum Thema Sicherheit
    Informationen zum Thema sicheres Programmieren sollten leicht zugänglich sein, damit sich alle Beteiligten vor Beginn eines Projekts mit den relevanten Themen vertraut machen können. Aktualisieren Sie Ihre Wissensdatenbank regelmäßig und stellen Sie Schulungsmaterial zentral zur Verfügung.

    Benennen Sie Sicherheitsbeauftragte für jedes Team
    Finden Sie Mitarbeitende, die sich für das Thema Sicherheit interessieren und bieten Sie ihnen die Möglichkeit, sich in diesem Bereich zu spezialisieren. Bieten Sie ihnen umfassende Weiterbildungen und die Möglichkeit, sich an relevanten Projekten zu beteiligen und eng mit der Sicherheitsabteilung zusammenzuarbeiten. Je besser sie sich auskennen, desto mehr können sie sich innerhalb ihrer Teams einbringen. Wichtig ist, durch Wertschätzung und Anerkennung positive Anreize für die Teilnehmenden zu schaffen. Nur so hat das Projekt nachhaltig Erfolg. Um ihre Beauftragten zu motivieren, können Sie beispielsweise Zertifikate verleihen und spezielle Seminare veranstalten.

    Nutzen Sie externe Quellen, um ein umfassendes Bild Ihres Sicherheitskonzeptes zu erhalten
    Konsultieren Sie externe Parteien wie beispielsweise zertifizierte IT-Beratungsfirmen, um einen besseren Einblick in Ihre Sicherheitsstruktur zu erhalten. Mithilfe von Pentests können Schwachstellen identifiziert, eingedämmt oder sogar beseitigt werden.

    Phase 2: Sicherheitsrelevante Anforderungen

    Phase 2 kurz zusammengefasst

    Um zu gewährleisten, dass die Sicherheitsanforderungen eines Projekts erfüllt werden, müssen Sie zunächst Ihre Vorgehensweise festlegen. TeamViewer folgt dem DoD-Konzept (Definition of Done). Wir empfehlen Ihnen dringend, dieses Konzept ebenfalls anzuwenden. Verbessern Sie die Sicherheit des Projekts, indem Sie einen klaren Aktionsplan aufstellen.

    Phase 2 im Einzelnen

    Wir zeigen Ihnen, wie Sie DoD in die Praxis umsetzen können und stellen Ihnen eine To-do-Liste für Sicherheitsanforderungen zur Verfügung.

    Softwareentwicklung beginnt mit einer Reihe von Anforderungen. Sicherheitsaspekte sollten unbedingt in die Anforderungsspezifikation aufgenommen werden. Nur so können Sie sichergehen, dass die Sicherheit bei der Entwicklung im Mittelpunkt steht. Deswegen hat TeamViewer seine Sicherheitsanforderungen in einer Definition of Done (DoD) festgelegt. Mithilfe der DoD können Sie beurteilen, wann die Software fertiggestellt ist.

    Sicherheitsrelevante Anforderungen in der Praxis – Ihre To-do-Liste

    Führen Sie im Vorfeld Sicherheitsüberprüfungen durch
    Stellen Sie ein Team von Fachleuten zusammen, das die Anforderungen für neue Funktionen oder Anpassungen überprüft und Bedenken äußert, die vor der Implementierung berücksichtigt werden müssen.

    Bei Bedarf können Sie auch Mindeststandards für die Sicherheit festlegen. Beispielsweise kann durch die Definition einer aussagekräftigen Sicherheitsfehlerleiste (Bug Bar) eindeutig geregelt werden, wie viele Schwachstellen toleriert werden können und wie schnell schwerwiegende Schwachstellen behoben werden müssen.

    Klären Sie ab, welche Daten verarbeitet werden
    Prüfen Sie, ob für ein neues oder aktualisiertes Feature Daten erhoben, verarbeitet, gespeichert oder gelöscht werden müssen. Die Datenschutz-Grundverordnung (DSGVO) soll die Rechte von Einzelpersonen an ihren Daten schützen. Der Umgang mit Daten – insbesondere mit personenbezogenen Daten – ist ein wesentlicher Bestandteil jedes Sicherheitskonzepts. Auch das muss in den Sicherheitsanforderungen berücksichtigt werden.

    Legen Sie klare Sicherheitsanforderungen als Teil Ihrer Definition of Done (DoD) fest
    Achten Sie darauf, dass sich in Ihrer Definition of Done eindeutige Sicherheitsanforderungen finden. Dadurch wird sichergestellt, dass die Entwicklungsteams Features, Änderungen oder Implementierungen nicht umsetzen können, ohne die Sicherheit zu berücksichtigen.

    Die DoD definiert, wann eine Software auf den Markt gebracht werden kann. Sie sorgt dafür, dass alle Beschäftigten ein gemeinsames Verständnis von Qualität haben und über die Qualitätsstandards informiert sind. So arbeiten alle auf das gleiche Ziel hin. Die DoD kann ein einfacher Leitfaden sein, der für das gesamte Unternehmen gültig ist und aufzeigt, wann die Software fertiggestellt ist. Sie sollte daraufhin überprüft werden, ob sie mögliche Sicherheitsrisiken abdeckt.

    Phase 3: Sicherheitsbewusste Gestaltung

    Phase 3 kurz zusammengefasst

    In dieser Phase werden die technischen Details eines Produktes an Kundschaft und interne Beteiligte kommuniziert. Hier muss die Sicherheit an erster Stelle stehen: Alles, was jetzt entschieden wird, wirkt sich auf das Endprodukt aus. In dieser Phase arbeitet TeamViewer eng mit Fachleuten für Sicherheit und Datenschutz zusammen.

    Phase 3 im Einzelnen

    Erfahren Sie, wie wir „Security by Design“ und „Privacy by Default“ umsetzen. Außerdem erhalten sie eine To-do-Liste für die sicherheitsbewusste Gestaltung.

    In dieser Phase des SDLC definieren die Entwicklungsteams die technischen Details eines Produkts. Je nach Projekt gehören dazu Aspekte wie Screendesigns, Datenbanken, Skizzen, Systemschnittstellen und Prototypen. Die Kundschaft und interne Beteiligte nutzen diese Informationen, um über das endgültige Produktdesign zu entscheiden. Ein sicherheitsbewusstes Vorgehen in dieser Phase hilft, Sicherheitsprobleme frühzeitig zu erkennen. So können sie bei der Umsetzung berücksichtigt werden. Verzögerungen am Projektende werden so vermieden.

    TeamViewer orientiert sich dabei an den Konzepten „Security by Design“ und „Privacy by Default“. Dementsprechend bezieht TeamViewer bereits in der Entwicklungsphase Fachleute für Datenschutz und Sicherheit mit ein.

    Um die Qualität zu verbessern und gemeinsame Ziele zu erreichen, legt TeamViewer eine Reihe von Bedingungen fest, anhand derer alle beteiligten Teams erkennen können, wann die Sicherheitsanforderungen erfüllt sind. Dieses Konzept wird auch als Definition of Ready (DoR) bezeichnet. Die Qualität der Anforderungen bestimmt, wie schnell ein Produkt fertiggestellt werden kann. Daher sollten die Sicherheitsanforderungen bereits in der DoR definiert werden.

    Sicherheitsbewusste Entwicklung in der Praxis – Ihre To-do-Liste

    Erstellen Sie Bedrohungsmodelle
    Unterstützen Sie Ihre Entwicklungsteams dabei, Bedrohungsmodelle zu erstellen. Auf diese Weise können sie Sicherheitsrisiken bereits in der Entwurfphase erkennen. Die Bedrohungsmodellierung ist ein zentrales Element des Softwareentwicklungslebenszyklus (SDLC). Dabei handelt es sich um ein Verfahren, mit dem Bedrohungen, Schwachstellen und geeignete Gegenmaßnahmen für potenzielle Angriffe identifiziert werden können. Die gesammelten Informationen helfen dabei, die Software widerstandsfähiger gegen Angriffe zu machen. TeamViewer ermöglicht es den Entwicklungsteams, Bedrohungsmodelle zu erstellen. Auf diese Weise finden sie heraus, wann sie mit der Entwicklung beginnen können.

    Erstellen Sie ein Mapping der Angriffsfläche
    Als Angriffsfläche bezeichnet man alle Stellen, über die jemand in ein System eindringen, es manipulieren oder Daten extrahieren kann. Wir empfehlen Ihnen, die gesamte Software mit sogenannten Discovery-Scans zu überprüfen, um alle Angriffsflächen zu identifizieren. So können Sie Stellen finden, die anfällig für Angriffe sind.

    Halten Sie sich an den „Security by Design“-Ansatz, um die Auswirkungen eines Angriffs zu minimieren
    Unternehmen sollten von Anfang an darauf achten, dass ihre Produkte, Prozesse und Dienstleistungen sicher sind und die Datenschutzrichtlinien eingehalten werden. Dieser proaktive Ansatz wirkt präventiv und verringert den Aufwand für reaktive Maßnahmen und Anpassungen. Außerdem trägt er dazu bei, dass Ihre Software durchgängig sicher ist. Deshalb ist es wichtig, Sicherheitsfachleute bereits in einem frühen Stadium des Entwicklungsprozesses mit einzubeziehen, um die entsprechenden Anforderungen umzusetzen.

    Bieten Sie Sicherheitsberatungen an
    Ihre Sicherheitsfachleute sollten zur Verfügung stehen, um die Entwürfe vor der Freigabe abschließend zu überprüfen.

    Phase 4: Sichere Implementierung

    Phase 4 kurz zusammengefasst

    Dank des sicherheitsbewussten Designs kann Ihre Software nun sicher programmiert werden. Auch die Implementierung sollte kein Problem mehr darstellen. Um beides zu garantieren, sind umfangreiche automatisierte und manuelle Tests unerlässlich.

    Phase 4 im Einzelnen

    Wir zeigen Ihnen, welche Tests notwendig sind und geben Ihnen eine To-do-Liste für die sichere Implementierung an die Hand.

    Wenn das schlussendliche Design feststeht, beginnt die eigentliche Entwicklung. In dieser Phase ist es wichtig, Tools und Verfahren zur Verfügung zu stellen, die eine sichere Programmierung ermöglichen.

    Jetzt werden auch Testfälle (für automatische und manuelle Tests) erstellt. So stellt TeamViewer sicher, dass Änderungen während der Implementierung direkt von einem enstprechenden Testfall abgedeckt werden. Um zu überprüfen, ob die Komponenten so funktionieren, wie es sich das Entwicklungsteam vorgestellt hat, nutzt TeamViewer bereits in der Implementierungsphase Unit-Tests. Ohne erfolgreiche Unit-Tests ist die Software nicht fertig (wie es den Vorgaben der DoD entspricht).

    Sichere Umsetzung in der Praxis – Ihre To-do-Liste

    Bieten Sie Code-Reviews an
    Vor einem Release sollten Ihre Sicherheitsfachleute für Code-Reviews zur Verfügung stehen. Dies gilt insbesondere, wenn das Release sensible Produktkomponenten betrifft. Dokumentieren Sie, welche Komponenten als sicherheitsrelevant angesehen werden, damit die Entwicklungsteams wissen, wann ein abschließender Code-Review erforderlich ist.

    Unit-Tests sollten Bestandteil einer erfolgreichen Implementierung sein
    Stellen Sie sicher, dass die Unit-Tests erfolgreich durchgeführt wurden, bevor Sie die Implementierung abschließen (wie von der DoD gefordert).

    Phase 5: Verifizierung

    Phase 5 kurz zusammengefasst

    In der Verifizierungsphase sollten Sie überprüfen, dass die Software wie geplant funktioniert und die Sicherheitsmaßnahmen befolgt werden.

    Phase 5 im Einzelnen

    Wir zeigen Ihnen, was Sie überprüfen sollten und wie Sie diese Punkte auf Ihrer To-do-Liste abhaken können.

    In der Verifizierungsphase wird überprüft, ob die implementierten Sicherheitsmaßnahmen wie vorgesehen greifen. Grundsätzlich sollten Sie nicht nur untersuchen, ob die Software tatsächlich funktioniert, sondern auch, ob die eingesetzten Sicherheitsmechanismen einen wirksamen Schutz bieten.

    Vor der Veröffentlichung durchläuft die Software bei TeamViewer einen Code-Signing-Service. Damit können Sie den Binärcode vor dem Release sicher signieren und sicherstellen, dass die Zertifikate in den Produktions- und Entwicklungsumgebungen nicht frei verfügbar sind.

    Mit Hilfe von Code-Scans wird eine Liste aller in der Software verwendeten Komponenten erstellt, einschließlich der Versionen und Zwischenhändler – die sogenannte Software Bill of Materials (SBoM). Eine SBoM fungiert als Risikomanagement-Tool, das Entwicklungs- und IT-Teams hilft, potenzielle Sicherheitslücken in der Software zu identifizieren und zu beheben. Sie gewähreistet, dass die verwendeten Softwarekomponenten sicher und auf dem neuesten Stand sind. Anhand der Liste der verwenden Komponenten vergleicht TeamViewer seine Software mit Datenbanken, in denen Schwachstellen aufgeführt sind.

    Sicherheitsbedrohungen kommen nicht nur von außerhalb des Unternehmens. Aus diesem Grund überprüft TeamViewer interne Abhängigkeiten. Eine genaue Bestandsaufnahme der Abhängigkeiten und Benachrichtigungen über verfügbare Patches tragen ebenfalls dazu bei, Software erfolgreich zu schützen.

    Verifizierung in der Praxis – Ihre To-do-Liste

    Simulieren Sie Angriffe
    Überprüfen Sie regelmäßig Ihre Anwendungsarchitektur, um Angriffsflächen und Vektoren zu identifizieren, die während der Implementierung möglicherweise unentdeckt geblieben sind. Dieses Vorgehen ist besonders effizient, wenn die Prüfungen von vertrauenswürdigen Dritten, beispielsweise einem externen Partnerunternehmen, durchgeführt werden.

    Führen Sie Penetrationstests und Schwachstellenanalysen durch
    Führen Sie für alle Ihre Produkte Penetrationstests durch. Auch hier empfiehlt es sich, externe Stellen miteinzubeziehen. So stellen Sie sicher, dass unerwartete Schwachstellen effizient aufgedeckt werden.

    Führen Sie eine statische Codeanalyse durch
    Bei der statischen Codeanalyse wird der Code untersucht, ohne dass das Programm ausgeführt werden muss. So lassen sich typische Fehler finden. Das Ziel ist es, Programmierungs- und Syntaxfehler auszumachen und verschiedene Sicherheitstests durchzuführen. Das verhindert, dass gängige Sicherheitslücken in den Code eingebaut werden.

    Führen Sie eine Software-Kompositionsanalyse (SCA) durch
    Um die in der Software verwendeten Komponenten zu identifizieren und zu verwalten, sollten Sie Tools für die Software-Kompositionsanalyse nutzen. Eine solche Analyse stellt sicher, dass alle Komponenten einer Anwendung sicher, ordnungsgemäß lizenziert und frei von bekannten Sicherheitslücken sind. SCA-Tools scannen die Abhängigkeiten einer Anwendung und vergleichen sie mit einer Datenbank bekannter Komponenten. Diese Datenbank wird ständig aktualisiert, um die Informationen über Sicherheitslücken und Lizenzierung sowie andere relevante Daten auf dem neuesten Stand zu halten. Eine SCA deckt Angriffe auf Lieferketten auf und trägt dazu bei, sie zu verhindern.

    Phase 6: Sicheres Release

    Phase 6 kurz zusammengefasst

    Nach den Tests wird die Software veröffentlicht. Bevor der Code den Usern zur Verfügung gestellt wird, sollte er durch einen Code-Signing-Service gehärtet werden.

    Phase 6 im Einzelnen

    Dies ist ein sehr wichtiger Punkt auf Ihrer To-do-Liste.

    Sobald die Software ausgiebig getestet wurde, ist es an der Zeit, sie zu veröffentlichen.

    Sicheres Release in der Praxis – Ihre To-do-Liste

    Nutzen Sie einen Code-Signing-Service
    Verwenden Sie vor der Veröffentlichung einen Code-Signing-Service. Damit können Sie den Binärcode vor dem Release sicher signieren und sicherstellen, dass das Signieren von Zertifikaten überwacht wird und die Zertifikate in den Produktions- und Entwicklungsumgebungen nicht frei verfügbar sind.

    Phase 7: Reaktion

    Phase 7 kurz zusammengefasst

    Auch wenn Sie alle Phasen konsequent durchlaufen und kontinuierlich Tests durchführen, kann es zu Sicherheitslücken kommen. Seien Sie also immer darauf vorbereitet. Um Ihre Sicherheit aufrechtzuerhalten, benötigen Sie einen Reaktionsplan, der festlegt, wie Sie bei sicherheitsrelevanten Vorfällen vorgehen. Achten Sie in diesem Zusammenhang auf ein standardisiertes Meldesystem. Auf diese Weise können die Verantwortlichen ihre Erkenntnisse schnell an alle weitergeben. Auch ein Bug-Bounty-Team kann Ihnen helfen, Schwachstellen zu identifizieren und effizient darauf zu reagieren.

    Phase 7 im Einzelnen

    Mit Hilfe unserer To-do-Liste gehen Sie Vorfälle wirksam an.

    Egal, wie oft und wie gewissenhaft man testet, manchmal schleicht sich doch eine Sicherheitslücke ins System ein. Auch wenn das nur selten vorkommt, ist es wichtig, klare Richtlinien zu haben, wie in solchen Fällen zu verfahren ist.

    Unser Reaktionsplan für Sicherheitsvorfälle umfasst alle Vorgaben, Playbooks sowie Zuständigkeiten für den Umgang mit Sicherheitsvorfällen im Zusammenhang mit TeamViewer Produkten.

    Dafür braucht es Mitarbeitende in Forschung und Entwicklung, die nicht nur auf Vorfälle reagieren, sondern auch dafür sorgen, dass ihre Erkenntnisse in neue Sicherheitsmaßnahmen mit einfließen.

    Hersteller sollten auch darauf achten, dass ihre Software korrekt eingesetzt wird. Bei TeamViewer sorgt ein eigenes Team dafür, dass alle User die Software sicher nutzen können. Um dies zu gewährleisten, hat TeamViewer entsprechende Maßnahmen etabliert. Dazu zählen neben Betrugsprävention auch interne Kontrollmechanismen und Untersuchungen. Technologien wie maschinelles Lernen und Künstliche Intelligenz (KI) helfen dabei, betrügerische Aktivitäten besser zu erkennen und zu verhindern.

    Nach einem Release nutzt TeamViewer Sicherheitsmaßnahmen, um die Marke und den Ruf des Unternehmens zu schützen. So kann TeamViewer erkennen und verhindern, dass der Firmenname, Logos oder andere geschützte Bestandteile unerlaubt genutzt werden. Dazu gehört auch das Aufspüren von Produktfälschungen, Phishing sowie anderen Formen des Betrugs, bei denen das Logo eines Unternehmens verwendet wird, um die Kundschaft zu täuschen.

    TeamViewer hat festgelegt, welche Vorfälle welche Reaktion erfordern. Die Einstufung richtet sich nach Schweregrad und Auswirkungen des jeweiligen Vorfalls. Sie definiert:

    • ob ein Release gestoppt wird (Prio 1)
    • ob ein Release nach der Veröffentlichung so schnell wie möglich einen Hotfix benötigt (Prio 2)
    • ob nach dem Release innerhalb eines bestimmten Zeitrahmens Bugfixes erforderlich sind (Prio 3)
    • ob ein Release auch mit geringen Befunden durchgeführt werden kann (Prio 4)

    TeamViewer arbeitet zudem an einem standardisierten Meldeverfahren für die Veröffentlichung von Sicherheitsproblemen. Darüber hinaus entwickeln wir ein spezielles Benachrichtigungsverfahren für Großkundschaft.

    TeamViewer verfügt über einen bewährten Prozess, bei dem Sicherheitsfachleute mit dem Unternehmen in Kontakt treten können, um eine Schwachstelle im Rahmen des Vulnerability Disclosure Programs zu melden. Auf diese Weise kann TeamViewer den Fehler beheben und einen Fix veröffentlichen. Wenn eine externe Partei eine Schwachstelle offenlegen will, kann sie dies sicher über eine spezielle Plattform oder per PGP-Schlüssel tun.

    Darüber hinaus bietet TeamViewer ein Bug-Bounty-Programm, das über die Plattform einer vertrauenswürdigen Community zur Verfügung gestellt wird. Im Rahmen dieses Programms zahlt TeamViewer attraktive Prämien für jeden Hinweis auf eine kritische Sicherheitslücke. Auf diese Weise profitiert TeamViewer von kontinuierlichen Prüfungen, unterschiedlichen Tests und detaillierten Fehlerberichten.

    Die sogenannten Common Vulnerabilities and Exposures (CVE) Numbering Authorities haben die Aufgabe, Sicherheitslücken in Software und anderen Technologieprodukten mit eindeutigen Identifikationsnummern zu versehen. Das Ziel ist es, eine standardisierte Methode zur einheitlichen Kennzeichnung von Sicherheitslücken zu schaffen. Das erleichtert es Softwareunternehmen, Sicherheitsfachleuten und Usern, sich über diese Schwachstellen auszutauschen und herauszufinden, welche Gegenmaßnahmen es gibt.

    Seit Dezember 2022 ist TeamViewer im Rahmen des CVE-Programms als Numbering Authority (CNA) autorisiert. Dadurch kann TeamViewer die Sicherheit seiner Produkte gewährleisten und die erfolgreiche Kommunikation und Zusammenarbeit zwischen den verschiedenen Interessengruppen sowie die Entwicklung sicherer Software- und Technologieprodukte fördern.

    TeamViewer befasst sich mit Sicherheitslücken, die aus unterschiedlichen externen Quellen stammen. Ein großes Risiko ist, dass die Schadensbegrenzung oder die Behebung einer Schwachstelle zu lange dauert und Bug Hunter sie öffentlich machen könnten. Deswegen hat TeamViewer interne Service Level Agreements (SLAs) eingeführt. Abhängig vom CVSS-Wert (Common Vulnerability Scoring System) wird für jede Schwachstelle eine Frist gesetzt, bis zu der das betroffene Entwicklungsteam die Schwachstelle behoben haben muss.

    Um auf längere Störungen der Produktionsumgebung vorbereitet zu sein, hat TeamViewer einen Notfallplan erstellt. Darin wird beschrieben, wie TeamViewer auf Ereignisse wie Naturkatastrophen, Cyberangriffe, Stromausfälle oder andere unerwartete Geschehnisse reagiert.

    Reaktion in der Praxis – Ihre To-do-Liste

    Erstellen Sie einen Reaktionsplan
    Ihr Reaktionsplan sollte alle Vorgaben, Playbooks und Verantwortlichkeiten für den Umgang mit Sicherheitsvorfällen klar definieren und festhalten.

    Richten Sie ein Product Security Incident Response Team (PSIRT) ein
    Stellen Sie ein spezielles Team aus Mitarbeitenden der Forschungs- und Entwicklungsabteilung zusammen, das auf Sicherheitsvorfälle reagiert. Sorgen Sie dafür, dass die Erkenntnisse des Teams dazu beitragen, Ihr Produkt sicherer zu machen.

    Führen Sie ein Standardverfahren für Sicherheitsmitteilungen ein
    Entwickeln Sie ein standardisiertes Meldeverfahren, um Sicherheitsprobleme an die Öffentlichkeit zu kommunizieren. Wenn Sie Zeit und Mittel dafür haben, können Sie ein umfassenderes Meldeverfahren für Ihre Großkundschaft erarbeiten.

    Stellen Sie Mittel für die Betrugsprävention zur Verfügung
    Betrugsprävention wird immer wichtiger. Damit die User Ihre Software sicher nutzen können, sollten Sie sie regelmäßig überprüfen. Das kann intern und/oder extern geschehen.

    Stellen Sie sicher, dass Ihre Marke geschützt bleibt
    Ein Release darf dem Ruf Ihres Unternehmens nicht schaden. Wir empfehlen daher, interne und/oder externe Tools zu nutzen, um Ihre Marke zu schützen.

    Legen Sie Ihre Reaktion auf ein Ereignis anhand einer fixen Einstufung fest
    Die Maßnahmen, die zur Behebung einer Schwachstelle oder eines Fehlers erforderlich sind, hängen von der Schwere und den Auswirkungen des Vorfalls ab. Deshalb sollten Sie die Schwachstellen und Befunde vor dem Release klassifizieren und festlegen, wie damit umgegangen wird.

    Ermöglichen Sie eine verantwortungsvolle Offenlegung (Responsible Disclosure)
    Ermöglichen Sie es Sicherheitsfachleuten, Schwachstellen an Ihr Unternehmen zu melden. Auf diese Weise können Sie sie schnell beheben und Patches bereitstellen.

    Nutzen Sie CVE-Datenbanken oder lassen Sie sich als CVE Numbering Authority (CNA) zertifizieren
    Prüfen Sie stets, ob Ihre Software von bekannten Schwachstellen betroffen ist, indem Sie entsprechende Datenbanken wie die CVE-Datenbank konsultieren. So verhindern Sie, dass Angreifende diese Schwachstellen ausnutzen, um Zugriff auf Ihr Produkt zu erhalten, und reduzieren bestehende Angriffsflächen.

    Erstellen Sie interne SLAs für die rechtzeitige Behebung von Schwachstellen
    Nichts ist schlimmer, als wenn eine Schwachstelle öffentlich bekannt wird, weil sie nicht schnell genug behoben wurde. Um dies zu verhindern, sollten Sie interne SLAs festlegen.

    Erstellen Sie einen Notfallplan, um das Betriebliche Kontinuitätsmanagement (BKM) zu fördern
    Ein Notfallplan sorgt dafür, dass die Auswirkungen eines Vorfalls auf die Abläufe im Unternehmen minimal sind. So kann Ihr Unternehmen schnell wieder normal weiterarbeiten. Der Notfallplan umfasst in der Regel die folgenden Bestandteile:

    • Analyse der Auswirkungen auf das Unternehmen: Eine Risikobewertung der geschäftskritischen Prozesse und der Auswirkungen einer Unterbrechung darauf.
    • Maßnahmen zur Wiederherstellung des Normalbetriebs: Methoden und Techniken zur Wiederherstellung kritischer Systeme und Daten nach einem Vorfall. Dazu gehören Datensicherung und -wiederherstellung sowie Ersatz für Soft- und Hardware.
    • Verantwortliche für die Wiederherstellung des Normalbetriebs: Bestimmung des verantwortlichen Personals und seiner Aufgaben und Zuständigkeiten.
    • Kommunikationsplan: Die Verfahren für die Kommunikation mit allen Interessengruppen, einschließlich Mitarbeitenden, Kundschaft, Partnerunternehmen und Aufsichtsbehörden, während und nach einem Ereignis.
    • Prüfung und Aktualisierung: Regelmäßige Prüfung und Aktualisierung des Notfallplans.

    Der Notfallplan sollte regelmäßig überprüft, aktualisiert und getestet werden, um sicherzustellen, dass er sinnvoll und effektiv ist. Dazu gehört die Prüfung der zugehörigen Prozesse, Verfahren und Technologien, um etwaige Lücken oder Schwachstellen zu ermitteln und zu beheben. Der Notfallplan sollte außerdem allen relevanten Interessengruppen bekannt sein sowie allen autorisierten Beschäftigten zugänglich gemacht werden.