Http 基本身份验证-哈希算法和标头注入-安全问题

Http 基本身份验证-哈希算法和标头注入-安全问题,http,authentication,Http,Authentication,我对基本身份验证的理解是,它将username:password对存储在请求头中,然后在服务器的后续响应中返回 问题: 浏览器使用什么散列算法来创建发送到服务器进行验证的初始用户名:密码散列 服务器上的每个请求都应该通过验证运行username:password对吗?或者仅仅看到授权头中有一些内容并接受它就足够了,因为它在那里,那么会话已经被验证了吗 (与2相关)是否可以在授权头中插入任何旧字符串,从而欺骗服务器相信会话已通过身份验证 我知道在理论上我们不应该使用basicauth,但在某些情况

我对基本身份验证的理解是,它将username:password对存储在请求头中,然后在服务器的后续响应中返回

问题:

  • 浏览器使用什么散列算法来创建发送到服务器进行验证的初始用户名:密码散列

  • 服务器上的每个请求都应该通过验证运行username:password对吗?或者仅仅看到授权头中有一些内容并接受它就足够了,因为它在那里,那么会话已经被验证了吗

  • (与2相关)是否可以在授权头中插入任何旧字符串,从而欺骗服务器相信会话已通过身份验证

  • 我知道在理论上我们不应该使用basicauth,但在某些情况下它是有意义的


    非常感谢

    不进行哈希运算,凭证以纯文本形式存在,它们仅以64进制编码,以适合标题允许的字符范围。对于服务器需要经过身份验证的用户的每个资源,每个请求都必须包含此标头

    因此,当您捕获请求时,可以使用标头将请求伪装为发出初始请求的用户


    HTTPS将防止窃听,但这并不能使其更加安全。另请参见。

    不进行哈希运算,凭据以纯文本形式存在,它们仅以64进制编码,以适合标题允许的字符范围。对于服务器需要经过身份验证的用户的每个资源,每个请求都必须包含此标头

    因此,当您捕获请求时,可以使用标头将请求伪装为发出初始请求的用户

    HTTPS将防止窃听,但这并不能使其更加安全。另见