如何在webapp2中为userS或用户会话发送cookie

时间:2014-05-06 14:44:19

标签: google-app-engine encryption session-cookies digital-signature webapp2

Webapp2会话的安全cookie由服务器的私钥签名。这使得某人无法制作自己的cookie并让服务器接受它们。但是,有人不能从会话X中获取cookie并将其作为cookie传递给另一个会话Z(中间人攻击中的人)?似乎要防止这种情况的唯一方法是要求使用其中一个cookie来识别cookie适用的用户。这样,只有用于具有用户X的会话的cookie才能用于具有用户X的会话;它们不能用于用户Z的会话。

服务器未验证用户ID的示例' cookie(不安全):

  1. 服务器为用户X设置cookie C
  2. 服务器为用户Y设置cookie D
  3. 用户Y在冒充X
  4. 时发送Cookie D.
  5. 由于C和D都是使用服务器的私钥签名的,因此服务器接受D并将其视为X帐户中的有效cookie
  6. 服务器验证用户ID的示例' cookie(安全):

    1. 服务器为用户X设置cookie C,并设置' id' cookie w /用户X的id
    2. 服务器为用户Y设置cookie D,并设置' id' cookie w /用户Y的ID
    3. 用户Y在冒充X
    4. 时发送Cookie D.
    5. 服务器会查看' id'随附D的cookie并看到该ID是针对用户Y的。服务器然后意识到所提供的cookie只能应用于Y,因此不会将其视为对用户X有效
    6. 请确认“用户ID”是否为'需要检查cookie,以阻止某人从会话X中获取cookie并将其作为cookie传递给另一个会话Z.

0 个答案:

没有答案