PHP zce考试学习指南说
您的PHP应用程序使用PHP的mail()函数发送包含用户提供的数据的电子邮件。攻击者如何为该电子邮件注入自定义BCC标头?
A: Adding "\rBcc: email@example.com" to the subject
B: Adding "\nBcc: email@example.com" to the mail body
C: Adding "\r\nBcc: email@example.com" to the sender's address
D: None of the above
正确答案:D:以上都不是
任何人都可以解释为什么" C"答案不对吗?
答案 0 :(得分:0)
正确答案实际上是D,因为从用户输入提供时不会解释“\ r \ n”字符。
举例说明:给出以下代码:
$headers = "From: from@example.com{$_GET['q']}";
$result = mail('test@example.com', 'subject', 'message', $headers);
提供via get参数:http://example.com?q=“\ r \ nBcc:%20test2 @ example.com”将无效。但这可行:http://example.com?q=%0D%0ABcc:%20test2@example.com