【问题标题】:How could I secure a PHP messaging system from spam?如何保护 PHP 消息系统免受垃圾邮件的侵害?
【发布时间】:2014-06-27 16:08:04
【问题描述】:

我目前正在创建一个 PHP 消息传递系统,但似乎想不出阻止垃圾邮件攻击的合适方法。将从此表单发送一条消息(简化为包含要点):

<form action="messages/send" method="POST">
  <input type="text" name="message" />
  <input type="hidden" name="recipient" value="10" />
  <input type="submit" value="Send" />
</form>

上面的隐藏字段存储收件人 ID。此网站上的数据不安全,可供人们查看(例如 facebook;profile.php?id=45345345。)

提交表单后,后端 PHP 会进行以下检查:

  1. 发件人是否已登录?
  2. 是否允许发送联系收件人?
  3. 消息是否包含任何内容? (非空)

我想到的问题是有人可以轻松创建一个简单的脚本,该脚本可以自动增加表单中的“收件人”值,并基本上发送一个站点范围的消息。可以执行哪些其他后端 PHP 检查或其他类型的检查来防止这种情况发生?

【问题讨论】:

  • 添加验证码,即在发送表单之前随机生成的小文本。这将避免脚本的非预期运行。
  • 将收件人值存储在用户会话中而不是表单上

标签: php spam spam-prevention


【解决方案1】:

你可以添加一些东西:

看看-https://security.stackexchange.com/questions/4235/how-should-i-secure-a-contact-form-that-appears-on-every-page-of-a-website

【讨论】:

    猜你喜欢
    • 2010-10-03
    • 1970-01-01
    • 2012-02-21
    • 2017-11-06
    • 1970-01-01
    • 2012-02-15
    • 2011-04-09
    • 1970-01-01
    相关资源
    最近更新 更多