javascript和php安全性


javascript and php security

我想知道"注入",包括javascript注入(我不理解它的规则)。

如果我有一个javascript函数,它发出AJAX请求来查找用户的权限级别,然后我用If语句检查该级别以分配权限,那么这容易受到攻击吗?

Javascript

function checkPermission(){
  $.post('user.php', userId, function(data){
     return data.permission;
  });
}
var = permission = checkPermission();
     if (permission === 2){
        // User has admin powers
     }

有人能在代码中读到这一点并简单地将变量"permission"更改为2,从而拥有管理员访问权限吗?

谢谢。

是的,它很容易受到攻击,因为javascript在客户端运行,用户可以通过浏览器更改userID值。

这样的事情不应该依赖客户端数据。您至少需要在用户服务器端登录时对其进行身份验证,然后创建一个会话来保存其用户ID等。通过这种方式,您可以依赖服务器端会话数据,而用户将无法操作这些数据。

编辑:

此外,在您的示例中,用户也可以更改权限变量的值。同样,验证检查不应该留给客户端代码。