Gib Hackern keine Chance – die Absicherung deiner Website

Lesedauer 5 Minuten

Stell dir vor, du betreibst eine Website. Vielleicht einen Blog, vielleicht auch einen kleinen Online-Shop. Menschen besuchen deine Web-Präsenz, lesen deine Texte oder kaufen deine Artikel. Vielleicht denkst du dir bei all dem: »Ach, meine Seite ist ja viel zu klein und zu unwichtig. Für Hacker bin ich ja uninteressant.«

Das stimmt leider nicht.

Daten sind das Gold des 21. Jahrhunderts. Ihre Herkunft spielt da keine Rolle. Ob persönliche Kundeninformationen aus einem großen Online-Banking-System oder dem kleinen Web-Shop aus der Nachbarschaft stammen, ist den Kriminellen egal. Sie schmuggeln sich zwischen Website und Besucher, um unverschlüsselte Datenströme mitzulesen oder zu manipulieren.

Viele Hacker-Angriffe erfolgen automatisiert auf eine große Anzahl von Seiten gleichzeitig. Ob eine bestimmte Seite nun zu den »Großen« gehört oder nicht, ist egal. Für die Kriminellen ist nur die Masse relevant: möglichst viele Seiten angreifen, je mehr, desto besser.

Aber vielleicht betreibst du auch nur einen kleinen Blog, bei dem du gar keine Daten sammelst. Nicht einmal die obligatorische Mail-Adresse zum Versenden eines Newsletters möchtest du wissen. Da könntest du dir ja denken: »Ach, damit werde ich für die Kriminellen uninteressant.«

Für manche davon vielleicht. Aber nicht für alle. Schon mal von Drive-By-Downloads gehört?

Die Grundlage dafür ist bösartiger Programmcode (Malware), der in deine Website eingeschleust wird. Optisch verändert sich nichts, für einen Besucher gibt es keinen sichtbaren Hinweis für eine Manipulation. Trotzdem lädt er sich plötzlich und unbemerkt Schadsoftware herunter, die auf seinem Rechner ausgeführt wird. Dies passiert völlig automatisch, kein einziger Klick ist dafür nötig. Der Besuch deiner Seite reicht, damit das Unheil seinen Lauf nehmen kann.

Solche eingeschleusten Skripte können aber noch mehr. So ist es möglich, dass sie die Besucher deiner Website unbemerkt auf eine von den Hackern kontrollierte Seite umleiten, um dort beispielsweise eine Phishing-Attacke zu starten.

Was dagegen tun?

Natürlich muss jeder Mensch, der einen Schritt ins World Wide Web macht, selbst für ein Mindestmaß an Sicherheit sorgen. Firewall, Virenschutz & Co sollten beim Surfen zur Grundausstattung gehören. Aber wenn du eine Website betreibst, liegt auch bei dir eine gewisse Verantwortung. Denn man muss es den Kriminellen ja nicht unnötig leicht machen.

Es gibt viele Möglichkeiten, deine Internet-Präsenz abzusichern. Einige davon werden nun vorgestellt.

Es sollte nicht nötig sein, aber …

Eigentlich sollte es überflüssig sein, darauf hinzuweisen, aber selbst im Jahr 2019 lautete, dem deutschen Hasso-Plattner-Institut zufolge, das beliebteste Passwort »123456«. Dass sich das in den letzten zwei Jahren wesentlich geändert hat, ist zu bezweifeln. Daher: Verwende ein sicheres Passwort!

Stell dir vor, du versiehst deine Wohnung mit einer Sicherheitstür. Die würdest du auch nicht mit einem Bindfaden sichern. Ähnliches gilt in der IT: Die besten und raffiniertesten Sicherheitsmaßnahmen sind wertlos, wenn sie dank eines unsicheren Passworts umgangen werden können.

Zum Thema Passwörter und Passwort-Manager gibt es einen eigenen Artikel.

Website Security Check

»First step in solving any problem is recognizing there is one« (Will McAvoy, The Newsroom, 2012 bis 2014)

Ein Website Security Check simuliert einen Hacker-Angriff auf deine Website. Dabei wird eine Unzahl an potentiellen Schwachstellen geprüft, die derzeit bekannt sind. Das Ergebnis ist eine Auflistung vieler Problemfelder, die du daraufhin gezielt beheben kannst.

Viele Anbieter führen so eine Prüfung kostenlos durch. Wenn du WordPress nutzt, kannst du etwa den WordPress Security Scan nutzen.

Aber auch ohne WordPress gibt es Möglichkeiten, deine Seite rasch und kostenlos prüfen zu lassen, etwa bei VirusTotal oder SIWECOS.

Natürlich bleibt die Technik nicht stehen, sondern schreitet stetig voran – dies gilt sowohl für die angebotenen Sicherheits-Lösungen als auch für die Verfahren der Kriminellen. Daher ist es sinnvoll, so einen Check in regelmäßigen Abständen zu wiederholen.

So viel wie nötig, so wenig wie möglich

Kaum jemand baut heutzutage seine Website von Grund auf selbst. Unzählige Baukästen oder Content Management Systeme wie WordPress (das, je nach Quelle, von bis zu 40 Prozent aller Webseiten genutzt wird), gehen dir dabei zur Hand.

Nutzern solcher Systeme stehen eine Unzahl an Themes oder Plug-ins zur Verfügung. Die Kehrseite der Medaille besteht darin, dass jedes davon eine potentielle Sicherheitslücke darstellt. Beachte daher unbedingt Folgendes:

  • Nutze nur Themes und Plug-ins, die aus sicheren und vertrauenswürdigen Quellen stammen.
  • Beschränke dich auf das, was du wirklich brauchst. Denn jede zusätzliche Komponente könnte ein zusätzlicher Angriffspunkt sein.

Updaten, aktualisieren, auf den neuesten Stand bringen

Wir kümmern uns natürlich um die Wartung deiner Webservers. Doch auch für deine Webseite selbst, kannst du einiges an Sicherheitsmaßnahmen umsetzen.
Machen wir uns nichts vor: Jede Software hat ein Ablaufdatum. Dies gilt für eine simple Textverarbeitung ebenso wie für den Webserver, auf dem du deine Seite hostest. Software auf dem letzten Stand zu halten, ist daher unbedingt nötig.

  • Veraltete Software setzt auf Sicherheitstechnologie, die neuen Angriffsmethoden vielleicht nicht mehr standhält.
  • Sicherheitslücken, die in neueren Versionen geschlossen wurden, bleiben in älterer Software offen, weil der Hersteller sie nicht mehr unterstützt und wartet.

Glücklicherweise ist eine Automatisierung von Updates möglich. Für viele CMS-Systeme gibt es Plug-ins, die das für dich erledigen. WordPress bietet hierfür etwa den »Easy-Update Manager« an.

Verschlüsselung: HTTPS statt http

Das HTTP-Protokoll (Hypertext Transfer Protocol) lässt Server und Client (also deine Webseite und den Browser ihrer Besucher) unverschlüsselt miteinander kommunizieren. Dies ermöglicht Man-in-the-Middle-Attacken: Kriminelle schalten sich dazwischen, um mitzulesen und zu manipulieren. Daher ist es besser, auf die verschlüsselte Kommunikation des HTTPS-Protokolls (Hypertext Transfer Protokoll Secure) zu setzen.

Dafür braucht es ein SSL-Zertifikat, das auf dem Server installiert werden muss. Manche Hosting-Dienstleister wie easyname bieten für ihre Kunden kostenlose Let’s Encrypt SSL-Zertifikate an. Sobald nun deine Webseite über »https://« läuft, erfolgt nicht nur die Verschlüsselung der Kommunikation, sondern es wird auch die Echtheit des Kommunikationspartners geprüft.

Theoretisch könnten Cyberkriminelle das immer noch umgehen, z. B. durch eine Downgrade-Attacke. Damit erreichen sie, dass die Kommunikation erst gar nicht verschlüsselt wird, sondern weiterhin über HTTP erfolgt.

Das lässt sich durch eine zusätzliche Sicherheitsstufe verhindern: HSTS (HTTPS Strict Transport Security). Diese Technologie stellt sicher, dass auf jeden Fall per HTTPS verschlüsselt wird. Der Browser deiner Besucher würde unverschlüsselte HTTP-Anfragen erst gar nicht mehr akzeptieren.

.htaccess

Hinter der Bezeichnung .htaccess verbirgt sich eine kleine Textdatei, die auf Apache-Servern eine große Rolle spielt. Dabei handelt es sich um eine Konfigurationsdatei, mit der sich die unterschiedlichsten Aspekte deiner Website steuern lassen.

Hinsichtlich der Sicherheit bietet sie die Möglichkeit, Verzeichnisse zu schützen, indem sie den Zugriff von bestimmten IP-Adressen oder ganzen Adress-Bereichen unterbindet. In Verbindung mit einer .htpasswd-Datei kannst du diese Verzeichnisse auch mit einem Passwort schützen.

Da in jedem Verzeichnis eine eigene .htaccess-Datei liegen kann, lassen sich unterschiedliche Regeln definieren, die dann nur für das jeweilige Verzeichnis (bzw. dessen Unterverzeichnisse) gelten.

Security by Obscurity

Das Konzept Security by Obscurity (engl. für »Sicherheit durch Unklarheit«) ist in seiner Gesamtheit nicht unumstritten. In der Verschlüsselungstechnik mögen bestimmte Kritikpunkte durchaus ihre Berechtigung haben. Im Falle der Absicherung einer Website gibt es jedoch einzelne Punkte, bei denen es sinnvoll ist, auf dieses Konzept zurückzugreifen.

Bei WordPress etwa erfolgt der Login standardmäßig, indem an die URL der Seite »/wp-login.php« angehängt wird. Kombiniert mit einem Standard-Benutzernamen für den Admin-Zugang (etwa »admin« oder »administrator«) ist der Weg frei für einen skriptgesteuerten Brute-Force-Angriff: Deine Seite wäre nur eine von zehntausenden, die gleichzeitig attackiert werden.  

Eigene Plug-Ins machen es möglich, eine individuelle Login-Seite zu generieren, welche die Hacker erst finden müssen. Darüber hinaus spricht auch nichts dagegen, auf einen Benutzer »admin« zu verzichten. Warum nicht mal den Benutzernamen »Oma-im-Apfelbaum« mit Administrator-Rechten versehen?

Natürlich nur in Kombination mit einem sicheren Passwort.

Fazit

Sicherheit im Internet beginnt nicht erst im Computer der Menschen, die deine Website besuchen. Auch du hast es in der Hand, für deine und ihre Sicherheit zu sorgen. Sie werden es dir danken.

Günter Gerstbrein

Günter Gerstbrein, Jahrgang 1977, studierte technische Mathematik an der TU Wien und war etwa 13 Jahre in der Software-Entwicklung tätig. Als „Texter, der aus der Technik kam“ ist es sein Ziel, komplizierte Sachverhalte leicht verständlich und ohne viel Techno-Babble zu vermitteln.

Gerstbrein textet