【问题标题】:Is Cookie marked as secure in HTTPS connection?Cookie 在 HTTPS 连接中是否标记为安全?
【发布时间】:2021-08-23 20:46:14
【问题描述】:

我的问题是,如果我在 HTTPS 连接中托管我的网站,那么 cookie 是否仍可能被攻击者窃取以执行 中间人攻击?

在 HTTP 连接中,攻击者可能会拦截 cookie 并劫持受害者的​​会话。所以如果攻击者可以进行中间人攻击,他可以强制受害者发出http请求并窃取cookie。

那么在 HTTPS 连接中是否仍然存在这种风险?或者我怎样才能使它更安全,以便攻击者无法窃取 cookie?

【问题讨论】:

    标签: asp.net security cookies session-cookies man-in-the-middle


    【解决方案1】:

    答案是肯定的。

    不确定我是否解释得足够好。

    但是看看:https://en.wikipedia.org/wiki/HTTP_Public_Key_Pinning

    额外说明:- cookie 将驻留在用户端,HTTPS 只是指定将在两端之间使用的连接将被加密并使用 SSL 证书。 SSL 证书使网站能够从 HTTP 迁移到更安全的 HTTPS。 SSL 证书是托管在网站源服务器中的数据文件。 SSL 证书使 SSL/TLS 加密成为可能,它们包含网站的公钥和网站的身份,以及相关信息。

    【讨论】:

    • 欢迎来到 SO。虽然此链接可能会回答问题,但最好在此处包含答案的基本部分并提供链接以供参考。如果链接页面发生更改,仅链接答案可能会失效。 请注意,您可以通过在引用的所有行前加上 > 前缀来包含引用。
    【解决方案2】:

    或者我怎样才能使它更安全,以便攻击者无法窃取 饼干?

    您必须在 web.config 上声明,使用 requireSSL 强制 cookie 仅在安全连接上

    <httpCookies domain="domain.com" requireSSL="true"/>
    

    更多阅读:Can some hacker steal a web browser cookie from a user and login with that name on a web site?

    【讨论】:

    • 如果网站仅托管在 HTTP 中怎么办?这个 web.config 设置仍然会产生影响吗?
    • 如果您仅使用 http 并设置该参数,则根本不会保存任何 cookie...您需要 https 连接 -
    • 以高级方式避免man in the middle attack,您必须在服务器端保持更多信息与该 cookie 相关联 - 例如 ip 和浏览器特征 - 并在每个请求上仔细检查它们。
    • 通常登录 cookie 应该同时设置 requireSSL(不要通过不安全的连接发送 cookie)和 HttpOnly(阻止通过 javascript 访问 cookie)。
    猜你喜欢
    • 1970-01-01
    • 2012-08-24
    • 2012-07-30
    • 1970-01-01
    • 2018-08-06
    • 2016-11-14
    • 2011-09-25
    • 1970-01-01
    • 2015-12-23
    相关资源
    最近更新 更多