Javascript 如何保护我的php、jquery和ajax请求免受黑客攻击?
我通过jquery的ajax方法发送了大量数据,函数示例如下Javascript 如何保护我的php、jquery和ajax请求免受黑客攻击?,javascript,php,jquery,Javascript,Php,Jquery,我通过jquery的ajax方法发送了大量数据,函数示例如下 $.ajax({ url: retrive.php, type: 'POST', data: data, success: callback }); 问题是,任何人都可以查看源代码并看到将POST数据发送到的php文件的位置,因此您可以将浏览器指向该位置并从URL获取数据。我会检查数据以确保它是正确的数据类型,但我不希望用户能够访问url 我们如何防止直接访问该url?无法阻止用户导
$.ajax({
url: retrive.php,
type: 'POST',
data: data,
success: callback
});
问题是,任何人都可以查看源代码并看到将POST数据发送到的php文件的位置,因此您可以将浏览器指向该位置并从URL获取数据。我会检查数据以确保它是正确的数据类型,但我不希望用户能够访问url
我们如何防止直接访问该url?无法阻止用户导航到AJAX请求中显示的url。如果没有收到POST数据,您所能做的就是显示一个错误。您还可以使用AJAX请求设置一个自定义请求头,以便进行检查。无法阻止用户导航到AJAX请求中显示的url。如果没有收到POST数据,您所能做的就是显示一个错误。您还可以使用AJAX请求设置一个自定义的请求头来进行检查。因为现代浏览器提供了很多检查工具 这并非完全可能。 因为php是在服务器端执行的,所以它是安全的。 但是Jquery和Ajax可以查看,因为它是在客户端执行的。 你可以采取一些安全措施 1.)检查HTTP REFERER,这样我们就可以防止来自不受信任源的不需要的ajax调用 在php$_服务器['HTTP_REFERER']中;可以用来检查。如果推荐人不是 从您的来源,您可以拒绝该请求 2.)加密的URL URL可以加密,这样黑客就无法获得实际的页面详细信息 3.)Javascript混淆 4.)服务器端验证 许多程序员跳过服务器端验证,只依赖客户端验证。客户端验证通常使用javascript完成,可以在浏览器上禁用。通过检查工具,客户机还可以修改javascript并执行故障。因此,必须进行服务器端验证 5) 正确的身份验证和会话管理 这些是我们可以采取的一些应对措施。我们无法阻止黑客检查或查看javascript代码或ajax调用
但是我们可以通过拒绝所有不需要的请求来保护我们的服务器 因为现代浏览器配备了很多检测设备 这是不可能的。 因为php是在服务器端执行的,所以它是安全的。 但是Jquery和Ajax可以查看,因为它是在客户端执行的。 你可以采取一些安全措施 1.)检查HTTP REFERER,这样我们就可以防止来自不受信任源的不需要的ajax调用 在php$_服务器['HTTP_REFERER']中;可以用来检查。如果推荐人不是 从您的来源,您可以拒绝该请求 2.)加密的URL URL可以加密,这样黑客就无法获得实际的页面详细信息 3.)Javascript混淆 4.)服务器端验证 许多程序员跳过服务器端验证,只依赖客户端验证。客户端验证通常使用javascript完成,可以在浏览器上禁用。通过检查工具,客户机还可以修改javascript并执行故障。因此,必须进行服务器端验证 5) 正确的身份验证和会话管理 这些是我们可以采取的一些应对措施。我们无法阻止黑客检查或查看javascript代码或ajax调用
但是我们可以通过拒绝所有不需要的请求来保护我们的服务器 如果我们将类型更改为JSON,那么如果任何黑客知道php文件,可能会检索数据?Mmmmm。。。那么坏的/恶意的数据呢?如果我们将类型更改为JSON,那么如果任何黑客知道php文件,可能会检索数据?嗯。。。那么坏数据/恶意数据呢?。我还要指出,当攻击者是用户本人时,您只能依赖会话和服务器端验证。。我还要指出,当攻击者是用户本人时,您只能依赖会话和服务器端验证。