Suchen

Applikationssicherheit Schwachstellen in Web-Anwendungen vermeiden

Autor / Redakteur: Mav Turner / Stephan Augsten

Zweifelsohne ist es wichtig, Netzwerke, Daten und Geräte abzusichern. Ein Sicherheitsaspekt wird aber oft vernachlässigt: die Anwendungen, die auf diesen Systemen ausgeführt werden, und deren Schwachstellen. Sie können die gesamte Sicherheitsstrategie eines Unternehmens gefährden.

Firma zum Thema

So wie beim Hausbau essenzielle Leitungen verlegt werden, sollte auch bei der Software-Architektur die Sicherheit von Grund auf eingeplant werden.
So wie beim Hausbau essenzielle Leitungen verlegt werden, sollte auch bei der Software-Architektur die Sicherheit von Grund auf eingeplant werden.
(Bild: Archiv)

Die Sicherheit von Unternehmen ist und bleibt ein ständiges Gesprächsthema. Nach den aufsehenerregenden Hacking-Fällen des vergangenen Jahres wird allgegenwärtig das Worst-Case-Szenario heraufbeschworen: der Diebstahl und die Manipulation von Kunden- oder Unternehmensdaten oder geistigen Eigentums.

Die Anwendungssicherheit bleibt dabei interessanterweise oft unberücksichtigt. Auch wenn Anwendungen unser gesamtes Geschäfts- und Privatleben durchdringen, steckt die native Anwendungssicherheit noch in den Kinderschuhen. Es gibt keine Universallösung und in einer Zeit, in der große Flexibilität gefragt ist, legen einige Entwickler (sowohl intern als auch extern) mehr Wert auf eine schnelle Markteinführung als auf sichere Technologien.

Wie gehen wir also damit um? Stellen Sie sich die Anwendungssicherheit wie den Bau eines Hauses vor. Es ist sehr viel einfacher, die grundlegenden Einrichtungen – beispielsweise Stromversorgung und Abwasser – während der Bauphase von Anfang an einzuplanen, anstatt zu einem späteren Zeitpunkt alles umzubauen, um ein Badezimmer auf die andere Seite des Hauses zu verlegen.

Dasselbe Prinzip gilt für die Entwicklung von Anwendungen. Die Sicherheit der Anwendung muss bei der Entwicklung von Grund auf berücksichtigt werden und nicht nur einen Nebengedanken oder nachträglichen Zusatz darstellen. Im Kontext flexibler und innovativer Methoden bedeutet das, dass Sie sich bei jedem Schritt und jedem Entwicklungszyklus fragen sollten: „Welche Schwachstellen könnte ich ausnutzen?“

Je weiter die Entwicklungszyklen voranschreiten, desto schwieriger und kostenintensiver wird es, zurückzugehen und Fehler zu beheben, die von Anfang an vorhanden waren. Vor diesem Hintergrund finden Sie nachfolgend einige wichtige Überlegungen und Strategien für die sichere Entwicklung und Bereitstellung von Anwendungen in Unternehmen.

1. Nehmen Sie sich Zeit, um die Umgebung einzuschätzen

Im ersten Schritt sollten Sie sich ausreichend Zeit nehmen, um zu definieren, wie die Anwendungssicherheit für Sie und Ihr Unternehmen aussehen soll. So müssen Sie beispielsweise mehr Zeit und Aufwand auf die Sicherheit verwenden, wenn Ihre Organisation Steuerungssysteme für die Industrie entwickelt, als wenn Sie einfache Webanwendungen wie zum Beispiele Spiele entwickeln, durch die weder Kundendaten noch personenbezogene oder vertrauliche Daten gespeichert werden.

Folgende Fragen sollten berücksichtigt werden:

  • Welche Daten werden durch die Anwendung gespeichert?
  • Was für Daten durchlaufen die Anwendung?
  • Was ist das Worst-Case-Szenario im Falle einer Schwachstelle?
  • In welchen Situationen könnte es eintreten?
  • elcher Schaden kann entstehen, wenn Sie Opfer eines Angriffs werden und ein Hacker beispielsweise ein Abbild des gesamten Speichers erstellt oder höhere Zugriffsberechtigungen erlangt?
  • Stellen Sie sich vor, ein Mitarbeiter vergisst ein Mobilgerät im Taxi: Ist für den Zugriff auf das Netzwerk ein VPN-Kennwort erforderlich und wird dieses Kennwort im Cache gespeichert?

Denken Sie voraus und setzen Sie die richtigen Richtlinien für Ihr Unternehmen ein. Ihre Vorgehensweise hängt davon ab, durch wen und über welche Geräte auf eine Anwendung zugegriffen wird.

2. Den richtigen Grundstein legen

Der wichtigste Grundsatz beim Programmieren einer sicheren Anwendung besteht darin, die Sicherheit von Anfang an zu gewährleisten. Auch wenn es zunächst übervorsichtig erscheinen mag, erweist sich eine Strategie des „standardmäßigen Ablehnens“ während des gesamten Gestaltungsvorgangs als sinnvoll, damit die Anwendung ausreichend vor unberechtigten Zugriffen geschützt und gesperrt wird. Es ist deutlich einfacher, den Ursprung eventueller Sicherheitslücken zu ermitteln, wenn Sie Berechtigungen erst dann zuweisen, wenn sie benötigt werden.

Aus der Entwicklerperspektive sind Benutzeroberfläche und Benutzererlebnis nicht nur zentrale Aspekte der Entwicklung einer jeden Anwendung, sondern auch grundlegend für die Sicherheit. Das Ziel sollte immer darin bestehen, den Endbenutzer von Verantwortung zu befreien.

Warum? Wenn Benutzer selbst zwischen Sicherheit und Bequemlichkeit abwägen müssen, werden sie sich in den meisten Fällen für die Bequemlichkeit entscheiden – eine Entscheidung, die für ein Unternehmen fast immer falsch ist. Wenn Sie der Sicherheit den Vorrang vor der Bequemlichkeit gewähren müssen, beispielsweise wenn Benutzer bei jeder Verwendung einer Anwendung ein VPN-Kennwort eingeben müssen, sollten Sie sicherstellen, dass den Benutzern der Grund für diese Entscheidung bewusst ist.

3. Planen Sie für Eventualitäten

Egal, wie viele Richtlinien Sie einsetzen – Sie setzen Ihre Organisation einem Risiko aus, wenn diese Richtlinien keinen genauen Plan umfassen oder wenn niemand ihn versteht (und Sie Ihre Tester, Entwickler und Programmierer nicht entsprechend schulen). Eine gute Notfallplanung ist unabdingbar und umfasst auch die Annahme, dass Ihr Netzwerk und Ihre Infrastruktur sowie der gesamte interne und externe Datenverkehr ständig unter Beobachtung stehen.

Viele werden sich fragen, ob sich die Investition in native Anwendungssicherheit lohnt, wenn doch das Sichern der wichtigsten Infrastrukturkomponenten und gemeinsam genutzter Plattformen zunächst als logische Alternative erscheint. Die Antwort lautet: Wenn Sie Anwendungen auf einer gemeinsam genutzten Infrastruktur ausführen, müssen Sie davon ausgehen, dass diese Plattformen nicht sicher sind und Datensicherheitsverletzungen ein reelles Risiko darstellen.

Denken Sie beispielsweise an die Enthüllungen von Edward Snowden: Daten, von denen angenommen wurde, dass sie nur interne Rechenzentren durchlaufen, wurden in Wirklichkeit beobachtet und erfasst.

Die meisten Organisationen verzichten darauf, ihre interne Kommunikation zu verschlüsseln, doch die Enthüllungen von Edward Snowden haben gezeigt, dass Sie zu Ihrer eigenen Sicherheit davon ausgehen sollten, dass Ihre Infrastruktur offen ist. Nehmen Sie bei der Entwicklung und Bereitstellung von Anwendungen an, dass sich der Benutzer in einem nicht vertrauenswürdigen Netzwerk befindet.

Zu den Kernaspekten einer mehrschichtigen Verteidigungsstrategie für die Anwendungssicherheit gehört es, dass Entwickler, die eng mit dem internen IT-Infrastrukturteam oder mit dem Cloud-Anbieter zusammenarbeiten, deren Richtlinien genau kennen und wissen, wie oft sie aktualisiert und validiert werden und ob Prüfer eingesetzt werden. Eine mehrdimensionale Strategie ist wichtig, denn möglicherweise ist Ihre Anwendung sicher, nicht jedoch die verwendeten Daten oder die Plattform, auf der sie ausgeführt wird.

Genauso wichtig ist es, zu analysieren, wie genau Sie im Hinblick auf die Sicherheit über die Vergangenheit eines Anbieters Bescheid wissen. Wie schnell reagiert der Anbieter, wenn er oder ein Kunde eine Schwachstelle entdeckt? Was für Sicherheitsvorfälle sind bereits aufgetreten? Der Anbieter sollte über eigene Richtlinien verfügen und belegen können, dass sie wirksam sind.

Eine robuste Sicherheitsrichtlinie für Unternehmensanwendungen umfasst drei zentrale Punkte – einen eindeutigen Ansprechpartner für Mitarbeiter der Organisation, transparente Dienstgütevereinbarungen (SLAs) im Hinblick auf die Reaktionszeit von Anbieter und IT-Abteilung, eine eindeutige Strategie zur Schadensbegrenzung, falls der Anbieter nicht schnell reagieren kann, sowie offene Kommunikationswege: Wenn eine Sicherheitsschwachstelle entdeckt wird, sollte der Anbieter Sie warnen und nicht umgekehrt.

Mav Turner
Mav Turner
(Bild: SolarWinds)

Zusammen mit einer durchdachten Sicherheitsstrategie bei der Entwicklung und Bereitstellung von Anwendungen ebnen uns diese Prozesse den Weg zu einer sicheren Anwendungsentwicklung. In einer solchen Welt werden Datensicherheitsverletzungen die Ausnahme sein, nicht die Regel.

Über den Autor

Mav Turner ist Director Business Strategy bei SolarWinds.

Artikelfiles und Artikellinks

(ID:43821933)