既然电子邮件地址有这么多有效字符,那么是否有任何有效的电子邮件地址本身可以是 XSS 攻击或 SQL 注入?我在网上找不到有关此的任何信息。
电子邮件地址的本地部分可以使用以下任何 ASCII 字符:
- 大写和小写英文字母(a-z、A-Z)
- 数字 0 到 9
- 人物 !# $ % & ' * + - / = ? ^ _ ` { | } ~
- 特点 。(点、句号、句号),前提是它不是最后一个字符,并且它不连续出现两次或多次(例如 John..Doe@example.com)。
http://en.wikipedia.org/wiki/E-mail_address#RFC_specification
我不是在问如何防止这些攻击(我已经在使用参数化查询和转义/HTML 净化器),这更像是一个概念验证。
首先想到的是'OR 1=1--@gmail.com
,除了不允许有空格。所有 SQL 注入都需要空格吗?