Étant donné qu'il y a tant de caractères valides pour les adresses e-mail, y a-t-il des adresses e-mail valides qui peuvent être des attaques XSS ou des injections SQL? Je n'ai trouvé aucune information à ce sujet sur le web.Adresses e-mail valides - Injection XSS et SQL
La partie locale de l'adresse e-mail peut utiliser ces caractères ASCII:
- Majuscules et anglais minuscules (a-z, A-Z)
- Digits 0 à 9
- Caractères! # $% & '* + -/=?^_ `{| } ~
- Caractère. (point, point, point) à condition que ce ne soit pas le dernier caractère et à condition qu'il n'apparaisse pas deux fois ou plus de fois de suite (par exemple John..Doe @ example.com).
http://en.wikipedia.org/wiki/E-mail_address#RFC_specification
Je ne demande pas comment empêcher ces attaques (je suis déjà en utilisant des requêtes paramétrées et échapper/purificateur HTML), ce qui est plus une preuve de concept.
La première chose qui est venue à l'esprit était 'OR [email protected]
, sauf que les espaces ne sont pas autorisés. Toutes les injections SQL nécessitent-elles des espaces?
Peut utiliser http://isemail.info/ pour vérifier l'adresse e-mail que vous aimez, ou tout simplement tester avec un filtre sur les adresses e-mail injectables via une fonction PHP comme filtrer les e-mails de validation. Basé sur isemail.info, la première adresse est invalide, et la deuxième adresse est "L'adresse est valide dans le message mais ne peut pas être utilisée non modifiée pour l'enveloppe" – Kzqai