API密钥在1Password开发者网站JavaScript文件中的暴露
摘要
研究人员报告称,在1Password公共开发者文档网站(developer.1password.com)的一个JavaScript文件中暴露了一个API密钥。该密钥是故意嵌入的,用于启用Algolia驱动的搜索功能。这是一个公开的、客户端密钥,权限严格受限,不授予对任何敏感数据或特权操作的访问权限。
此行为符合预期,并与Algolia针对面向公众的搜索实现的推荐集成实践一致。
此外,developer.1password.com是一个明确不在我们漏洞赏金计划范围内的资产。我们鼓励所有研究人员在提交报告之前仔细审查我们的计划简介,以确保关注范围内的目标和高影响力的发现。
基于这些因素,该报告被关闭为“不适用”。
时间线
- 2025年1月6日,3:33 AM UTC:sudosu001(已完成ID验证的黑客)向1Password - Enterprise Password Manager提交了一份报告。
- 2025年1月6日,4:10 PM UTC:agrvg_jqj357关闭了报告并将状态更改为“不适用”。
- 2025年7月16日,1:43 AM UTC:sudosu001请求披露此报告。
- 2025年7月18日,4:20 PM UTC:agkayvee(1Password员工)将严重性从高(7.5)更新为无。
- 2025年7月18日,4:21 PM UTC:agkayvee将范围从https://events.1password.com/更改为“所有其他域、子域以及非您拥有的1Password账户,包括您是用户但不是所有者的账户,均不在范围内”。
- 2025年7月18日,4:23 PM UTC:agkayvee同意披露此报告,报告被披露。
报告详情
问题描述
在1Password的公共开发者文档中可访问的JavaScript文件中暴露了一个API密钥。这种暴露可能允许未经授权访问依赖此密钥的API或服务,导致一系列安全问题,包括数据泄漏或受影响系统中的未经授权操作。
重现步骤
- 访问以下URL:https://developer.1password.com/assets/js/main.43f8ae7b.js
- 检查文件内容。
- 定位嵌入在JavaScript代码中的暴露API密钥(明文)。
- 确认密钥的可访问性,无需任何身份验证或限制。
支持材料/参考
- 暴露文件的直接链接:https://developer.1password.com/assets/js/main.43f8ae7b.js
影响
攻击者可能使用暴露的API密钥:
- 访问或操纵与其关联服务中的敏感数据。
- 执行未经授权的操作或请求,可能导致数据泄露或服务中断。
- 如果暴露的密钥与关键资源相关联,可能导致声誉损害。
附件
- 1个附件:F3917270: ev.png
响应与处理
1Password员工回应称,该API密钥用于页面上的Algolia搜索,且故意公开暴露以使搜索功能正常工作。密钥的权限已适当限制以供公共使用。
建议未来在报告中包括业务影响,并在报告发现时解释“作为攻击,我可以…”。报告被标记为“不适用”。
报告元数据
- 报告日期:2025年1月6日,3:33 AM UTC
- 报告者:sudosu001
- 报告对象:1Password - Enterprise Password Manager
- 报告ID:#2923061
- 严重性:无(0.0)
- 披露日期:2025年7月18日,4:23 PM UTC
- 弱点:信息泄露
- CVE ID:无
- 赏金:隐藏
- 账户详情:无
注意:此报告涉及公开API密钥的暴露,但密钥权限受限,且该资产不在漏洞赏金计划范围内,因此被判定为不适用漏洞。