【发布时间】:2014-08-15 00:49:51
【问题描述】:
我有一个应用程序,其中我有一个类文件来处理我所有的 ajax POST 和 GET 请求。
- ajax.class.php
任何人都可以推荐一种解决方案来阻止该页面接收任何恶意或未经授权的请求。我已经在使用 PDO 准备好的语句,并且还使用 PurifyHTML 类来清理一些包含 HTML 的用户输入。我主要担心有人查看我的源代码并看到我所有的表单操作都设置为“/classes/ajax.class.php”,然后尝试向它发送不需要的请求。
if($_GET['ajax'] == 'callerIdInfo'){
$number = $_GET['number'];
... [RECORD TO DB]
}
if($_POST['ajax'] == 'submitTicket'){
... [MORE FUNCTIONS]
}
etc etc..
【问题讨论】:
-
“使用身份验证”可能是最好的答案,但这个问题方式太宽泛了。
-
所有用户都经过身份验证。我有一个“保护”类来检查会话的正确用户级别,但我只是在寻找一些额外的安全性。我想我会在每个表单上使用令牌
-
那个,和/或只是
include/require另一个文件中的一个文件。 -
这是一个好的开始。让我以这种方式向您提出:您认为 Facebook 是否关心您是否查看他们的页面源并查看他们的表单在哪里
POSTing ?不,因为他们有适当的身份验证程序等。 -
如需更深入的安全相关帮助解决您的问题,我建议您前往Security.SE。他们可能不会在代码级别为您提供帮助,但他们可能会就您可以采取哪些措施来防止这些伪造请求提出一些建议。