本文來自嘶吼網(wǎng)。
過3200個App泄露推特API密鑰,可實(shí)現(xiàn)賬戶劫持。
網(wǎng)絡(luò)安全公司CloudSEK研究人員發(fā)現(xiàn)有3207個手機(jī)APP暴露了推特API密鑰,攻擊者利用暴露的推特API密鑰可以接管與該APP關(guān)聯(lián)的用戶推特賬戶。
背景
在開發(fā)手機(jī)APP過程中,可以將推特功能融入到手機(jī)APP中,具體來說,開發(fā)者會擁有一個特殊的認(rèn)證密鑰或token,允許手機(jī)APP與推特API進(jìn)行交互。當(dāng)用戶將推特賬戶與手機(jī)APP關(guān)聯(lián)時,該密鑰就可以讓APP以用戶的身份進(jìn)行操作,比如通過推特登錄、創(chuàng)建新推文、發(fā)送推文等。有了認(rèn)證密鑰后,任何人都可以以相關(guān)的推特用戶身份來執(zhí)行動作,因此不建議將密鑰直接保存在手機(jī)APP中。
CloudSEK稱,API密鑰泄露一般都是APP開發(fā)者誤配置導(dǎo)致的,比如將推特API認(rèn)證密鑰配置在手機(jī)APP中,但是在APP發(fā)布時忘記刪除。一般,憑證會保存在手機(jī)APP的以下位置:
·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
分析
研究人員對上傳到Bevigil的手機(jī)APP進(jìn)行分析,發(fā)現(xiàn):
·5603個APP泄露了Twitter API key/token;
·5033個APP泄露了Twitter secret/token secret;
·4810個APP泄露了Twitter API key/token和Twitter secret/token secret
這4810個APP中,有3207個APP的Twitter API key/token和Twitter secret/token secret都是有效的。其中230個APP泄露了所有的4個認(rèn)證憑證,可以用于完全控制推特賬戶來執(zhí)行以下敏感操作:
·讀取直接消息;
·回復(fù)和點(diǎn)贊推文;
·創(chuàng)建或刪除推文;
·移除或添加新的關(guān)注;
·訪問賬戶設(shè)置;
·修改展示圖片。
其中有57家公司還進(jìn)行了Twitter API企業(yè)版訂閱,需要每月支付149美元給推特。
CloudSEK稱,泄露后的API被濫用的場景之一就是創(chuàng)建推特水軍來推廣虛假新聞、惡意軟件活動和加密貨幣垃圾郵件等。
影響和修復(fù)
CloudSEK給出的受影響的應(yīng)用列表中包含下載量在5萬到500萬的APP,涉及城市交通、電子書閱讀器、事件記錄器、新聞、電子銀行APP、GPS app等。
在CloudSEK向受影響的APP開發(fā)公司發(fā)布告警消息后,大多數(shù)企業(yè)沒有在1個月內(nèi)給出回復(fù),目前大多數(shù)受影響的APP仍未被修復(fù)。
如何應(yīng)對
除了不將APK Key直接嵌入代碼中外,開發(fā)者還需遵循以下安全編碼和部署實(shí)踐:
·將審核流程標(biāo)準(zhǔn)化:在發(fā)布前需要對代碼進(jìn)行檢查、審查和批準(zhǔn),標(biāo)準(zhǔn)化的流程可以預(yù)防密鑰泄露。
·隱藏密鑰:環(huán)境變量是引用密鑰的一種方式,要確保源碼中包含環(huán)境變量的文件沒有被包含進(jìn)去。
·更換API key:更換密鑰可以幫助減少泄露密鑰帶來的風(fēng)險。
本文翻譯自:https://www.bleepingcomputer.com/news/security/over-3-200-apps-leak-twitter-api-keys-some-allowing-account-hijacks/