Alle Welt spricht vom digitalen Zeitalter, immer mehr Services und Prozesse werden digitalisiert und stehen Nutzern in ausgewiesenen Empfängerkreisen oder weltweit zur Verfügung – von der Taxi- bis zur Pizzabestellung, vom B2B-Shop bis zum Intra- oder Extranet. Alles wird mit immer mehr Datenquellen und Anwendungen verknüpft, Datenaustausch, Analysen und maschinelles Lernen weben kontinuierlich das weltweite Datennetz immer größer und dichter. Wenn man sich dieser Tatsachen bewusst ist, muss man sich zwangsläufig um die Sicherheit der eigenen Services und Applikationen bemühen – kontinuierlich und intensiv.

  1. Warum werden Websites und Anwendungen gehackt?

Wenn es um die Motivation und Beweggründe für Hacking-Angriffe geht, ist die Bandbreite beachtlich groß. Viele Angriffe zielen auf die Erlangung von Kundendaten ab, die nicht erst durch verschärfte DSGVO-Richtlinien der jüngeren Vergangenheit für Nutzer und Plattform-Betreiber ausgesprochen schmerzhaft sein können. Andere Angriffe möchten hingegen vorrangig fremde Plattformen für heimlich eingeschleuste Werbung nutzen (in der Vergangenheit bspw. häufig für Cialis-Werbung) oder über den gekaperten Web-Server Spam-Mails versenden. Viele Hacker fühlen sich durch die reine Möglichkeit eines Hacks motiviert, professionalisierte Angreifer betreiben Wirtschaftsspionage oder schürfen Bitcoins. Was auch immer das konkrete Ziel ist, die Folgen sind meist gravierend.

2. Mögliche Folgen eines Hacks

In Abhängigkeit Ihres eigenen Geschäftsmodells können die Folgen eines erfolgreichen Hacker-Angriffs ärgerlich bis fatal sein – selbst wenn wir den großen Brocken „Wirtschaftsspionage“ außen vor lassen:

Eingeschleuster Viagra-Werbe-Müll sorgt unmittelbar nach außen für eine Verschlechterung Ihrer – teilweise mühsam erarbeiteten – Suchmaschinen-Sichtbarkeit.

Wenn personenbezogene Daten abhandenkommen, möglicherweise auch sensible Daten wie Gesundheits- oder Kreditkarten-Informationen Ihrer Kunden, müssen alle betroffenen Personen sowie die Datenprüfstelle informiert werden. Schäden gilt es so schnell wie möglich einzudämmen, meist müssen Anwendungen dazu (vorübergehend) abgeschaltet und ggf. aufwändig gesäubert und abgesichert werden. Durch all diese Umstände entstehen zum Teil hohe Kosten sowie Umsatz- und Imageverlust. Und wenn Sie nachweislich fahrlässig mit den Ihnen anvertrauten Daten umgegangen sind, droht nicht zuletzt auch ein juristisches Nachspiel.

Photo by KeepCoding on Unsplash

3. Typisches Vorgehen bei einem Hack

Das typische Vorgehen bei einem erfolgreichen Hacking-Angriff kann ebenfalls sehr vielfältig sein. Stellen Sie sich z. B. vor, der Angreifer hat nur Zugriff auf einen einzigen Link Ihrer einseitigen Website. Wenn Sie jedoch in der Finanz- oder Gesundheitsbranche tätig sind, der Link auf eine gefakte Folgeseite (auf einem Webserver des Angreifers) zeigt und dort Daten von den Nutzern abgeschöpft werden („Bitte geben Sie hier kurz Ihren Banking-Login ein“), wird selbst eine kleine Ursache große Wirkung haben.

Häufig sieht das typische Vorgehen etwa so aus:

  1. Ausnutzen einer Sicherheitslücke (oder mehrerer)
    Der Angreifer verschafft sich Zutritt zu Ihrem System. Das kann je nach Einfallstor das administrative Backend Ihrer Shop-Komponente sein, der lesende, schreibende und / oder ausführende Zugriff auf das Dateiverzeichnis Ihres Webservers oder Ihrer Datenbank.
  2. Platzierung von Schadcode
    Der Angreifer platziert den verursachenden Schadcode in Ihrer Anwendung oder auf Ihrem System. Das kann eine einzige Stelle sein oder hunderte kleine Fragmente, verteilt in den Untiefen Ihrer nun zugriffsgebenden IT-Landschaft.
  3. Verwischen von Spuren
    Angreifer sind meist sehr bewandert in allen möglichen Disziplinen zur Verwischung ihrer eigenen Spuren, die auf Ihrem System entstehen. Das führt direkt zum nächsten Schritt:
  4. Warten
    Ein wichtiger Punkt in der forensischen Analyse von Angriffspunkten sind Analysen der Log-Files –der gespeicherten Zugriffe auf Ihr System – also welcher Nutzer hat wann was gemacht? Da diese Daten mit der Zeit anwachsen und zum Teil in regelmäßigen Zeitintervallen auch aus DSGVO-Sicht anonymisiert werden müssen, gilt es für den Angreifer so lange zu warten, bis alle Spuren so weit wie möglich verschwunden sind – das können zum Teil Wochen und Monate sein.
  5. Aktiv werden
    Nun kann der Nutzer seinen Schadcode von außen ausführen, meist durch den Aufruf eines von ihm selbst platzierten Schad-Programms (siehe 2.). Selbst wenn der Schaden sofort auffällt, ist die Analyse wegen fehlender Analysedaten (siehe 4.) nun schwer und zeitintensiv. Außerdem nutzen Angreifer häufig Ihre platzierten Scripte, um die Punkte 2. und 3. In abgewandelter Form zu wiederholen.
Photo by rupixen.com on Unsplash

4. Gefahr erkannt, Gefahr gebannt – die wichtigsten Empfehlungen

  • Security by Design
    Bereits während der Softwareentwicklung sowie der Netzwerk- und Systemkonfiguration sollte das Thema Sicherheit mitgedacht und berücksichtigt werden. Die Auswahl von Drittanbieter-Systemen sollte das Thema mitberücksichtigen und als Auswahlkriterium weit oben stehen.
  • Access-Management
    Zugriffsmöglichkeiten für Personen bedeuten immer auch mögliche Einfallstore für böse Absichten. Daher gilt es, Zugriffsberechtigungen fachlich genau zu prüfen und mit Zugriffsrechten so sparsam wie möglich umzugehen. Legen Sie dort, wo sie unumgänglich sind, großen Wert auf sichere Passwörter und setzen Sie auf starke Authentifizierung.
  • Schwachstellen-Prüfung
    Überprüfen Sie regelmäßig und kontinuierlich ihre IT-Systeme auf Schwachstellen. Weitestgehend automatisierte Scans und Tests müssen unmittelbar priorisiert und berücksichtigt werden. Nicht zuletzt durch implementierte DevOps-Ansätze für schnelle und regelmäßige Release-Zyklen werden zentrale Code-Verwaltung mit Versionierung, Staging-Prozesse und automatisierte Tests unumgänglich. Überprüfen Sie auch immer wieder Ihre internen Prozesse dazu und bessern Sie kontinuierlich nach.
  • Patch-Management fest verankern
    Wie bei Ihrem Betriebssystem sollte auch bei Anwendungen das regelmäßige Updaten sehr ernst genommen werden. Nicht zuletzt im Open Source-Bereich mit großer Community und offenem Quellcode lassen sich Schwachstellen rekonstruieren und Informationen dazu leicht verbreiten. Bots, also weitestgehend automatisierbare Computerprogramme können sehr schnell verwundbare Systeme ausfindig machen und schädigen. Nehmen Sie daher das Patch-Management in die regelmäßigen Arbeiten mit auf.

Fazit:

Die Digitalisierung schreitet voran und bietet für Unternehmen wie Anwender ungeahnte Möglichkeiten – heute und auch zukünftig! Die kontinuierliche Berücksichtigung von Sicherheitsaspekten für Anwendungen und Systeme im Web gehört dabei jedoch nicht zur Kür, sondern ist absolutes Pflichtprogramm. Zu hoch ist der Preis, den man zahlt, wenn man das Thema nicht von Anfang an (Security by Design) berücksichtigt. Es muss fester Bestandteil über die gesamte Entwicklung hinweg (Code-Verwaltung, Staging, automatisierte Tests) sein und auch für den stabilen Betrieb einer Anwendung nachhaltig gelebt und kontinuierlich überprüft und verbessert werden.

Zum Autor:

Stefan Gillert ist Diplom-Informatiker, Web-Enthusiast der ersten Stunde und einer von drei Geschäftsführern bei rocket-media. Er verantwortet dort unter anderem die Bereiche DevOps und Betrieb. Er hat in seiner 20-jährigen Berufslaufbahn Projekte jeder Größe begleitet – anfangs als Entwickler, dann mehr und mehr als Berater und Entwicklungsleiter.

Bildquellen: Titelbild: rocket-media
Artikelbilder: Photo by KeepCoding on Unsplash; Photo by rupixen.com on Unsplash