Ihre Herausforderungen im Bereich Threat Modeling

Stellen Sie die Sicherheit an erste Stelle

Datendiebstahl aufgrund von unsicheren Anwendungen – für viele Unternehmen stellt dies vor allem im Hinblick auf die global zunehmende Digitalisierung eine große Herausforderung dar. Zielsicher findet der Hacker die Sicherheitsprobleme und Schwachstellen in einer Software und nutzt dies zu seinen Gunsten aus. So sind schnell Daten verschwunden, gelöscht oder werden für andere Zwecke genutzt. Deshalb ist es umso wichtiger das Thema Sicherheit im Unternehmen an die erste Stelle zu setzen und nicht aus den Augen zu verlieren.

Warum fällt Unternehmen das Thema Sicherheit so schwer?

Aus den verschiedensten Gründen wird die Sicherheitsfrage bei Anwendungen und Systemen in Firmen nur widerwillig in ein Projekt aufgenommen:

  • Meist fehlt es bereits an einer konkreten Anforderung an die Security: „Es soll halt sicher sein”, möglichst wenig Aufwand bedeuten und nicht viel kosten.
  • Die beauftragten Penetrationstester stellen Sicherheitslücken erst kurz vor dem Produktivgang fest. Damit kann sich der Release eines neuen Produktes maßgeblich verzögern.
  • Das Auftreten von unvorhergesehenen Sicherheitsanforderungen bzw. Problemen kann ggf. größere Änderungen am Entwicklungsprozess verursachen.
  • Unternehmens-Richtlinien fordern kontinuierlich neue Sicherheitsmaßnahmen an Anwendungen und Systeme, was eine Integration in die Projekte von Anfang an erschwert.
  • Es herrscht eine allgemeine Unsicherheit bezüglich der Security in den Projekten: „Wo anfangen und wie viel Sicherheit ist wirklich nötig?”
  • Anwendungen und Systeme werden immer komplexer und machen die Berücksichtigung der Security zu einem aufwendigen Unterfangen.
  • Die kurzen Lieferzyklen (Continuous Delivery) von Software machen es nicht einfacher, Sicherheit in den Softwareentwicklungsprozess zu integrieren.
  • Es fehlt die Erfahrung im Team, wie mit Sicherheitsanforderungen umgegangen werden soll.
  • Das Verständnis über die interne Gesamtarchitektur ist nicht vorhanden.
  • Es gibt eine allgemeine Unstimmigkeit darüber, ob Sicherheitstätigkeiten eher eine Last als ein Mehrwert sind.

Das nächste Problem ist, dass neue Ansätze von den Entwicklern eher kritisch gesehen werden:

  • Gegenüber eines bisher unbekannten Verfahrens, wie beispielsweise Threat Modeling, herrscht Skepsis. Deshalb stößt die Einführung eines solchen neuen Verfahrens auf Widerstand bei den Entwicklern.
  • Häufig ist unklar, wie genau Threat Modeling zum Entwicklungsprozess (Agil oder Wasserfall usw.) passt und wie ein Threat Model in den aktuell bestehenden Entwicklungsprozess eingebaut werden soll.

Viel wichtiger ist hierbei jedoch zu bedenken, was der Hacker mit seinem Angriff anrichten kann: Wenn es zu einem Hackerangriff kommt verlieren Sie nicht nur wertvolle Kunden- und/oder Unternehmensdaten (z. B. sensitive Daten wie Namen, Kreditkartennummern usw.), sondern auch der Ruf Ihres Unternehmens kann dadurch nachhaltig geschädigt sein und das Vertrauen in Ihre Softwareanwendungen geht verloren. Abseits davon gibt es erhebliche Strafen bei einer Verletzung der Datenschutzgrundverordnung: Diese bewegen sich derzeit bis in den Millionenbereich. Und bei der Security im Unternehmen ist es wie beim Testen – je später die Lücke gefunden wird, desto teurer wird es für Sie werden.

Seien Sie dem Hacker einen Schritt voraus und geben Sie ihm keine Chance mehr Ihre Daten zu klauen!

Was kann Ihnen dabei helfen? Mit Threat Modeling werden nicht nur Schwachstellen in Ihrem Prozess erkannt, sondern Sie können die Sicherheitsmängel direkt und schnell beseitigen und haben gleichzeitig einen Nachweis, wie sicher Ihre Anwendungen oder Systeme sind. Integrieren Sie Threat Modeling von Anfang an mit in Ihren Software Development Life Cycle (SDLC) und optimieren Sie Ihr gesamtes Sicherheitskonzept.

Was ist Threat Modeling genau und wie kann es Ihnen helfen? Gerne unterstützen wir Sie dabei, das Thema Sicherheit mit Hilfe von Threat Modeling von Anfang an in Ihren Softwareentwicklungsprozess einzubinden. Wir geben Ihnen einen Überblick in den Prozess und zeigen Ihnen auch die Vorteile auf.

Ihre Vorteile durch den Einsatz von Threat Modeling

Security ist immer eine Lösung

Überall, wo sensitive und damit schützenswerte Daten gespeichert oder verarbeitet werden, sollten diese auch ausreichend geschützt werden. Denn gerade in Zeiten der Digitalisierung sind Daten ein wertvolles Gut, mit dem jedes Unternehmen sorgfältig umgehen sollte. Dies gelingt Ihnen mit einem Bedrohungserkennungsprozess wie Threat Modeling, welcher Schwachstellen Ihrer Software oder Ihres Prozesses erkennt und gleichzeitig auch beheben kann. Machen Sie den ersten Schritt mit uns zusammen und staunen Sie, wie einfach Sie den Sicherheitsaspekt Ihrer Anwendungen berücksichtigen können. Security First lohnt sich immer!

Mit Threat Modeling sind Sie auf der sicheren Seite

Sie stecken gerade mitten in der Entwicklung und schon ist es wieder passiert: Ein Hacker hat Ihr System geknackt und wichtige Daten gestohlen. Ihrem Vorgesetzten (Ihrem CTO, IT-Leiter oder Geschäftsführer) müssen Sie nun erklären, wie es dazu kommen konnte und Ihr Team ist unschlüssig darüber, wie es den Prozess verbessern soll. Ärgern Sie sich nicht mehr, sondern handeln Sie sofort. Legen Sie Ihre Skepsis gegenüber bisher unbekannten Methoden ab. Denn wir sind uns sicher, dass es Ihnen mehr schadet als nutzt Sicherheitsaspekte in Anwendungen und Systemen weiter aufzuschieben!

Gerade weil Anwendungen und Systeme immer komplexer werden, kurze Lieferzyklen (Continuous Delivery) haben und Daten ein schützendes Gut darstellen, sollten Sie bei Ihrer agilen Softwareentwicklung auf Nummer Sicher gehen: Mit Hilfe von Threat Modeling entwickeln Sie konkrete und testbare Anforderungen für Security, die analog zu den Business User Stories umsetzbar sind. Sie integrieren Sicherheit von Anfang an in Ihren Softwareentwicklungsprozess („Shift-Left Security”) und mindern dadurch die Gefahr von Hackerangriffen. Außerdem können auch Continous Delivery Prozesse modelliert und darin Schwachstellen erkannt werden. Wir gehen sogar noch einen Schritt weiter: Sie können ohne bekannte Sicherheitsrisiken in die Produktion gehen und der Aufwand für Penetrationstester reduziert sich maßgeblich. Sie machen die bestehenden Prozesse also nicht nur sicherer, sondern Sie vereinfachen diese. Denn, je früher die Schwachstellen erkannt werden, desto kostengünstiger wird es für Sie.

Ab sofort beziehen Sie Threat Modeling bei jedem Sprint mit ein und und können dieses so im agilen Umfeld pragmatisch und praxisnah bei jedem Sprint (weiter-)entwickeln. Sie erhalten beispielsweise durch eine visuelle Darstellung mehr Transparenz, wie sicher Ihre Anwendung oder Ihr System ist. Sie erkennen frühzeitig Angriffspotentiale für Ihre Softwareanwendung und können Maßnahmen zur deren Minimierung über Anforderungen direkt berücksichtigen. Sie werden sehen: Durch Threat Modeling wird sich das Sicherheitsbewusstsein bei allen Teammitgliedern erhöhen und Security von Anfang an mitbetrachtet werden. Noch viel wichtiger: Langfristig werden Ihre Entwickler produktiver sein und Ihre Projekte effizienter umgesetzt, weil es zu keinen unvorhergesehenen Sicherheitsanforderungen kommt.

Threat Modeling bildet den passenden Prozess für Sie, um Ihr Unternehmen vor Hackerangriffen zu schützen!

Wir entwickeln gemeinsam Ihren optimalen Threat Modeling Prozess

Unsere Agile Security Experten unterstützen Sie bei der Umsetzung von Threat Modeling. Mit uns finden Sie heraus, welchen Bereich Sie bzgl. Sicherheit optimieren sollten. Wir schaffen ein tiefes Verständnis dafür, wie Threat Modeling eingesetzt werden kann, um Sicherheit so früh wie möglich in den Softwareentwicklungsprizess zu integrieren. So haben Sie immer einen Ansprechpartner, an den Sie sich mit allen Fragen zum Thema Sicherheit wenden können.

Institutionen wie die OWASP Foundation setzen sich intensiv dafür ein, die Sicherheit von Software zu verbessern. Nach unserem Briefing wissen die Entwickler und der PO, wie nützlich die Tipps von OWASP sind, sie kennen die OWASP Top 10 und lernen, wie sie sich in Ihrer eigenen Anwendung vor solchen Angriffen schützen können.

Wir kennen viele verschiedene Verfahren und Vorgehensweisen, die Ihnen bei der Behebung Ihrer Sicherheitslücken helfen. Diese werden wir ausführlich mit Ihnen besprechen. Vorher wollen wir Ihnen einen Einblick in die Funktionsweise des Threat Modeling geben und haben einen Use Case zum besseren Verständnis parat.

Die Funktionsweise von Threat Modeling

Hat das Team wirklich einen Mehraufwand, wenn es Sicherheitstätigkeiten umsetzt? Ist es kompliziert, Sicherheitsanforderungen in den Entwicklungsprozess zu integrieren? Wir sagen Nein und zeigen Ihnen anhand eines anschaulichen Beispiels, dass es sich lohnt, sich intensive Gedanken um Security zu machen und langfristig Sicherheitsaspekte in Ihren agilen Projekten zu berücksichtigen.

Threat Modeling am Beispiel einer Finanztracker-WebApp

Sie besitzen mehrere Konten bei verschiedenen Geldinstitutionen und haben deshalb keinen Gesamtüberblick über Ihre Finanzen. Ein Unternehmen entschließt sich dafür eine Finanztracker-WebApp zu entwickeln. Dafür speichert die WebApp die Namen ihrer Nutzer zusammen mit den Zugangsdaten für die Bankkonten in einer Datenbank ab. Gehostet wird die Finanztracker-WebApp in einer externen Cloud.

Unsere fiktive Person Maxi Mustermann (User) wird auf diese Finanztracker-WebApp aufmerksam. Um die Anwendung nutzen zu können, muss sie sich mit einem Benutzernamen und einem Passwort registrieren. Dabei fragt sie sich, ob ihre Daten wirklich sicher abgespeichert werden.

Welche Angriffe sind möglich und wie kann sich das Unternehmen davor schützen? Das Unternehmen ist sich dieses Risikos bewusst und möchte sicherstellen, dass seine Anwendung vor Angreifern geschützt ist. Das Ziel: Es darf Unbefugten nicht gelingen, die Daten von Maxi Mustermann einzusehen oder schlimmer noch Geld von ihrem Konto auf ein Fremdes zu überweisen.

Wie gehen wir als Novatec in einem solchen Fall vor?

Zuerst werden die Prozesse und Use Cases aufgenommen: Um die Anwendung verwenden zu können, meldet sich Maxi Mustermann bei der Finanztracker-WebApp mit Benutzername und Passwort an. Dabei müssen Benutzername und Passwort auf Korrektheit geprüft werden.

Use Case Login bei Finanztracker-WebApp.
Quelle: eigene Darstellung

Danach wird mit Hilfe des Threat Modeling Prozesses ermittelt, welche potenziellen Bedrohungen es gibt, um die Zugangsdaten von Maxi Mustermann zu schützen. Initialer Bestandteil des Prozesses ist dabei die Erstellung eines Datenflussdiagramms auf Basis der vorhandenen Architektur. Maxi Mustermann möchte sich bei bei der Finanztracker-WebApp als User anmelden. Der Login-Service prüft nun, ob der User überhaupt berechtigt ist sich anzumelden. Der Login-Service wurde eigenständig implementiert und folgt keinen Standards. Für die Verifikation der Anmeldung von Maxi Mustermann gleicht der Login-Service die eingegeben Daten mit den in der Datenbank (User Database) gespeicherten Daten ab. Trust Boundaries (gestrichelte Linien) zeigen die Vertrauensbasis zwischen den einzelnen Komponenten auf. Jede Komponente besitzt dabei eine andere Vertrauensbasis. Standardmäßig vertrauen wir zu Beginn keinem User, wenn er sich versucht bei der Finanztracker-WebApp anzumelden.

Datenflussdiagram mit Trust Boundaries.
Quelle: eigene Darstellung

Im zweiten Schritt findet der Threat Modeling Prozess die potentiellen Bedrohungen durch die Methode STRIDE heraus. STRIDE ist ein Akronym, wobei jeder Buchstabe für eine Bedrohungskategorie steht:

  • Spoofing Identity: Der Angreifer täuscht eine falsche Identität vor und kann so auf vertrauliche Daten zugreifen oder diese abfragen.
  • Tampering with Data: Der Angreifer manipuliert ohne Autorisierung (persistente) Daten.
  • Repudiation: Die Nichtanerkennung bezieht sich auf Benutzer, die die Ausführung einer Aktion abstreiten, ohne dass das Gegenteil bewiesen werden kann.
  • Information Disclosure: Der Angreifer erlangt vertrauliche Daten. Dies könnten Dateien, persistente Daten aus Datenbanken, Informationen über die IT-Infrastruktur oder Fehlermeldungen sein.
  • Denial of Service: Ziel des Angreifers ist es sämtliche Ressourcen des Servers (Rechenzeit, Speicherkapazität, …) aufzubrauchen und damit die Verfügbarkeit der angebotenen Dienste zu unterbinden.
  • Elevation of Privilege: Ein nicht berechtigter Benutzer erhält privilegierten Zugriff und verfügt damit über ausreichende Zugriffsrechte, um das gesamte System zu kompromittieren oder zu zerstören.

Diese Kategorien werden nun auf die einzelnen Datenflüsse angewendet. So lässt sich schnell erkennen, dass ein Angreifer beim Login die HTTP Verbindung mitlesen bzw. sogar manipulieren könnte. Analog zu dieser ersten erkannten Bedrohung werden durch den Threat Modeling Prozess weitere Schwachstellen und Risiken entdeckt, woraus Gegenmaßnahmen erarbeitet werden.

Wir empfehlen Ihnen HTTPS statt HTTP einzusetzen und beim Login auf aktuelle Standards wie beispielsweise OpenID Connect zu setzen oder zumindest gängige Bibliotheken wie Spring Security einzusetzen.

Angriffsbaum.
Quelle: eigene Darstellung

Nach der Durchführung des Threat Modeling Prozesses werden besonders kritische Angriffsmöglichkeiten durch sogenannte Angriffsbäume (Attack Trees) verdeutlicht. Bei Angriffsbäumen wird zuerst das Angriffsziel ermittelt, dass die Baumwurzel darstellt. Anschließend werden aus diesem Angriffsziel mögliche Zwischenziele ermittelt. Damit gelangen wir zur Bedrohung und können diese beseitigen.

Wie sieht das Angriffsziel in unserem oben genannten Beispiel aus? Ein Angreifer möchte die Zugangsdaten von Maxi Mustermann erlangen. Mögliche Angriffe auf die Finanztracker-WebApp sind dabei nach der Modellierung eines beispielhaften Angriffsbaumes „Man-In-The-Middle“ und „Brute-Force“.

Beim Threat Modeling Prozess versetzen sich alle Stakeholder gemeinsam in die Lage des Angreifers, um damit möglichst schnell viele Bedrohungsszenarien zu erkennen. Genau dabei können wir Ihnen helfen!

Unsere Dienstleistungen im Bereich Threat Modeling

Schließen Sie Ihre Sicherheitslücken mit Threat Modeling

Starten Sie jetzt damit, Sicherheit von Anfang an in Ihre Entwicklung einzubeziehen und versuchen Sie nicht mehr diese nachträglich „hinein zu testen”. Damit tun Sie nicht nur sich einen Gefallen, sondern auch Ihrem Entwicklerteam. Threat Modeling hilft Ihnen dabei Ihre Sicherheitslücken langfristig zu schließen und bietet dem Hacker keine Gelegenheit mehr, wichtige Daten bei Ihnen zu klauen. Wir zeigen Ihnen, wie Sie den Prozess einfach und verständlich in Ihren Entwicklungsprozess integrieren können!

Machen Sie Ihre Anwendungen Schritt für Schritt sicherer

Vereinfachen Sie die Arbeit Ihrer Entwickler und garantieren Sie Ihren Kunden die Sicherheit Ihrer Daten! Von der Bestandsaufnahme, über die Aufnahme des Ist-Zustands, die Anforderungsermittlung, die Ermittlung der Schwachstellen, bis hin zur gesamten Umsetzung – Wir machen Sie Schritt für Schritt fit in Sachen Security mit dem Threat Modeling Prozess.

Wir sprechen mit Ihnen ausführlich in einem Training oder Workshop darüber, welche individuelle Unterstützung Sie bei der Einführung von Threat Modeling benötigen. So finden wir gemeinsam schnell heraus, ob Sie Hilfe bei der Umsetzung brauchen oder wir Ihnen in Form eines projektbegleitenden Coaching helfen können.

Inwieweit sind Architekturdokumentationen vorhanden und welche Stakeholder gilt es in Ihrem Unternehmen zu überzeugen? Auch hier stehen wir Ihnen von Beginn an beratend zur Seite.

Nach unserer Vorbesprechung wissen Sie nicht nur, was Threat Modeling ist, sondern auch, was es kann und welchen Nutzen es für Sie hat. Nehmen Sie kein Produkt „von der Stange”, sondern lassen Sie sich von uns individuell beraten und sehen Sie direkt, was sich für Sie verbessert. Denn Ihr Ziel ist unser Ziel – für mehr Security in Ihren Projekten und einen reibungslosen Softwareentwicklungsprozess!

Wo gibt es bei Ihnen Bedrohungen und Sicherheitslücken? In einem Interview oder Workshop arbeiten wir mit Ihnen eine Ist-Analyse aus. Wir überlegen gemeinsam, was zu tun ist, damit Ihre Anwendungen sicher sind. Darauf aufbauend werden wir Ihnen ein geeignetes Threat Model erstellen: Den Prozess bzw. die Architektur werden wir Ihnen visuell darstellen, um allen Ihren Stakeholdern ein einheitliches Verständnis für Security und Threat Modeling zu vermitteln.

Ggf. erhalten Sie in diesem Zuge sogar noch ein kurzes Architekturreview – je nachdem, was wir bei der Bestandsaufnahme entdecken. Vielleicht finden wir unabhängig vom Thema Sicherheit Mängel in der Architektur, die einfach und schnell zu beheben sind.

Was wollen Sie am Ende erreichen? Zusammen mit Ihnen stellen wir in einem Interview oder Workshop Ihre Sicherheitsziele auf.

Sie erhalten dabei einen Überblick, welche schützenswerte Güter, wie beispielsweise Kundendaten oder Unternehmensdaten, für Ihr Unternehmen unternehmenskritisch sind und welche Auswirkungen es für Sie hat, wenn diese bedroht werden (z.B. entwendet, veröffentlicht oder gelöscht werden).

Mit dem ganzen Entwicklungsteam gehen wir in einem Workshop auf die Suche nach potenziellen Bedrohungen in Ihren Anwendungen: Dabei nutzen wir Threat Modeling Methoden STRIDE Methode oder die Attack Trees, die einfach anzuwenden und auch für Personen geeignet sind, die sich noch nicht mit Sicherheit auskennen.

Daraus erstellen wir Ihnen eine Liste an konkreten Bedrohungen, die Ihr System gefährden.

Auf Basis der erstellten Liste mit Bedrohungen identifizieren wir Ihre Schwachstellen im System. Dabei stellen wir uns die Frage: Wo sind Ihre Systeme und Anwendungen schon sicher und wo haben Sie noch offene Sicherheitslücken?

In einem Workshop erarbeiten wir einen Soll-Ist-Vergleich, um gezielt und zeitnah die Risiken und Bedrohungen zu beheben und dem Angreifer keine Chance mehr zu geben.

Gemeinsam mit Ihnen ermitteln wir nicht nur Ihre Risiken und Bedrohungen, sondern wir ordnen diese auch in eine Priorisierungsliste für die schützenswerten Güter ein.

Damit legen Sie fest, welche Maßnahmen zuerst ergriffen werden sollen und verlieren nie den Überblick.

Welche geeigneten Gegenmaßnahmen leiten wir wann ein, um die Bedrohungen so schnell wie möglich zu eliminieren?

In dieser Phase haben wir die Sicherheitslücken erkannt und priorisiert. Nun können wir einen genauen Zeitplan erstellen, wann welche Gegenmaßnahme implementiert werden sollen und wie wir Sie unterstützen können. Dabei legen Sie fest, ob wir Ihnen bei der Umsetzung helfen oder das Review der Umsetzung übernehmen sollen, welche Schritte in den nächsten Sprint kommen oder welche Anforderungen in den übernächsten Sprint einfließen – Sie geben das Tempo vor!

Desweiteren können wir Ihnen folgende Workshops anbieten

  • Um die typischen OWASP Top 10 Probleme an Ihrer Anwendung transparent zu machen bieten wir einen Threat Modeling Workshop mit dem ganzen Entwicklerteam an.
  • Sie wollen einfach mal die verschiedenen Möglichkeiten von Threat Modeling kennen lernen? Wir unterstützen Sie dabei mit einem Workshop.
  • Wie passt Threat Modeling in den Sprint hinein? Mit einem Workshop zeigen wir Ihnen das auf oder wir coachen auch gerne Ihr Team (z. B. Beratung des Product Owners oder Pairing mit Entwicklern).

Security optimal in Ihren Softwareentwicklungsprozess einbauen

Machen Sie Schluss mit Vorurteilen und langen Diskussionen, wie und wann Sie Security optimal in Ihren Softwareentwicklungsprozess einbauen können. Mit Threat Modeling ist dieses Problem gelöst: Sie schützen wichtige Daten zuverlässig und fügen Anwendungssicherheit im agilen Umfeld in Ihre Sprints mit ein. Das macht Ihre Anwendungen von Anfang an transparent und sicher. Wir entwickeln mit Ihnen das Threat Model individuell für Ihre Prozesse. Oder wollen Sie Ihre Entwickler zu Experten machen? Durch diese Methode kann man das Sicherheitsbewusstsein bei allen Teammitgliedern erhöhen. Wir beraten Sie gerne als Coach bei der Umsetzung. Falls Sie wissen wollen, wie Sie Sicherheit von Anfang an im Bereich IoT integrieren können erfahren Sie hier mehr.

Was auch immer Sie benötigen um Ihre Anwendungen sicherer zu machen – Wir sind Ihre Agile Security Spezialisten!

Ihre Ansprechpartnerin

Novatec_Mitarbeiterportraits_Christina_Paule
Inhaltsverzeichnis
Ihr Ansprechpartner Christina Paule Consultant
Novatec_Mitarbeiterportraits_Christina_Paule