Was ist ein Clickjacking-Angriff und wie können Sie Ihre WordPress-Website schützen?

[aioseo_eeat_author_tooltip]
[aioseo_eeat_reviewer_tooltip]
Was ist ein Clickjacking-Angriff und wie können Sie Ihre WordPress-Website schützen?

Das Internet basiert auf Vertrauen. Wenn ein Nutzer eine Webseite besucht, geht er davon aus, dass die angeklickten Schaltflächen die entsprechenden Aktionen ausführen. Cyberkriminelle entwickeln jedoch ständig Methoden, dieses Vertrauen auszunutzen. Eine dieser betrügerischen Methoden ist der Clickjacking-Angriff.

Clickjacking liegt vor, wenn ein Angreifer einen Benutzer dazu verleitet, auf etwas anderes zu klicken als das, worauf der Benutzer eigentlich klicken wollte.

Durch das Überlagern einer legitimen Webseite mit einer transparenten Ebene oder einem unsichtbaren iFrame können Hacker Klicks abfangen, die eigentlich für einen harmlosen Button oder Link bestimmt sind. Dies kann schwerwiegende Folgen haben, wie das Herunterladen von Schadsoftware, die Überweisung von Geld oder das unwissentliche Liken einer Social-Media-Seite.

Für Website-Betreiber ist es unerlässlich, diese Bedrohung zu verstehen. Dieser Leitfaden erläutert die Funktionsweise dieser UI-Redressing-Technik, wie man Sicherheitslücken erkenntund welche konkreten Schritte erforderlich sind, um Ihre WordPress-Website mithilfe des X-Frame-Options-Headers und der Content Security Policy (CSP) zu sichern.

Clickjacking-Angriffe verstehen: Die Risiken der UI-Anpassung

Der Begriff „Clickjacking“ ist ein Kofferwort aus „Click“ und „Hijacking“. In Sicherheitskreisen ist es offiziell als UI-Redressing-Angriff bekannt.

Dieser Name beschreibt den Mechanismus perfekt: Der Angreifer verändert die Benutzeroberfläche (UI), um die eigentliche Zielwebsite zu verbergen.

Bei einem typischen Clickjacking-Angriff erstellt der Angreifer eine manipulierte Webseite. Diese Webseite lädt eine Zielseite, typischerweise eine sensible Seite wie ein Bank-Login oder ein Einstellungsmenü, in einem iFrame.

Der Angreifer stellt den iFrame auf vollständige Transparenz ein. Anschließend platziert er seine eigenen sichtbaren Inhalte, wie beispielsweise einen Videoplayer oder eine Aufforderung zur Teilnahme an einem Gewinnspiel, direkt unter oder über dem unsichtbaren Frame.

Der Nutzer klickt auf einen vermeintlichen „Spielen“-Button oder einen Link zum „Gewinn einfordern“. Tatsächlich klickt er auf eine unsichtbare Seite, die von einer anderen Quelle geladen wird.

Da der Computer und Browser des Nutzers noch die Session- Cookies für die Zielseite speichern, wird die Aktion sofort authentifiziert und verarbeitet. Der Nutzer ahnt nicht, dass er gerade eine riskante Aktion ausgeführt hat.

Dieser Angriff nutzt die Möglichkeit des Webs aus, Inhalte in Frames einzubetten. Während Framing für das Einbetten von Karten oder Videos zulässig ist, wird es gefährlich, wenn eine Webseite nicht explizit einschränkt, wer sie einbetten darf.

Ohne angemessene Kontrolle kann jede Website Opfer von UI-Redressing werden.

Weiterlesen: Die wahren Kosten von WordPress-Sicherheitsfehlern

Sichern Sie Ihre WordPress-Website, bevor Angreifer zuschlagen

Schützen Sie Ihre Website vor Clickjacking und anderen Bedrohungen mit den professionellen Website-Betreuungsdiensten von Seahawk.

Wie funktionieren Clickjacking-Angriffe mithilfe unsichtbarer iFrames und Overlays?

Um die Gefahr vollständig zu erfassen, müssen wir uns die technische Umsetzung ansehen. Der Kern eines Clickjacking-Angriffs beruht auf der Ausnutzung der CSS-Eigenschaft `opacity`.

Ein Angreifer erstellt eine Köderseite. Diese Seite dient als Lockvogel. Auf dieser Seite lädt der Angreifer mithilfe von HTML die Webseite des Opfers in einem iFrame.

Der Code mag harmlos aussehen, doch das CSS erzählt eine andere Geschichte. Der Angreifer setzt die Deckkraft des iFrames auf 0,0. Dadurch wird der iFrame unsichtbar.

Obwohl der eingebettete Inhalt technisch vorhanden ist, kann der Nutzer ihn nicht sehen. Der Angreifer positioniert diese unsichtbare Ebene dann präzise über einem sichtbaren Button auf seiner gefälschten Website.

Stellen Sie sich beispielsweise vor, ein Angreifer möchte Sie zur Löschung Ihres Blogs zwingen. Er lädt die Seite „Konto löschen“ Ihres Blogs in einem unsichtbaren iFrame. Auf seiner manipulierten Website platziert er den unsichtbaren „Löschen“-Button direkt über einem sichtbaren „Gewinnen Sie einen Preis“-Button.

Wenn der Nutzer auf die Schaltfläche „Gewinnen“ klickt, durchläuft das Klickereignis die sichtbaren Elemente und trifft das obere Fenster des unsichtbaren Rahmens. Der Browser interpretiert dies als legitimen Klick auf die Schaltfläche „Löschen“. Da der Nutzer wahrscheinlich im selben Browser angemeldet ist, wird der Befehl sofort und unbemerkt ausgeführt.

Diese Methode ermöglicht es Angreifern, in einigen Fällen CSRF-Token (Cross-Site Request Forgery) zu umgehen, da der Browser die Anfrage so sendet, als ob der Benutzer den Button auf der legitimen Seite physisch angeklickt hätte.

Weiterführende Informationen: Wie Sie Ihre Website effektiv mit Malware-Schutz sichern

Hauptarten von Clickjacking-Angriffen und gängige Varianten

Während das einfache Overlay die gängigste Methode ist, gibt es verschiedene Varianten des Clickjackings, die darauf abzielen, bestimmte Verhaltensweisen oder Sicherheitslücken im Browser auszunutzen.

Arten von Clickjacking-Angriffen

Likejacking: Ausnutzung von Interaktionen in sozialen Medien

Likejacking ist eine spezielle Form des Clickjackings, die auf soziale Netzwerke abzielt. Der Angreifer versucht, den Nutzer ohne dessen Zustimmung dazu zu bringen, eine Seite zu „liken“ oder zu „teilen“.

In diesem Szenario enthält der unsichtbare iFrame einen von Facebook oder einen von Twitter . Der Angreifer platziert diese transparente Ebene über einem Video oder einem Bild auf einer manipulierten Webseite.

Beim Versuch, das Video abzuspielen, „likt“ der Nutzer ungewollt die Seite des Angreifers. Dies erhöht die Glaubwürdigkeit schädlicher Seiten in den sozialen Medien und erleichtert die Verbreitung von Spam oder Betrugsversuchen an die Freunde des Nutzers.

Nested Clickjacking und X-Frame-Options-Schwachstellen

Nested Clickjacking zielt auf Webseiten ab, die Frame-Busting-Skripte verwenden, diese aber nicht korrekt implementieren. Einige ältere Browser oder bestimmte Konfigurationen ermöglichen es Angreifern, diese Skripte zu blockieren.

Bei dieser Variante bettet der Angreifer den Ziel-iFrame in zwei verschiedene Frames ein. Indem er die Art und Weise manipuliert, wie der Browser die Fensterposition und Navigation handhabt, verhindert der Angreifer, dass die legitime Website aus dem Frame herausgeführt wird.

Dies verdeutlicht, warum es keine bewährte Vorgehensweise ist, sich ausschließlich auf clientseitige Skripte zu verlassen; robuste serverseitige Header sind erforderlich.

Weiterführende Informationen: Verhinderung von Brute-Force-Angriffen auf WordPress-Websites

CursorJacking, MouseJack und andere Täuschungstechniken

Cursorjacking ist eine besonders trügerische Variante. Hierbei ersetzt der Angreifer den echten Mauszeiger durch einen gefälschten, selbst erstellten Cursor. Mithilfe von CSS und JavaScript verschiebt er den echten Cursor gegenüber dem gefälschten.

Der Benutzer nimmt an, dass sich sein Mauszeiger über einem sicheren Link befindet. Tatsächlich befindet sich der Cursor (der unsichtbar oder verschoben sein kann) jedoch über einem schädlichen Element. Beim Klick wird die Aktion an der Position des tatsächlichen Cursors ausgeführt, nicht an der sichtbaren, falschen Position.

Andere Techniken beinhalten ähnliche Verfahren, bei denen der unsichtbare Rahmen schnell bewegt wird, um die Maus zu verfolgen (MouseJack), wodurch sichergestellt wird, dass sich die schädliche Schaltfläche immer unter dem Cursor befindet, unabhängig davon, wohin der Benutzer ihn bewegt.

Mehr erfahren: Virtuelles Patchen in WordPress: Wie es funktioniert und warum es wichtig ist

Wie erkennt man Clickjacking-Schwachstellen auf seinen Webseiten?

Bevor Sie Clickjacking verhindern können, müssen Sie überprüfen, ob Ihre Website anfällig ist. Glücklicherweise ist die Überprüfung auf diese Schwachstelle unkompliziert.

Die erste Überprüfung besteht darin, festzustellen, ob Ihre Webseite in einem iFrame auf einer anderen Domain geladen werden kann. Dies können Sie tun, indem Sie eine einfache HTML-Datei auf Ihrem lokalen Rechner erstellen:

<html> <body> <iframe src="https://yourwebsite.com" width="500" height="500"></iframe> </body> </html>

Öffnen Sie diese Datei in einem modernen Browser wie Chrome oder Firefox. Wenn Ihre Website innerhalb des Fensters erfolgreich geladen wird, sind Sie anfällig für Clickjacking.

Eine sichere Website sollte die Verbindung verweigern oder eine leere Seite anzeigen, was darauf hinweist, dass der Browser den eingebetteten Inhalt blockiert hat.

Sie können auch Online-Sicherheitsscanner oder Browser-Add-ons für Penetrationstests verwenden. Diese Tools analysieren den HTTP-Antwortheader Ihrer Website.

Sie suchen insbesondere nach dem Fehlen des X-Frame-Options-Headers oder des Content Security Policy-Headers. Fehlen diese Header, stuft das Tool Ihre Website als risikoreich ein.

Serverseitige Verhinderung: Verwendung von X-Frame-Options zur Einschränkung der Frame-Erkennung

Die traditionellste und am weitesten verbreitete Schutzmaßnahme gegen Clickjacking ist der X-Frame-Options-Header (XFO-Header). Dieser Antwortheader wird vom Webserver gesendet und teilt dem Browser mit, ob eine Seite in einem bestimmten Fenster gerendert werden darf.<frame> ,<iframe> ,<embed> , oder<object> Die.

Serverseitige Prävention

Wenn ein Browser eine Seite lädt, prüft er diesen Header. Wird die Richtlinie verletzt, gewährleistet der Browser die Sicherheit des Nutzers, indem er den Inhalt nicht anzeigt.

Es gibt drei typische Werte, die mit dem X-Frame-Options-Header verwendet werden:

  • VERWEIGERN: Dies ist die strengste Einstellung. Sie verhindert, dass eine Domain die angeforderte Seite in einem Frame anzeigt. Selbst wenn die Seite versucht, sich selbst in einem Frame anzuzeigen, schlägt dies fehl. Diese Einstellung ist ideal für sensible Seiten, die niemals eingebettet werden müssen.
  • SAMEORIGIN: Diese Einstellung ermöglicht es, dass die Seite nur von Seiten mit exakt demselben Ursprung (gleiche Domain, gleiches Protokoll und gleicher Port) eingebunden wird. Dies ist die gängigste Methode zur Absicherung von WordPress-Websites, da sie das Einbetten eigener Inhalte bei gleichzeitigem Schutz vor externen Angreifern erlaubt.
  • ALLOW-FROM uri: Diese Direktive ist veraltet und sollte das Einbetten von Inhalten von einer bestimmten URI ermöglichen. Sie wird jedoch von vielen modernen Browsern nicht unterstützt und sollte zugunsten neuerer Standards vermieden werden.

Die Einstellung von X-Frame-Options auf SAMEORIGIN reicht oft aus, um die überwiegende Mehrheit der Clickjacking-Angriffe zu stoppen. Dadurch wird sichergestellt, dass ein Angreifer Ihre Anmeldeseite nicht auf seiner Köderseite laden kann.

XFO hat jedoch seine Grenzen. Es erlaubt effektiv nur eine Domain (dieselbe Domain) oder gar keine. Es mangelt an Granularität, wenn Sie mehreren spezifischen Partnern die Einbettung Ihrer Inhalte ermöglichen möchten. Dafür benötigen wir eine modernere Lösung.

Mehr erfahren: So erstellen Sie eine passwortgeschützte Seite in WordPress

Erweiterter Schutz: Content Security Policy (CSP) und Frame-Vorfahren

X-Frame-Options ist zwar wirksam, doch die Content Security Policy (CSP) ist die Zukunft des Clickjacking-Schutzes. CSP ist eine Sicherheitsebene, die hilft, verschiedene Angriffsarten zu erkennen und abzuwehren, darunter Cross-Site-Scripting (XSS) und Dateneinschleusung.

Um Clickjacking zu verhindern, verwenden wir die Direktive `frame-ancestors`. Diese Direktive legt die übergeordneten Frames fest, die eine Seite einbetten dürfen.

Implementierung der Frame-Ancestors-Direktive zur granularen Steuerung

Die Direktive frame-ancestors bietet deutlich mehr Flexibilität als X-Frame-Options. Sie ermöglicht es Ihnen, eine Liste von Domains zu definieren, die Ihre Inhalte einrahmen dürfen.

Ein Content Security Policy (CSP)-Header könnte beispielsweise so aussehen:

Content-Security-Policy: frame-ancestors 'self' https://trusted-partner.com;

In diesem Beispiel:

  • 'self' verhält sich wie die SAMEORIGIN XFO-Direktive und ermöglicht es, dass dieselbe Domain den Inhalt einrahmt.
  • https://trusted-partner.com ermöglicht es einer bestimmten externen Website, Inhalte in Frames einzubetten.

Sie können auch Platzhalter verwenden oder alle HTTPS -Schemas mit `allow from https` zulassen, wobei die strikte Auflistung sicherer ist. Diese detaillierte Kontrolle ist für Unternehmenswebsites, die auf seitenübergreifende Integrationen angewiesen sind, unerlässlich.

Warum sind CSP Frame-Ancestors Frame-Busting-Skripten überlegen?

Früher verwendeten Entwickler JavaScript -Code zum Ausbrechen aus dem Frame. Diese Skripte liefen clientseitig und prüften, ob die Position des oberen Fensterbereichs mit der aktuellen Fensterposition übereinstimmte. Falls nicht, versuchten sie, den Frame zu verlassen.

Angreifer fanden schnell Wege, diese Skripte zu neutralisieren. Browser wie Internet Explorer (in älteren Versionen) oder Funktionen wie das HTML5-Sandbox-Attribut für iFrames konnten die Ausführung des Frame-Busting-Skripts blockieren und die Verteidigung somit wirkungslos machen.

Frame-Vorfahren und X-Frame-Options sind serverseitige Steuerelemente. Der Angreifer kann sie nicht deaktivieren, da der Browser die Regel vor dem Rendern des Inhalts durchsetzt. Der Browser liest den Antwortheader und verweigert schlichtweg die Anzeige des schädlichen Seitenelements.

Die Verwendung von CSP-Frame-Vorfahren ist derzeit die beste Vorgehensweise, da sie in modernen Browsern standardisiert ist. Obwohl X-Frame-Options für ältere Browser weiterhin hilfreich sind, haben Frame-Vorfahren in Browsern, die beides unterstützen, Vorrang.

Schritt für Schritt: So schützen Sie Ihre WordPress-Website vor Clickjacking

Um eine WordPress-Website abzusichern, müssen die korrekten Header hinzugefügt werden. Sie benötigen keine Entwicklerkenntnisse, um diese Änderungen vorzunehmen. Es wird jedoch dringend empfohlen, vor der Bearbeitung von Serverdateien stets ein Backup Ihrer Website zu erstellen.

Website-Wartung für maximale Sichtbarkeit

Schritt 1: Header in .htaccess oder functions.php konfigurieren

Wenn Ihre WordPress-Website auf einem Apache-Webserver läuft, können Sie die .htaccess-Datei in Ihrem Stammverzeichnis bearbeiten.

Um den X-Frame-Options-Header zu implementieren, fügen Sie diese Zeile hinzu:

<IfModule mod_headers.c>Header always append X-Frame-Options SAMEORIGIN</IfModule>

Um die Content Security Policy mit Frame-Vorfahren zu implementieren:

<IfModule mod_headers.c>Header always append Content-Security-Policy "frame-ancestors 'self';"</IfModule>

Diese Konfiguration stellt sicher, dass nur Ihre eigene Website Ihre Seiten einbetten kann. Um einem Partner dies zu ermöglichen, fügen Sie einfach dessen URL nach „self“ hinzu.

Alternativ können Sie Header über die functions.php-Datei Ihres aktiven WordPress-Themes hinzufügen. Diese Methode funktioniert unabhängig vom Servertyp (Apache oder Nginx), solange PHP die Header verarbeiten kann.

function add_security_headers() { header('X-Frame-Options: SAMEORIGIN'); header("Content-Security-Policy: frame-ancestors 'self';"); } add_action('send_headers', 'add_security_headers');

Dieser Code hakt sich in den WordPress-Header-Generierungsprozess und fügt die Schutzanweisungen für jede ausgelieferte Webseite ein.

Schritt 2: WordPress-Sicherheits-Plugins für clientseitigen Schutz nutzen

Wenn Ihnen die Codebearbeitung zu riskant erscheint, können Sie WordPress-Sicherheits-Plugins verwenden. Viele umfassende Sicherheitspakete fügen diese Header automatisch hinzu.

  • All-In-One Security (AIOS): Dieses Plugin bietet spezielle Einstellungen zum Schutz von iFrames. Sie können „Unzulässige Anfragen ablehnen“ aktivieren und spezifische Firewall-Regeln festlegen, die häufig die Verwaltung von Frame-Optionen umfassen.
  • Headers Security Advanced & HSTS WP: Dieses spezielle Plugin ermöglicht die Konfiguration bestimmter HTTP-Header ohne Codeänderungen. Wählen Sie dazu im Dropdown-Menü „X-Frame-Options“ aus und stellen Sie den Wert auf „SAMEORIGIN“.

Plugins sind zwar praktisch, aber achten Sie darauf, dass sie den Antwortheader korrekt konfigurieren.

Manche Plugins fügen möglicherweise nur Meta-Tags, die für Frame-Vorfahren weniger effektiv sind (CSP über Meta-Tags unterstützt keine Frame-Vorfahren). Überprüfen Sie das Ergebnis daher immer mit einem Online-Header-Checker.

Abschluss

Die Gefahr des Clickjackings besteht weiterhin, da es die visuelle Wahrnehmung des Nutzers ausnutzt und nicht einen Softwarefehler. Solange Browser iFrames unterstützen, werden Angreifer versuchen, die Benutzeroberfläche zu manipulieren.

Für Website-Betreiber bedeutet das Ignorieren dieser Sicherheitslücke, die Sicherheit ihrer Nutzer und den Ruf ihrer Website zu gefährden. Ein Nutzer, der aufgrund eines Buttons auf Ihrer Website Schadsoftware herunterlädt oder Geld verliert, verliert das Vertrauen in Ihre Marke.

Die Lösung ist ein mehrschichtiges Verteidigungssystem.

  • Überprüfung: Scannen Sie regelmäßig Ihre Webseiten, um festzustellen, ob sie sich für die Einbettung in Frames eignen.
  • Implementieren Sie XFO: Verwenden Sie den X-Frame-Options-Header mit dem Wert SAMEORIGIN, um Benutzer älterer Browser und anderer Browser zu schützen, die CSP möglicherweise nicht vollständig unterstützen.
  • Implementieren Sie CSP: Nutzen Sie die Direktive „frame-ancestors“ der Content Security Policy für eine robuste und detaillierte Kontrolle in modernen Browsern.
  • Überwachung: Verwenden Sie Sicherheits-Plugins, um sicherzustellen, dass die Header nach Theme- oder Serveraktualisierungen aktiv bleiben.

Indem Sie die Darstellung Ihrer Inhalte kontrollieren, beseitigen Sie effektiv die unsichtbaren Schutzmechanismen, auf die Hacker setzen. Sie stellen sicher, dass Nutzer mit einem Klick die beabsichtigten Aktionen ausführen und schützen sie so vor einer der tückischsten Angriffsarten im Internet.

Häufig gestellte Fragen zu Clickjacking-Angriffen

Welche Methode wird am häufigsten bei Clickjacking-Angriffen eingesetzt?

Die gängigste Methode besteht darin, versteckte Ebenen über eine legitime Webseite zu legen. Angreifer erstellen unsichtbare iFrames, die Benutzer dazu verleiten, auf nicht sichtbare Elemente zu klicken. Diese versteckten Ebenen ermöglichen es Angreifern, Aktionen auszulösen, ohne dass der Benutzer dies bemerkt, und so möglicherweise Zugriff auf sensible Funktionen zu erlangen.

Wie helfen Same-Origin X Frame Options dabei, Clickjacking zu verhindern?

Same-Origin X-Frame-Options ist ein Antwortheader, der es ermöglicht, dass eine Seite nur von Seiten derselben Ursprungsdomain in Frames eingebettet wird. Dies verhindert, dass externe Domains Ihre Website in schädliche Frames einbetten und trägt dazu bei, unautorisierte Interaktionen zu blockieren.

Was ist die Frame-Vorfahren-Richtlinie in der Content Security Policy?

Die Frame-Ancestrales-Richtlinie definiert, welche Domains Ihre Webseiten einbetten dürfen. Sie ist Teil der Content Security Policy (CSP) und bietet mehr Kontrolle als ältere Header. Diese Richtlinie ist äußerst wirksam bei der Verhinderung von Clickjacking-Angriffen.

Können Clickjacking-Angriffe Angreifern Zugriff auf Benutzerkonten ermöglichen?

Ja, Clickjacking kann Angreifern indirekt Zugang zu Konten verschaffen. Indem sie Schaltflächen und Aktionen verschleiern, können Angreifer Benutzer dazu verleiten, Einstellungen zu ändern, Berechtigungen zu erteilen oder Formulare ohne deren Wissen abzusenden.

Wie lässt sich Clickjacking auf einer WordPress-Website am besten verhindern?

Der effektivste Schutz vor Clickjacking besteht in der Kombination mehrerer Sicherheitsmaßnahmen. Setzen Sie den X-Frame-Options-Antwortheader, wenden Sie eine Frame-Ancestors-Richtlinie an und halten Sie die WordPress-Sicherheits-Plugins aktiviert. Durch die Kombination dieser Maßnahmen werden Angriffe direkt an der Quelle blockiert.

Ähnliche Beiträge

Die besten HIPAA-konformen WordPress-Plugins für mehr Website-Sicherheit

Die besten HIPAA-konformen WordPress-Plugins für mehr Website-Sicherheit

HIPAA-konforme WordPress-Plugins helfen Webseiten im Gesundheitswesen dabei, sensible Patientendaten zu schützen, die Webseitensicherheit zu verbessern und die Kosten zu senken

WooCommerce-Kosten für wachsende Online-Shops verstehen

WooCommerce-Kosten für wachsende Online-Shops verstehen

Die Kosten für WooCommerce steigen schnell an, da Online-Shops wachsen und bessere Leistung, Sicherheit, Plugins und Hosting benötigen

WordPress für Interessenvertretungs- und Politikorganisationen

WordPress für Interessenvertretungs- und Politikorganisationen: Bewährte Praktiken für Wachstum und Engagement

Was ist WordPress für Interessenvertretungs- und Politikorganisationen? WordPress für Interessenvertretungs- und Politikorganisationen bezieht sich auf

Legen Sie los mit Seahawk

Melde dich in unserer App an, um unsere Preise einzusehen und Rabatte zu erhalten.