nodeSolidServer / nodeSolidServer/node-solid-server
Access allowed despite authentication failure
还没有人认领这个 Issue。
- 主要语言
- JavaScript
- 星标
- 1.8k
- 派生
- 308
- PR 合并指标
- 30 天内没有已合并 PR
描述
Testing version: 5.6.4
Having got an access token using DPoP, if I make a request to a resource but use the token in Bearer mode instead of signing the request with DPoP again, the request succeeds whilst also reporting access denied.
www-authenticate: [Bearer realm="https://inrupt.net", error="access_denied", error_description="Token does not pass the audience allow filter"]
Similarly, if I create a bad DPoP token using the wrong htm I still get the resource despite:
www-authenticate: [Bearer realm="https://inrupt.net", error="invalid_token", error_description="Invalid PoP token"]
Lastly, creating an invalid DPoP token with a different htu gives me:
www-authenticate: [Bearer realm="https://inrupt.net", error="invalid_token", error_description="htu https://solid-test-suite-alice.inrupt.net/private/asdasd does not match https://solid-test-suite-alice.inrupt.net/private/"]
whilst also succeeding with the request.
I was just about to post this when I thought of other tests I could do. I sent an invalid Bearer token and it still worked:
www-authenticate: [Bearer realm="https://inrupt.net", error="invalid_token", error_description="Access token is not a JWT"]
It seems that having an active session overrides all other security considerations as all the above fail when there is no session.
贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
调研方向
未指定文件、测试或入口点。使用活动会话在版本 5.6.4 上重现报告的案例:将 DPoP 令牌作为 Bearer 使用、无效的 htm 和 htu 值,以及无效的 Bearer 令牌。完成的标准是每次身份验证失败都会拒绝资源访问,而不是允许请求。
由索引模型根据 Issue 内容生成。
评估
- 技术栈
- javascript, nodejs
- 领域
- authentication, backend, security
- Issue 类型
- 缺陷
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 活跃度
- 停滞
- 描述清晰度
- 需要澄清
- 新手友好度
- 25/100