gpt4 book ai didi

security - 将 session ID 作为 url 参数传递的危害

转载 作者:行者123 更新时间:2023-12-02 22:01:42 24 4
gpt4 key购买 nike

所以我刚刚注意到其中一个网上银行网站正在将 session ID 作为 url 参数传递。 (见下图)

enter image description here

我以前没有在任何地方看到过“;”在 url 中,在本例中它位于“private;”之后。

1)这个';'有什么用?

2) 为什么互联网银行(需要成为互联网上最安全的地方)将 session ID 作为 url 参数传递?

起初,我以为他们这样做是因为一些用户不允许使用 cookie,但话又说回来,如果他们允许,就使用 cookie,如果不是 - url,但我确实允许使用 cookie,所以显然那就是事实并非如此。

3)我想他们应该有一些其他的安全措施?它们可能是什么?

4) 如果一个人知道其他人的有效 session ID,他能做什么?据我所知,如果您知道该 id,您可以很容易地登录其他人的 session ,因为编辑 cookie 并不难,并且将该 session id 作为 url 参数传递更容易,特别是如果您有类似的内容:

session_id($_GET[sessionid]);

谢谢!

最佳答案

1) 您应该询问您的红框所覆盖的应用程序的设计者。 URL 可以是任何你想要的; key=value&key2=value2 的约定就是这样 - 一个约定。在本例中,它是 Java,并且通常使用 ;jsessionid=.... 约定作为其 SID。

2)这并不是什么大事。普通用户无法像复制粘贴 GET 参数那样复制粘贴 cookie,但高级用户可以做任何他们想做的事情(使用 Mechanize、wgetcurl 和其他非浏览器手段,甚至浏览器扩展)。如果您允许某些用户使用,而不允许某些用户使用,那么这并不是真正的安全预防措施,不是吗?基本上,cookie SID 会让攻击变得更加困难,但这就像把你的前门 key 放在垫子下面 - 绝对不能保证你的门安全。此外,cookie 在选项卡之间共享:如果某个网站希望您同时使用两个帐户登录,则无法使用 cookie 来实现。

3) 服务器端安全性,是的。一种有效的对策是一次性 SID(每次访问页面时,服务器都会从当前 SID 读取 session ,然后使用新的 SID 为下一个请求启动一个新 session )。一个不太有效但仍然很好的方法是验证其他信息的一致性(例如 - 仍然相同的 IP?仍然相同的浏览器?)

4) 是的,如果您知道某人的有效 SID,并且服务器无法充分防止 session 固定,您可以“成为”那个人。例如,这可能使攻击者能够用您的钱支付他的账单。

关于security - 将 session ID 作为 url 参数传递的危害,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27499977/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com