Schützen Sie die E-Mail-Adresse Ihrer Website vor Spam
Die Veröffentlichung einer E-Mail-Adresse ist für alle Website-Betreiberinnen und -Betreiber ein Muss, birgt jedoch die Gefahr, Opfer von Spam-Attacken zu werden. Wie lassen sich ungewünschte Zugriffe von Spambots auf die Mail-Adressen beschränken, ohne dabei die Informationspflichten gemäß DSGVO zu verletzen? Wir stellen die beliebtesten Methoden vor und erläutern deren Vor- und Nachteile.
E-Mail-Harvesting: So gehen Spambots auf Beutefang
Unter E-Mail-Harvesting (deutsch: E-Mail-Ernte) versteht man die automatisierte Beschaffung von Mail-Adressen für unlautere Werbezwecke, Phishing-Attacken oder die Verbreitung von Schadsoftware. Spezialisierte Programme, sogenannte E-Mail-Harvester, durchsuchen Webseiten, Mailinglisten, Foren oder Social-Media-Plattformen zu diesem Zweck nach E-Mail-Adressen. Hinweise auf die begehrten Kontaktinformationen liefert die charakteristische Syntax, der alle E-Mail-Adressen entsprechen – beispielsweise das @-Zeichen. Raffiniertere Spambots beziehen zudem gängige Alternativschreibweisen wie [at], [AT], (at) oder (AT) in die Suche ein.
Noch „verräterischer“ als das @-Zeichen ist der HTML-E-Mail-Verweis nach dem Schema mailto:user@domain.de
. Dieser ermöglicht es Webseitenbesucherinnen und -besuchern, durch einen Mausklick ihr bevorzugtes E-Mail-Programm zu öffnen. Webseitenbetreiberinnen und -betreiber sind daher gut beraten, klassische Muster bei der Bereitstellung der elektronischen Kontaktmöglichkeit zu durchbrechen.
- Schreiben Sie perfekte E-Mails auf Wunsch mit KI-Funktionen
- Sicher: Schutz vor Viren und Spam
- Inklusive: eigene Domain
Klassische Darstellung der E-Mail-Adresse ohne Schutz
Um eine E-Mail-Adresse optimal vor dem automatischen Auslesen durch E-Mail-Harvester schützen zu können, muss man sich vergegenwärtigen, wie diese üblicherweise in eine Webseite integriert wird. Eine einfache barrierefreie Darstellung der elektronischen Kontaktadresse lässt sich mit folgendem Codebeispiel in jede beliebige HTML-Seite einfügen:
<p>Bei Fragen und Anregungen schreiben Sie eine E-Mail an:
<a href="mailto:user@domain.de">user@domain.de</a>.
</p>
htmlAus Nutzersicht ist dies eine ideale Darstellung der E-Mail-Adresse im Netz. Damit die Nutzerfreundlichkeit dieser Darstellungsform erhalten bleibt, zielen die beliebtesten Methoden, eine E-Mail-Adresse geschützt darzustellen, darauf ab, diese im Quelltext unkenntlich zu machen, ohne dabei die Ansicht im Browser zu verändern. Alternativ besteht die Möglichkeit, die E-Mail-Adresse von der eigentlichen Website zu separieren und mit einem serverseitigen Redirect auf den mailto
-Verweis weiterzuleiten.
Mit E-Mail-Hosting “Professionelles E-Mail-Hosting von IONOS) von IONOS kommunizieren Sie professionell, sicher und preisgünstig. Nutzen Sie personalisierte E-Mail-Adressen mit eigener Domain, jederzeit flexiblen Zugriff auf Ihre Mails, Archivierungsfunktion, Kalender- und Office-Lösung und vieles mehr. Verlassen Sie sich auf höchste Sicherheitsstandards in den ISO-zertifizierten IONOS Rechenzentren.
Methode 1: CAPTCHAs
CAPTCHAs bieten die Möglichkeit, die E-Mail-Adresse einer Website vor Spam zu schützen. Dabei werden verschlüsselte E-Mail-Adressen erst in Klartext angezeigt, wenn sich Nutzer und Nutzerinnen durch eine Prüfung als menschlich ausgewiesen haben. Diese Prüfungen können Aufgaben wie das Abtippen einer Buchstaben- oder Zahlenkombination beinhalten. Auch kurze Rechenaufgaben, Kombinationsübungen oder Puzzles sind möglich.
Einen kostenlosen CAPTCHA-Service bietet beispielsweise Google mit reCAPCHA.
CAPTCHAs bieten einen vergleichsweise hohen Schutz vor Spam, da E-Mail-Adressen in diesem Fall gar nicht oder nur verschlüsselt im Quellcode angezeigt werden. Durch umfangreiche Gestaltungsmöglichkeiten fügen sich CAPTCHAs inzwischen zudem gut in das Design einer Website ein. Der zusätzliche Aufwand, der erforderlich ist, um an die E-Mail-Adresse zu gelangen, wirkt sich jedoch negativ auf die Nutzerfreundlichkeit der Website aus und steht der Forderung nach einem barrierefreien Zugang zu wichtigen Kontaktinformationen entgegen.
Methode 2: Ersetzung der E-Mail-Adresse
Schutzstrategien, die auf Ersetzung basieren, tilgen die gesamte E-Mail-Adresse aus dem Quelltext und ersetzen diese entweder durch eine grafische Darstellung oder einen Weiterleitungslink auf den mailto
-Verweis.
E-Mail-Adresse als Grafik einbinden
Wird eine E-Mail-Adresse als Grafik eingebunden, bleibt diese zwar für das menschliche Auge lesbar, für E-Mail-Harvester sind Texte als Grafik aber nur schwer zu erkennen. Mit dem Einbinden von entsprechenden Kontaktinformationen als Grafik können Sie die E-Mail-Adresse auf Ihrer Website daher vergleichsweise gut vor Spam schützen. Der passende HTML-Code sieht beispielsweise wie folgt aus:
<img src="Pfad/grafikdatei.png" with="120" height="20" alt="Bei Fragen und Anregungen schreiben Sie eine E-Mail an: user@domain.de">
htmlDiese E-Mail-Darstellung ist für die meisten Menschen lesbar. Der Text lässt sich jedoch weder kopieren noch mit einem mailto
-Verweis verlinken. Für einen Großteil der Nutzer und Nutzerinnen ist das erforderliche Abtippen der Adresse zumindest mühsam. Menschen mit Sehbehinderung können die Adresse sogar nur mithilfe entsprechender Angaben im alt-Attribut erfassen. Diese lassen sich mithilfe von Screenreadern auslesen – stehen somit jedoch auch Spambots zur Verfügung. Aus diesem Grund ist die Methode allein als Präventionsmaßnahme gegen Spam nicht zu empfehlen.
Es gibt vereinzelt durchaus Spambots, die Bildelemente mittels OCR (Optical Character Recognition) auf Textelemente untersuchen können, doch bilden diese eine absolute Minderheit.
HTML-E-Mail-Verweis per Redirect
Sie können die E-Mail-Adresse auch geschützt darstellen, indem Sie diese von der Website separieren. Typischerweise kommt hierfür ein Skript zum Einsatz, das nach einem Klick auf einen Link auf den mailto
-Verweis weiterleitet. Dieser öffnet das E-Mail-Programm der Nutzerin bzw. des Nutzers und gibt dort die Adresse aus. Für Spambots, die den Quellcode einer Website scannen, sieht ein solcher Link wie ein Verweis auf eine Datei aus. Umsetzen lässt sich dieser Schutzmechanismus zum Beispiel als Link auf eine PHP-Datei, die den Redirect beinhaltet:
<p>Bei Fragen und Anregungen schreiben Sie uns eine
<a href="redirect-mailto.php">E-Mail</a>.
</p>
htmlDer Inhalt der Datei redirect-mailto.php
ist ein Skript, das auf den eigentlichen mailto
-Verweis per Redirect umleitet:
<?php
header("Location: mailto:user@domain.de");
?>
htmlDer Nachteil dieser Lösung zur Spamprävention ist, dass User einen Handler für mailto: benötigen, um an die E-Mail-Adresse zu gelangen. In der Praxis ist das in der Regel ein E-Mail-Programm wie Outlook oder Thunderbird. Auf neueren Browsern lassen sich als Handler jedoch auch Webmailer eintragen.
Methode 3: Maskierung der E-Mail-Adresse
Soll eine E-Mail-Adresse nicht komplett durch eine Grafik oder einen Link auf den mailto-Verweis ersetzt werden, bieten sich alternativ Strategien an, die es ermöglichen, die E-Mail-Adresse zu verschlüsseln bzw. zu maskieren.
Maskierung durch Zeichencodierung
Gängige Zeichencodierungen, die bei der Maskierung von E-Mail-Adressen im Quelltext zum Einsatz kommen, stützen sich auf HTML-Entities und HEX-Code. Für E-Mail-Adressen bietet sich diese Art der Codierung an, da die jeweiligen Referenzzeichen in der Browseransicht automatisch übersetzt werden.
Sollen die charakteristischen Zeichen der E-Mail-Adresse user@domain.de
mit Hilfe von HTML-Entities maskiert werden, werden diese zunächst in die alternative Schreibweise übertragen:
@ = @ . = . (Punkt)
In die E-Mail-Adresse eingefügt ergibt sich dann folgende Darstellung im Quellcode:
<p>Bei Fragen und Anregungen schreiben Sie eine E-Mail an:
<a href="mailto:user@domain.de">user@domain.de</a>
</p>
htmlWollen Sie die gesamte E-Mail-Adresse verschlüsseln, bietet sich eine Darstellung mittels HEX-Encoding an. Dabei wird die Unicode-Zeichennummer herangezogen und in folgendem Grundschema notiert:
&#Zeichennummer;
Üblicherweise benutzt man die durch ein kleines “x” gekennzeichnete HEX-Nummer des betreffenden Zeichens. Der Buchstabe “m” ließe sich somit “m” oder dezimal “m” notieren. So ergibt sich für die E-Mail-Adresse user@domain.de
inklusive mailto
-Verweis folgende Darstellung:
<p>Bei Fragen und Anregungen schreiben Sie uns eine
<a href="mailto:user@domain.de">E-Mail</a>.
</p>
htmlDie entsprechenden Referenzzeichen für eine Übersetzung der E-Mail-Adresse lassen sich frei zugänglichen Listen im Netz entnehmen. Eine übersichtliche Darstellung findet man beispielsweise auf htmlarrows.com.
Grundsätzlich lässt sich eine Maskierung der E-Mail-Adresse durch Zeichencodierung schnell umsetzen. Die Schutzwirkung ist jedoch vergleichsweise gering, da die meisten Spambots mittlerweile so programmiert werden, dass sie diese einfache Form der Verschlüsselung problemlos entziffern können.
Maskierung durch Ergänzung
Grundsätzlich ist es möglich, eine E-Mail-Adresse vor Spambots zu verstecken, indem diese durch zusätzliche Zeichen unterbrochen wird. Programme nehmen die Adresse dann im besten Fall nicht mehr als Ganzes wahr, wodurch ein automatisches Auslesen unterbunden wird. Eine einfache Möglichkeit, dies zu realisieren, bieten zum Beispiel HTML-Kommentare.
<!-- Kommentar -->
htmlWerden solche Kommentare in die E-Mail-Adresse eingefügt, stoßen Spambots, die die Website scannen, auf folgenden Code:
<p>Für Fragen und Anregungen schreiben Sie eine E-Mail an:
u<!-- Kommentar -->ser@domai<!-- kommentar -->n.de.
</p>
htmlWährend menschliche Nutzerinnen und Nutzer im Webbrowser die korrekte E-Mail-Adresse angezeigt bekommen, liest ein Spambot den ausgeblendeten Text im span
-Element voraussichtlich mit aus. Nachteil der Maskierung durch Ergänzung ist, dass die E-Mail-Adresse bei dieser Methode nicht mit einem HTML-E-Mail-Verweis verlinkt werden kann. Nutzer und Nutzerinnen müssen die Adresse in diesem Fall also manuell in ihr E-Mail-Programm kopieren.
Methode 4: Verschlüsselung der E-Mail-Adresse
Ein gängiges Verfahren zur E-Mail-Verschlüsselung, das sich bereits mit wenigen Zeilen JavaScript umsetzen lässt, ist ROT13.
<script type="text/javascript">
function decode(a) {
return a.replace(/[a-zA-Z]/g, function(c){
return String.fromCharCode((c <= "Z" ? 90 : 122) >= (c = c.charCodeAt(0) + 13) ? c : c - 26);
})
};
function openMailer(element) {
var y = decode("znvygb:orahgmre@qbznva.qr");
element.setAttribute("href", y);
element.setAttribute("onclick", "");
element.firstChild.nodeValue = "E-Mail-Software öffnet sich";
};
</script>
<a id="email" href=" " onclick='openMailer(this);'>E-Mail: bitte klicken</a>
htmlDer Beispielcode zeigt in Zeile 9 die verschlüsselte Version der E-Mail-Adresse user@domain.de
inklusive mailto
-Textstring (znvygb:orahgmre@qbznva.qr) sowie in den Zeilen 2 bis 7, wie dieser Code zu entschlüsseln ist. Die Funktion in Zeile 8 bis 13 öffnet das bevorzugte E-Mail-Programm der Nutzerin bzw. des Nutzers und schreibt die entschlüsselte Adresse in die Empfängerzeile. Gestartet wird das Skript durch einen Klick auf einen Link mit dem Ankertext „E-Mail: bitte klicken“ (Zeile 15 bis 16). Dieser zeigt nach dem Klick den Text „E-Mail-Software öffnet sich“ (Zeile 12).
- Automatische Archivierung ausgewählter Postfächer
- Sicherung in deutschen Rechenzentren
- Unterstützt die Einhaltung gesetzlicher Anforderungen wie GoBD