Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 如何保护我的php、jquery和ajax请求免受黑客攻击?_Javascript_Php_Jquery - Fatal编程技术网

Javascript 如何保护我的php、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?无法阻止用户导

我通过jquery的ajax方法发送了大量数据,函数示例如下

$.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文件,可能会检索数据?嗯。。。那么坏数据/恶意数据呢?。我还要指出,当攻击者是用户本人时,您只能依赖会话和服务器端验证。。我还要指出,当攻击者是用户本人时,您只能依赖会话和服务器端验证。