php - 尽管验证码有效,用户应该如何通过输入无效的电子邮件 ID 在网站上注册?

标签 php mysql validation security email

我有一个 PHP 网站。后端使用MySQL数据库。

让我把这个场景说得简短明了。

网站上有一张用户注册表。该表单使用 AJAX 提交。它有一个用于输入用户电子邮件 ID 的字段。该字段的验证是电子邮件中的域名必须是“.edu”,如果输入具有其他域的电子邮件,则会引发错误。例如,anilpatil@msstate.edu 是有效的电子邮件 ID,而 anilpatil@yahoo.com 是无效的电子邮件 ID。

检查代码后,我发现此验证是在 PHP 中完成的,并且工作正常,显示了正确的错误消息,并且表单未提交。

即使我的数据库包含许多电子邮件 ID 属于 .com 域或其他域的用户。这些用户也可以登录系统。

我还尝试禁用浏览器的 JavaScript 并输入无效的电子邮件 ID,然后它也工作正常。用户无法注册。

我不明白这些用户是如何注册的?我无法检测到此问题的根本原因。有人可以在这方面帮助我,告诉我这个问题的根本原因是什么吗?

谢谢。

附注:- 不可能将全部代码放在这里。因为它太大并且来自太多文件。它是框架的一部分。但考虑到验证代码工作得绝对正常。我的主要目的是检测此安全漏洞的根本原因。

最佳答案

在不发布任何代码的情况下,我最好的猜测是人们直接使用您的 ajax 文件进行注册,并且您的 ajax 文件不包含验证。

如果您想让我验证它,请发布您的网站,我将尝试直接使用您的ajax文件进行注册

关于php - 尽管验证码有效,用户应该如何通过输入无效的电子邮件 ID 在网站上注册?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30881626/

相关文章:

php - 代码点火器上的权限被拒绝

php - 从 Wordpress 数据库中检索重音符号而不是逗号

php - 将 MySQL 数据插入现有行

validation - 每个图像中包含大量对象实例的小数据集是否可以用于对象检测/分割训练?

Java:检测给定字符编码的不可显示字符

java - 在哪里可以找到 javax.validation.* 的实现?

php - Mysql 问题 - Mysql 获取数组并添加到数据库

php - 如何正确索引以下内容?

php代码工作不正确并且不查询数据库

php - 如何通过数据库中的 Bootstrap 创建动态模态窗口?