Jen*_*nni 3 php email code-injection
我想知道以下代码是否存在任何潜在的安全风险.每当用户提交评论时,我都会在博客上使用此信息,它会向我发送短信:
mail('cellnumber@messaging.sprintpcs.com', '',
"Comment posted by $name: $comment",
"From: comments@example.com");
Run Code Online (Sandbox Code Playgroud)
用户输入的值在哪里$name和$comment哪些尚未真正以任何方式消毒.用户是否有可能在此处做任何恶意行为?该邮件()文档不说这事,但它只是觉得不妥坚持用户输入的值直接转换成字符串.有没有真正的风险,或者我只是偏执狂?
只要我保留在邮件正文中的所有用户资料,就没有注入风险.
但是,只要用户可以影响邮件标题,那么他们就可以注入额外的标题并执行诸如使用垃圾邮件任意电子邮件地址或包含完全不同的邮件(包括附件)之类的操作.
如果检查影响标题的部分中的换行符,如果出现则拒绝,那么这应该足够了.该SMTP标准使用CRLF的头线分开,但据我所知,很多基于Unix的服务器,让你只使用LF(因为这是这些系统上的原生行分隔符).然后邮件中继者在向上游发送它时将其转换.