asp.net – 加密cookie中的会话ID(或其他身份验证值)是否有用?

前端之家收集整理的这篇文章主要介绍了asp.net – 加密cookie中的会话ID(或其他身份验证值)是否有用?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在Web开发中,当启用会话状态时,会话ID存储在cookie中(在cookieless模式下,将使用查询字符串).在asp.net中,会话ID自动加密.互联网上有很多关于你应该如何加密你的cookie的话题,包括会话ID.我可以理解为什么要加密私人信息(如DOB),但任何私人信息都不应该存储在cookie中.因此,对于其他cookie值,例如会话ID,目的加密是什么?它会增加安全性吗?无论你如何保护它,它都会被送回服务器进行解密.

更具体,

出于认证目的,

>关闭会话,我不想再处理会话超时了
>在cookie中存储某种id值,
>在服务器端,检查id值是否存在并匹配(如果是),验证用户身份.
>这样,当浏览器会话结束时,让cookie值到期.

VS

Asp.net表单身份验证机制(我认为它依赖于会话或会话ID)

后者提供更好的安全性吗?

解决方法

对Session Hijacking等会话的攻击旨在获得有效的会话ID.如果您现在要加密会话ID,攻击者只会瞄准加密的会话ID,您就没有任何优势.因此加密会话ID是没用的.请记住,会话ID只是用于标识会话的随机值.攻击者不需要知道该随机值是否具有某些特定含义;他们只需要知道随机值.

如果要保护会话安全,请使用HTTPS通过SSL加密整个HTTP通信,并仅使用标志设置cookie

>安全只允许通过HTTPS发送cookie
> HttpOnly禁止通过JavaScript进行本地访问.

猜你在找的asp.Net相关文章