1500个APP暴露Algolia API密钥,影响超300万用户。
Algolia 成立于2012年,是一个面向开发者的搜索功能API接口,为网站及APP的开发者提供搜索功能接口,可以为其提供发现和推荐功能,用户超过11万企业。新加坡网络安全公司CloudSEK研究人员发现有1550个移动APP会泄露Algolia API密钥,敏感内部服务和存储的用户信息有泄露的风险。
Algolia API系统有5类API key,分别对应Admin、Search、Monitoring、Usage和Analytics功能。这些API key中只有Search是可公开的,可以在前端代码中看到,帮助用户在APP中执行搜索查询。Monitoring key 为管理员提供集群状态信息。Usage和Analytics为用户提供使用统计数据。Admin key提供对其他4类API服务的访问,以及:
浏览、删除索引;
添加、删除记录;
列出索引;
获取、设置索引设置;
获得访问记录。
滥用以上服务可以宝库用户的敏感数据,比如用户设备、网络访问信息、使用统计数据、检索记录和其他相关信息的操作。
CloudSEK自动扫描工具发现有1550个APP泄露了Algolia API key和应用ID,攻击者利用这些泄露的信息可以实现对内部信息的非授权访问。这些暴露Algolia Admin API key的APP下载次数累计超过325万,其中有APP下载次数超过百万。其中32个APP会泄露admin secret,其中包括57个唯一的管理员密钥,攻击者利用泄露的管理员密钥可以访问敏感用户信息或修改APP索引记录和设置。
攻击者利用admin API key可以执行许多关键操作,并实现对敏感数据的访问,比如攻击者可以检索或者查看敏感数据。根据APP的版本,攻击者可以利用这些敏感访问更多的敏感数据。
图 API keys 暴露引发的攻击流程
图 暴露API的APP种类和下载次数
暴露密钥最多的APP种类为商城APP,下载次数超过230万次。此外,还有新闻APP、食品和饮料、教育、健身、医疗和商业APP,累计下载量超过95万次。
CloudSEK已联系了受影响的APP开发者,告知了密钥暴露情况和潜在的安全风险。
完整技术分析参见:https://cloudsek.com/whitepapers_reports/hardcoded-algolia-api-keys-could-be-exploited-by-threat-actors-to-steal-millions-of-users-data/
参考及来源:https://www.bleepingcomputer.com/news/security/apps-with-over-3-million-installs-leak-admin-search-api-keys/