PHP 邮件脚本需要什么保护?

What protection is needed for PHP mail scripts?

我知道一般不允许这样的问题,但我找不到答案。

即使您不使用 databases/MySQL,是否也需要 SQL 注入保护?

如果我在 PHP 中有一个基本的邮件表单,可以将邮件发送到我的电子邮件,我需要保护该表单吗?

如果您不使用数据库,那么不需要,您不需要防范利用数据库查询的攻击。电子邮件有自己的一整套漏洞,我建议使用 phpmailer or swiftmailer 之类的库来帮助解决这个问题。无论哪种方式,您都应该始终验证从表单提交的数据是否符合您期望的格式。

您需要对邮件表单进行 XSS 保护。您不希望用户能够将 javascript 等插入电子邮件。一种防止 XSS 的简单方法是使用 htmlentities() 来禁止用户输入中的 HTML 标签,例如 <script>..</script>。 htmlentities 将 <script> 之类的标签转换为 &lt;script&gt;