是否可以从地址栏中使用注入$ .post()



我有一个JavaScript,其中我使用$ .post()命令将变量发布到php文件中,我的php文件中的url中的php file hardcoded hardcoded hardcoded hard编码在同一.js文件中。

我只想知道某人是否可以从地址栏注入$ .post()命令并将无效的数据发送到PHP文件?

如果是,如何预防或如何检测这些无效数据?

是的,任何知道如何在JavaScript中代码的人都可以将AJAX POST请求发送到您的PHP文件。

至于如何检测无效数据,这完全取决于使数据无效。您只需要根据您期望满足有效数据的任何标准检查帖子值,然后忽略所有不符合这些条件的请求。

是的,这很简单。攻击者可以修改,添加或删除在浏览器中运行的任何JavaScript,修改DOM等。诸如Firebug之类的工具允许任何人从控制台调用任意JavaScript。此外,人们可以简单地使用curl运行服务器并发送任意数据。

如果是,如何预防或如何检测这些无效数据?

您必须确保服务器端的数据有效性和完整性。另外,您可能需要在服务器端添加一些安全性,并且不依赖某些JavaScript功能是"隐藏"的。

当然,通过使用javascript:方案准备脚本,您几乎可以在网站上做任何您想做的任何事情:

javascript:$.post(/* stuff here */)

您应该始终在服务器端验证您的传入数据,因为不仅可以有人在您的网站上使用JavaScript来执行此操作,而且他们可以使用其他工具,例如Curl或其他可以让您制作HTTP请求的其他工具。

最新更新