1Password开发者站点API密钥在JavaScript文件中暴露事件分析

本文详细分析了1Password开发者站点中API密钥在JavaScript文件中暴露的安全事件,包括漏洞发现过程、影响评估以及官方回应,探讨了公开API密钥的安全实践与权限限制。

API密钥在1Password开发者站点的JavaScript文件中暴露

报告摘要

研究人员报告称,在我们的公开开发者文档站点(developer.1password.com)的JavaScript文件中暴露了一个API密钥。该密钥是故意嵌入的,以实现Algolia驱动的搜索功能。这是一个公开的、客户端密钥,具有严格限制的权限,不授予对任何敏感数据或特权操作的访问权限。

此行为符合预期,并与Algolia针对面向公众的搜索实施的推荐集成实践一致。

此外,developer.1password.com是一个明确不在我们漏洞赏金计划范围内的资产。我们鼓励所有研究人员在提交报告之前仔细查看我们的计划简介,以确保专注于范围内的目标和高影响力的发现。

基于这些因素,该报告被关闭为“不适用”。

时间线

  • 2025年1月6日,UTC时间3:33:sudosu001(已完成ID验证的黑客)向1Password - Enterprise Password Manager提交报告。
  • 2025年1月6日,UTC时间16:10:agrvg_jqj357关闭报告并将状态更改为“不适用”。
  • 2025年7月16日,UTC时间1:43:sudosu001请求披露此报告。
  • 2025年7月18日,UTC时间16:20:agkayvee(1Password员工)将严重性从高(7.5)更新为无。
  • 2025年7月18日,UTC时间16:21:agkayvee将范围从https://events.1password.com/更改为所有其他域、子域和1Password账户(非您拥有的,包括您是用戶但不是所有者的账户)超出范围。
  • 2025年7月18日,UTC时间16:23:agkayvee同意披露此报告,报告被披露。

漏洞详情

在1Password的公开开发者文档中,JavaScript文件暴露了一个API密钥。这种暴露可能允许未经授权访问依赖此密钥的API或服务,导致一系列安全问题,包括数据泄漏或受影响系统中的未经授权操作。

重现步骤

  1. 访问以下URL:https://developer.1password.com/assets/js/main.43f8ae7b.js
  2. 检查文件内容。
  3. 定位嵌入在JavaScript代码中的暴露API密钥(明文)。
  4. 确认密钥的可访问性,无需任何身份验证或限制。

支持材料/参考

  • 暴露文件的直接链接:https://developer.1password.com/assets/js/main.43f8ae7b.js

影响

攻击者可能使用暴露的API密钥来:

  • 访问或操作与之关联的服务的敏感数据。
  • 执行未经授权的操作或请求,可能导致数据泄露或服务中断。
  • 如果暴露的密钥链接到关键资源,则造成声誉损害。

官方回应

“此API密钥用于此页面上的Algolia搜索,并且是故意公开暴露以使搜索功能正常工作。该密钥的权限已适当限制以供公共使用。

将来,我们建议在报告中包括业务影响。在报告发现时解释‘作为攻击,我可以……’。我将此报告标记为‘不适用’。”

报告详情

  • 报告日期:2025年1月6日,UTC时间3:33
  • 报告者:sudosu001
  • 报告对象:1Password - Enterprise Password Manager
  • 报告ID:#2923061
  • 严重性:无(0.0)
  • 披露日期:2025年7月18日,UTC时间16:23
  • 弱点:信息泄露
  • CVE ID:无
  • 赏金:隐藏
  • 账户详情:无
comments powered by Disqus
使用 Hugo 构建
主题 StackJimmy 设计