Wie verhindert eine Website das Einfügen eines Passworts oder einer E-Mail-Adresse?

530
user3.1415927

Ich habe festgestellt, dass einige Websites Benutzer daran hindern, Daten einzufügen - von Kennwörtern über Benutzernamen / E-Mails bis zu allem. Was sind die technischen Mittel, mit denen eine Website mich daran hindert, Daten in ein Texteingabefeld einzufügen, ohne die Praxis und die rationalen Gründe dafür zu diskutieren?

Zum Beispiel diese Seite nicht erlaubt in das „erneut eingeben E - Mail - Adresse“ Einfügen Feld. Wie? Ich vermute, dass es verschiedene Möglichkeiten gibt, dieses Verhalten umzusetzen?

Ich verwende Firefox 62.0.2 unter OS X 10.11.6.

6
Nebenbei: es ist nervig. Ich habe ein triviales Skript in AutoKey (Desktop Automation für Linux, aber es gibt ähnliche Dienstprogramme für Windows und Mac) geschrieben, das nur den Inhalt der Zwischenablage eingibt. Das geht an den meisten, aber nicht an allen solchen Websites vorbei. Zufällige Passwörter sind für die Sicherheit gut, aber für die Eingabe schrecklich. Joe vor 6 Jahren 0

2 Antworten auf die Frage

6
Kinnectus

Antwort: JavaScript

Schauen Sie sich den Quellcode der Seite an, auf die Sie einen Link setzen.

<input type="text" size="30" maxlength="99" onkeydown="clearErrMsg(event)" onblur="validateEmail(false)" onpaste="SFDOMEvent.preventDefault(event);" id="fbclc_emailConf" name="fbclc_emailConf" value="" aria-required="true"> 

Es ist SFDOMEvent.preventDefault(event);an das onpasteEreignis des Eingabeelements gebunden . preventDefaultbricht die durchgeführte Aktion ab, indem das Standardverhalten - das Einfügen - verhindert wird. Andere Websites verwenden Variationen davon.

4
harrymc

Es ist sehr einfach, das Kopieren, Ausschneiden oder Einfügen in ein HTML-Feld zu deaktivieren:

Beispiel, das alles deaktiviert:

<input type="text" onselectstart="return false" onpaste="return false;" onCopy="return false" onCut="return false" onDrag="return false" onDrop="return false" autocomplete=off/>

Weitere Informationen finden Sie unter Kopieren, Ausschneiden und Einfügen in HTML-Eingabetextfelder .