Gültige E-Mail-Adressen - XSS und SQL Injection

8

Da es so viele gültige Zeichen für E-Mail-Adressen gibt, gibt es gültige E-Mail-Adressen, die XSS-Angriffe oder SQL-Injektionen sein können? Ich konnte keine Informationen dazu im Internet finden.

  

Der lokale Teil der E-Mail-Adresse   kann eines dieser ASCII-Zeichen verwenden:

     
  • Groß- und Kleinbuchstaben (a-z, A-Z)
  •   
  • Ziffern 0 bis 9
  •   
  • Charaktere! # $% & amp; '* + - / =? ^ _ '{| } ~
  •   
  • Charakter. (Punkt, Punkt, Punkt) vorausgesetzt, dass es nicht der letzte ist   Zeichen, und vorausgesetzt, dass es nicht erscheint zwei oder   mehrere Male hintereinander (z. B. John..Doe @ example.com).
  •   

Ссылка

Ich frage nicht, wie ich diese Angriffe verhindern kann (ich verwende bereits parametrisierte Abfragen und Escaping / HTML-Filter), dies ist eher ein Proof-of-Concept.

Das erste, was mir in den Sinn kam, war 'OR [email protected] , außer dass Leerzeichen nicht erlaubt sind. Benötigen alle SQL-Injektionen Leerzeichen?

    
Lotus Notes 27.05.2010, 18:01
quelle

2 Antworten

12

Leerzeichen sind zulässig, wenn sie in Anführungszeichen stehen, also ist "'OR 1=1--"@gmail.com eine gültige E-Mail-Adresse. Außerdem ist es wahrscheinlich weniger problematisch, aber technisch betrachtet sind dies beide gültige E-Mail-Adressen:

%Vor%

Auch wenn dies nicht möglich war, gibt es immer noch keinen Grund, dass Sie keine parameterisierten Abfragen verwenden und alle vom Benutzer eingegebenen Daten codieren sollten, die den Benutzern angezeigt werden.

    
Ryan Brunner 27.05.2010, 18:32
quelle
-5
%Vor%

Ich denke, dass entspricht 99,9999% aller E-Mail-Adressen;)

    
Tobias 27.05.2010 18:28
quelle