因使用域名過期郵箱,數(shù)千 npm 帳號面臨被輕易劫持風(fēng)險(xiǎn)
微軟和北卡羅來納州立大學(xué)去年合作開展了一個(gè)學(xué)術(shù)研究項(xiàng)目,研究人員通過分析上傳到 Node Package Manager (npm) 的大約 163 萬個(gè)庫的元數(shù)據(jù),發(fā)現(xiàn)數(shù)千名 JavaScript 開發(fā)者正在使用域名過期的郵箱作為其 npm 帳戶,從而導(dǎo)致他們托管在 npm 的項(xiàng)目會輕易被劫持。
據(jù)稱,npm 上所有用戶的郵件地址都是公開的。通過請求個(gè)人資料頁面即可返回郵件地址:
npm 是最大的 JavaScript 軟件包倉庫。研究人員發(fā)現(xiàn) 2818 名項(xiàng)目維護(hù)者的帳戶仍在使用域名過期的郵箱地址,而部分過期的域名正在 GoDaddy 等網(wǎng)站上出售。因此研究人員認(rèn)為,攻擊者可通過購買已過期的域名,然后在郵件服務(wù)器上重新注冊這些維護(hù)者的地址,從而實(shí)現(xiàn)重置維護(hù)者的帳戶密碼并接管 npm 軟件包。
下面的圖片展示了一名開發(fā)者嘗試接管ajv-formats軟件包(維護(hù)者是additiveamateur)并成功“劫持”的過程:
0. 首先是獲取帳戶的注冊郵件地址:carlo[@]machina.bio
1. 購買已過期的域名:machina.bio
2. 通過域名接管了帳戶的郵件地址后,嘗試重置密碼:
此步驟遭遇了一些問題,但開發(fā)者通過聯(lián)系技術(shù)支持得到解決:
最后成功重置了ajv-formats軟件包維護(hù)者的帳戶密碼:
登錄并成功接管項(xiàng)目:
研究人員表示,他們在研究報(bào)告發(fā)布前將其研究結(jié)果發(fā)送給了 npm 安全團(tuán)隊(duì),雖然對方?jīng)]有反饋,但在研究報(bào)告正式發(fā)布前,npm 宣布了逐步為開發(fā)者帳戶強(qiáng)制執(zhí)行 2FA(雙因素認(rèn)證)的計(jì)劃。
本文轉(zhuǎn)自O(shè)SCHINA
本文標(biāo)題:因使用域名過期郵箱,數(shù)千 npm 帳號面臨被輕易劫持風(fēng)險(xiǎn)
本文地址:https://www.oschina.net/news/182636/npm-accounts-use-email-addresses-with-expired-domains