安全php电子邮件脚本

安全php电子邮件脚本,php,email,Php,Email,我想使用php脚本从网站上的html文件发送电子邮件。 这个php脚本是否足够安全,可以抵御黑客攻击和垃圾邮件 <?php $to = "emailto@site.com"; $subject = "Sent from site"; $email = $_POST['emailFrom']; $message = $_POST['message']; $email = filter_var($email , FILTER_SANITIZE_EMAIL); $message =

我想使用php脚本从网站上的html文件发送电子邮件。 这个php脚本是否足够安全,可以抵御黑客攻击和垃圾邮件

<?php 

$to = "emailto@site.com";
$subject = "Sent from site";

$email = $_POST['emailFrom'];
$message = $_POST['message'];

$email   = filter_var($email , FILTER_SANITIZE_EMAIL);
$message = filter_var($message , FILTER_SANITIZE_EMAIL);

$message = $email . $message;

mail($to, $subject, $message, "From: webpage@site.com");
?>

筛选\u清理\u电子邮件从字符串中删除非法电子邮件地址字符;因此,这不是电子邮件内容的最佳选择(无论它对电子邮件地址有多有用)。虽然删除HTML特殊字符在防止XSS攻击时很有用,但值得注意的是,在消息中发布<和>(即现在)是有正当理由的。因此,最好将这些字符转换为它们的html实体。


<将成为
和>将成为

因此,为了将html字符更改为其实体,请替换:
$message=filter\u var($message,filter\u SANITIZE\u EMAIL)
$message=htmlspecialchars($message)


除此之外,它看起来不错;但请记住,在涉及数据库的情况下,还应添加数据库清理。

看起来不错。只要检查了可以发布的任何内容,您就安全了。可能更适合。只要您的脚本不允许某人指定自己的收件人地址,它对垃圾邮件发送者就没有用处。