我在我的网站上有一个联系邮件表单,我想让这个表单足够安全。 这是最好的方式来完成这项工作,有没有什么办法隐藏我发送邮件到另一个页面的php变量。PHP安全表单
任何样本或链接或想法?
安全 - 我的意思是我的数据是安全的,因为用户会插入他们的个人资料,如护照号码,SSN ECT,并希望这些数据能够以某种方式安全。我曾经在某处看过一些注射,有些人可以将这些数据通过表格发送出去。我想我现在清楚了?
我在我的网站上有一个联系邮件表单,我想让这个表单足够安全。 这是最好的方式来完成这项工作,有没有什么办法隐藏我发送邮件到另一个页面的php变量。PHP安全表单
任何样本或链接或想法?
安全 - 我的意思是我的数据是安全的,因为用户会插入他们的个人资料,如护照号码,SSN ECT,并希望这些数据能够以某种方式安全。我曾经在某处看过一些注射,有些人可以将这些数据通过表格发送出去。我想我现在清楚了?
HTML过滤
HTML净化器是用PHP编写的符合标准的HTML 过滤库。 HTML净化器不仅会为一个彻底的审核移除所有 恶意代码(更好地称为 XSS),
安全又宽容的白名单
OWASP
开放Web应用安全 项目(OWASP)是所有 OWASP 基金会的活动名称。
如果安全的,你的意思是相对保护,垃圾邮件发送者,一个好东西以及许多其他做的是有一个电子邮件输入字段为最终用户把他们的答复,以实际强制有效的MX entires。
function isValidEmail($email){
$pattern = '/^([a-z0-9])(([-a-z0-9._])*([a-z0-9]))*
\@([a-z0-9])*(\.([a-z0-9])([-a-z0-9_-])([a-z0-9])+)*$/i';
if(!preg_match ($pattern, $email)){return false;}
list($user_name, $mail_domain) = explode("@",$email); // Split email address into username and domain name
if (checkdnsrr($mail_domain, "MX")) return true;
return false; // Invalid email address
}
当然不是一个全面的解决方案,但它确实有助于大幅度削减自动提交。
没有评论downvote让我伤心:( – dmp 2010-07-13 18:31:37
我也很好奇,大声笑... – DeaconDesperado 2010-07-13 18:33:59
因为这不是检查有效电子邮件地址的好方法,正则表达式可能是一个更好的解决方法。PS:我不是那个低估了它的人,但我相信这将是原因 – quantumSoup 2010-07-13 18:51:15
您应该:
为什么没有人提到HTTPS?
只是让你得到的形式使用HTTPS协议提交,所有的数据都被加密,透明(这意味着你不需要做任何事情来解密在PHP中,它只是工作)
如何使我的表单提交给我们使用https协议。 这些日期将如何解密到您想要发送给他们的电子邮件? – AXheladini 2010-07-13 18:41:47
您需要在您的服务器上安装SSL证书并与注册服务商一起激活。然后,您可以使表单页面中的所有元素(包括表单自己的操作属性)使用https://打开HTTPS连接。这将加密客户端和服务器之间的通信。然而,从PHP发送SSN号码或非常敏感的个人信息仍然是一个糟糕的主意。 – DeaconDesperado 2010-07-13 18:50:31
无需发送加密的电子邮件而无需收件人解密(通过自己或使用特殊客户端)。其实这里有一个相关的问题:http://stackoverflow.com/questions/3146847/design-problem-secure-self-destructing-email。无论如何,你绝对不应该**以明文形式向SSN或其他敏感信息发送电子邮件。 – quantumSoup 2010-07-13 18:54:32
HTTPS协议是最好的解决方案。 对于Spamer保护,您可以使用验证码。 如果你从一台服务器传递变量到另一个你可以把它使用加密的更多保护。
什么是“安全”?这可能意味着很多事情。 – 2010-07-13 18:12:17
@theatrus:不,问题是:什么是“足够”? – Borealid 2010-07-13 18:15:21
安全在哪方面?你想发送什么“PHP变量”? – Gumbo 2010-07-13 18:16:15