Start Magazin Tipp: Was ist ein Captcha? Und was ist JavaScript?

Tipp: Was ist ein Captcha? Und was ist JavaScript?

256
0

Wenn du im Internet zum Beispiel für eine Umfrage abstimmst kann es passieren, dass du dich über ein Captcha als Mensch verifizieren musst. Kleine nervige Bilder, die in mehrere Quadranten unterteilt sind. Im heutigen Tipp-Artikel widmen wir uns einmal den Captchas und erklären auch Googles neuen Bot-Schutz reCaptcha v3, der die ungeliebte Bildersuche nicht mehr notwendig macht. Und da reCAPTCHA auf JavaScript basiert, schauen wir uns die Programmiersprache auch ein wenig näher an.

Was ist die Bedeutung hinter dem Wort Captcha?

Captcha ist die Abkürzung für Completely Automated Public Turing test to tell Computers and Humans Apart. Es handelt sich dabei um einen vollautomatischen öffentlichen Turing-Test zur Unterscheidung von Mensch und Computerprogramm bzw. Bot.

Ein Captcha wird verwendet, um zu unterscheiden, ob ein Mensch oder ein Bot ein Formular im Internet ausgefüllt hat. Bots werden oftmals missbräuchlich für automatische Eingaben am PC eingesetzt. Captchas dienen der Sicherheit.

Wie sieht ein Captcha aus?

Ein Captcha ist meist ein Challenge-Response-Test. Dabei muss der Nutzer eine Challenge (Aufgabe) lösen und das Ergebnis (Response) zurückschicken. Die Aufgaben, welche man in einem Captcha lösen muss sind so gestellt, dass der Mensch damit keine Probleme hat, ein Bot hingegen schon. Für verzerrte Buchstaben-Captchas benötigt ein Computer verschiedene Mustererkennungs-Algorithmen, um diese Bilder zu verarbeiten und zu erkennen. Ein Mensch tut sich dabei leichter. Und sollte man ein Captcha einmal nicht lösen können, findet sich meist irgendwo ein Button “Neues Captcha anfordern”.

Verschiedene Captchas
Ein klassisches Captcha besteht aus zufällig angeordneten Zahlen und Buchstaben. Diese sind meist verzerrt dargestellt und müssen vom Nutzer in ein Eingabefeld eingegeben und bestätigt werden. Einige dieser Captchas weisen einen Audio-Button auf, um damit sehbehinderten Menschen zu helfen.

Weiterhin gibt es Rechenaufgaben, welche gelöst werden müssen. Das Ergebnis wird ebenfalls wieder in ein Eingabefeld eingetragen und bestätigt.

Es werden verschiedene Captchas eingesetzt.

Auch Bilder-Captchas gibt es. Dabei sind mehrere Bilder in Quadranten angeordnet. Über dem Bild steht zum Beispiel die Aufgabe: ”Klicke alle Ampeln auf dem Bild an”. Mit der Maus muss dann auf jedes Bild geklickt werden, welches eine Ampel beherbergt. Somit wird “menschliche Intelligenz” bewiesen.

Hier müssen nur die Bilder mit einem Hund angeklickt werden.

Mittlerweile ist es jedoch so, dass die Software immer besser wird und die Bots Mustersammlungen erkennen.

reCAPTCHA

Im Jahr 2009 kaufte Google das Unternehmen reCAPTCHA. Damit wurde ein neuer Captcha-Standard gesetzt. Mitgegründet wurde reCAPTCHA von Luis von Ahn. Dieser hatte im Jahr 2000 an der Carnegie Mellon University den Begriff Captcha geprägt.

Die Google Firma reCAPTCHA fordert den Nutzer zur Verifikation als Mensch mit clever aufbereiteten Bildschirmeingaben auf.

  • Vorlesen des Textes
  • Anfordern eines neuen Captchas
  • Hilfefunktion

Nach fünf Jahren der Nutzung wurde reCAPTCHA einer Risikoanalyse unterzogen. Anhand dieser Ergebnisse wurde es überarbeitet und als NoCAPTCHA reCAPTCHA neu vorgestellt.

”Ich bin kein Roboter” – NoCAPTCHA – reCAPTCHA

Bei NoCAPTCHA – reCAPTCHA analysiert das Tool selbstständig, ob es sich bei dem Nutzer um einen Menschen oder einen Bot handelt. Im Idealfall muss also überhaupt kein Captcha eingegeben werden. Erst wenn das Tool sich unsicher ist wird ein grafisches Captcha angezeigt.

Der Nutzer muss zum Beispiel bei der Abfrage mit dem Mauszeiger ein Häkchen in das Kästchen “Ich bin kein Roboter” setzen. Google zieht dafür die Bewegung mit dem Mauszeiger als Kontrollpunkt heran. Dieser kann so nur durch einen realen Menschen ausgeführt werden. Insgesamt gibt es aber keine offiziellen Angaben über die Funktionsweise von reCAPTCHA, um zu verhindern, dass diese umgangen und ausgehebelt werden. Man darf jedoch vermuten, dass Googles KI verschiedene Informationen des Nutzers kombiniert:

  • Elemente des Cache-Speicher
  • Maus-Bewegungen
  • Anzahl gespeicherter Favoriten
  • Browser User-Agent
  • Aktuelle Web-Historie
  • Daten des Systems (Betriebssystem, Variante, Ausbaustufe)
  • Lokale Einstellungen, etc.

reCAPTCHA möchte die Abfragen für den realen Nutzer so bequem wie möglich machen. Im Idealfall soll man als Nutzer gar nichts vom eingesetzten Captcha bemerken.

reCAPTCHA v3

Google selbst hat nun eine überarbeitete Version von reCAPTCHA, nämlich reCAPTCHA v3, vorgestellt. reCAPTCHA basiert auf JavaScript und analysiert im Hintergrund das Nutzerverhalten.

Mit reCAPTCHA v3 bekommt der Nutzer keine Abfrage mehr zu sehen, sondern der Webmaster erhält einen Score zwischen 0,1 welcher auf einen Bot hinweist, und 1,0, was auf einen Mensch hinweist. Ebenfalls kann der Webmaster eigene Signale einfließen lassen. Um die Erkennungsrate von reCAPTCHA v3 zu verbessern soll es durch die Webmaster auf allen Seiten angewendet werden und nicht nur bei Logins oder Formularfeldern.

reCAPTCHA v3 wird über eine API angeboten und ist einfach in die Webseiten einzubinden. Das Tool selbst ist kostenlos, Webmaster benötigen aber ein API-Schlüsselpaar, welches bei Google angefordert werden muss.

Was ist JavaScript?

Erst vor kurzem gab Google bekannt, dass der Login im Google Account nur noch mit aktiviertem JavaScript erfolgen kann. Die meisten Nutzer dürfte das nicht stören, da sie JavaScript standardmäßig im Browser aktiviert haben. Es gibt jedoch auch einige wenige Nutzer (0,1%), welche JavaScript deaktiviert haben. Und das aufgrund der mangelnden Sicherheit.

Ursprünglich war JavaScript, in 1995 noch LiveScript genannt, dazu da die Nutzerangaben auf Formularen zu überprüfen. Die Möglichkeiten von JavaScript wurden immer weiter entwickelt, sodass mittlerweile eine komplexe Skriptsprache daraus wurde. Mit dieser ist fast alles möglich. JavaScript sorgt dafür, dass sich Webseiten dynamisch aufbauen und dem Gerät des Nutzers anpassen. Ebenfalls können mit JavaScript komplexe Kontrollabfragen programmiert und mit Datenbanken verknüpft werden. Damit werden die Eingaben der Besucher überprüft. Auch Browsergames werden mit JavaScript geschrieben.

JavaScripts werden in den HTML-Codes einer Webseite eingefügt und durch den Browser des Nutzers ausgeführt. Das heißt, ist JavaScript im Browser deaktiviert, wird die hinter dem Skript stehende Aktion auch nicht ausgeführt. Mit deaktiviertem JavaScript wird auf den meisten Webseiten zwar keine Werbung mehr angezeigt, jedoch funktionieren viele Seiten damit nicht mehr richtig. Einige Seiten werden gar nicht mehr angezeigt, da selbst das Laden der Seite nur über JavaScript funktioniert.

JavaScripts werden in den Code einer Webseite eingefügt.

Ist JavaScript eine Bedrohung?

Was ehemals eine harmlose Skriptsprache zur Datenüberprüfung war, ist nun eine ausgewachsene Programmiersprache. Somit ist es auch eine Gefahrenquelle. Denn mit der Programmiersprache JavaScript kann man den Browser dazu bringen, im Hintergrund Befehle und Inhalte von anderen Seiten zu laden. Du siehst dir eine Webseite an und parallel dazu lädt JavaScript Aktionen von anderen Servern nach. Hier tut sich eine Eintrittsstelle für potenzielle Angreifer auf. Es könnten Trojaner nachgeladen werden, welche sich in deinem System einnisten.

Solche Drive-By-Infektionen fängst du dir auf infizierten Webseiten ein. Dazu genügt es einen Link auf dieser Seite anzuklicken und schon befindet sich der Schadcode auf dem Weg in dein System. Und dieser Schadcode lädt weiteren Schadcode nach und schon ist dein PC gekapert.

JavaScript ist eine Programmiersprache, mit der Viren oder auch tolle Browsergames programmiert werden können. Viele Webseiten funktionieren ohne JavaScript überhaupt nicht. Es ermöglicht zum Beispiel auch ausführliche Besucherstatistiken, um die Webseite zu verbessern. Aber es ist und bleibt eben auch eine Schwachstelle. Bestimmte JavaScripts protokollieren nämlich auch deine Vorlieben oder deinen Weg durch das World Wide Web. Hier heißt es immer gut darauf achten. Denn nicht jedes JavaScript ist notwendig. Aber ohne JavaScripts läuft auch das Internet nicht rund.

Fazit

Es wird trotz aller Sicherheitsmaßnahmen nie eine 100-prozentige Sicherheit geben, ob es sich bei der Verifikation auf einer Webseite um einen realen Mensch oder einen Bot handelt. Und deaktivierst du JavaScript, hast du zwar eine Schwachstelle für einen Angriff geschlossen, aber es werden dadurch auch viele Webseiten nicht mehr korrekt angezeigt.