近日,网络安全研究人员发现一组异常的移动应用程序,这些应用程序向民众公开了 Twitter API 密钥,据统计,此类应用程序多达 3200 个。
网络安全公司 CloudSEK 首次发现了这一问题,该公司在检查大型应用程序集合是否存在数据泄漏时,发现了大量应用程序泄露了 Twitter API 密钥。
据悉,造成这一现象的主要原因是开发者在整合移动应用与 Twitter 时,会得到一个特殊的认证密钥(或称),允许其移动应用与 Twitter API 交互。当用户使其 Twitter账户与移动应用联系起来时,这些密钥允许其他人代表用户行事,例如通过 Twitter 登录,创建推文,发送 DM 等。
当攻击者设法得到这些密钥后,就能够以关联的 Twitter 用户身份进行操作,建议大家不要将密钥直接存储在移动应用中,避免攻击者找到并利用它们。
CloudSEK 强调,API 密钥泄漏一般是应用程序开发人员造成的,他们在开发过程中将认证密钥嵌入到 Twitter API 中,但是之后并未删除。
在这些情况下,凭据存储在以下位置的移动应用程序中:
- 阅读某人的直接消息;
- 进行转发和点赞;
- 创建或删除推文;
- 删除或添加新关注者;
- 访问帐户设置;
- 更改显示图片。
据 CloudSEK 称,攻击者可以使用这些暴露的令牌创建一个拥有大量粉丝的 Twitter “大军”,以宣传虚假新闻、恶意软件活动, 加密货币诈骗等。
易受攻击的应用程序的细分 (CloudSEK)
凭证被存储在移动应用程序中的以下位置。
- resources/res/values/strings.xml
- source/resources/res/values-es-rAR/strings.xml
- source/resources/res/values-es-rCO/strings.xml
- source/sources/com/app-name/BuildConfig.java
CloudSEK 建议开发人员使用 API 密钥轮换来保护身份验证密钥,此举可以使暴露的密钥在几个月后失效。
密钥泄露产生那些影响?
从 CloudSEK 分享给 BleepingComputer 的受影响应用程序清单来看,这些应用程序的下载量普遍在 5 万到 500 万之间,其中主要包括城市交通伴侣、广播调谐器、图书阅读器、事件记录器、报纸、电子银行应用、自行车 GPS 应用等。
值得一提的是,在网络安全公司 CloudSEK 发出警报一个月后,大多数公开暴露 API密钥的应用程序表示没有收到任何通知,也没有解决密钥泄露问题。
参考文章:https://www.bleepingcomputer.com/news/security/over-3-200-apps-leak-twitter-api-keys-some-allowing-account-hijacks/