Amazon/Alexa 子域名存在 CORS 誤配置和跨站腳本漏洞

Checkpoint研究人員分析發現部分Amazon/alexa 子域名存在cors(跨域資源共享)誤配置和跨站腳本漏洞。攻擊者利用XSS可以獲取CSRF token,并以受害者名義執行動作。
攻擊者利用這些漏洞可以:
- 在用戶的Alexa 賬號中安裝app;
- 獲取用戶Alexa賬號中安裝的app列表;
- 移除已安裝的app;
- 獲取受害者在Alexa中的聲音歷史數據;
- 獲取受害者的個人信息。
從實際效果來看,攻擊者利用這些漏洞利用可以在目標受害者Alexa 賬號上安裝和移除應用、訪問聲音歷史記錄、通過應用交互來獲取個人信息(用戶調用安裝的應用時與引用的交互)。
成功的漏洞利用只需要點擊攻擊者偽造的Amazon 鏈接就可以。
PoC參見https://www.youtube.com/embed/xfqGYic4hj8。
研究人員在2020年6月將漏洞報告給了亞馬遜,隨后亞馬遜修復了相關漏洞。
技術細節
研究人員首先測試了Alexa 手機應用發現了預防流量攔截的SLL pinning機制。研究人員使用Frida SSL工具(https://codeshare.frida.re/@pcipolloni/uni...) 繞過SSL pinning并分析流量,可以明文查看。
研究人員分析應用流量發現了app的多個請求都錯誤配置了CORS策略,允許從任意的Amazon 子域名發送Ajax 請求。這樣能夠在Amazon 子域名進行代碼注入的攻擊者就可以在其他Amazon 子域名上執行跨域攻擊。
請求:

響應:

其中返回Alexa 上安裝的應用列表的請求還會在響應中發送CSRF token,如下所示:

研究人員用CSRF token來以受害者名義執行操作,比如遠程安裝和啟用新的功能(應用)。
為成功發現攻擊,還需要利用Amazon 子域名上的XSS 漏洞來使用受害者的id cookie。因此,研究人員可以利用CSRF攻擊和CORS 錯誤配置來以受害者名義執行操作。通過XSS漏洞,攻擊者可以獲取CSRF token并以受害者名義執行動作。
在下面的到track.amazon.com的請求中,有2個參數:paginationToken 和pageSize。

將pageSize 修改為非數字的字符會引發服務器端的錯誤,這將會反射到客戶端。研究人員獲得了狀態碼500 和JSON 作為響應。響應中的content-type 是text/html 而不是application/json,因此可以操作參數來實現代碼執行:

然后就可以用代碼注入來觸發到skillsstore.amazon.com 的Ajax請求,并包含受害者的憑證。

上面的請求會發送所有的cookie到skills-store.amazon.com,并從響應中竊取csrfToken。然后研究人員使用csrfToken來執行CSRF攻擊,并悄悄地在受害者的Alexa 賬號上安裝應用。
安裝id為B07KKJYFS9的應用的PoC代碼如下:

Id可以從Alexa Skill Store(應用商店)獲取:

受害者點擊惡意鏈接后,skill(應用)就會添加到Alexa賬號中:

在PoC中,Amazon Prime Insider就加入到了受害者的Alexa賬號中。
攻擊流
攻擊的執行有許多不同的方式。下面介紹一種攻擊者在用戶的Alexa 上執行動作的例子。
-
用戶點擊將將用戶導向攻擊者注入了惡意代碼的amazon.com 子域名后。
-
攻擊者會發送一個含有用戶cookie的新的Ajax請求到amazon.com/app/secure/your-skills-page, 并獲取Alexa賬戶上安裝的應用列表,以及響應中的CSRF token。
-
攻擊者可以用CSRF token來移除安裝應用列表中的應用。
-
攻擊者還可以安裝應用。
-
一旦用戶嘗試調用安裝的應用,就會觸發攻擊者的能力。
攻擊者能力
獲取應用安裝列表
攻擊者利用下面的請求可以查看受害者賬戶中的完整應用列表。這些信息可以用于之后替換受害者的應用。

移除安裝的應用
攻擊者利用下面的請求可以從受害者賬戶中移除受害者賬戶中的應用。刪除的應用是之前API請求中接收到的應用列表的一部分。

獲取受害者聲音歷史數據
攻擊者利用下面的請求可以獲取受害者聲音歷史數據。攻擊者可以查看聲音命令歷史和Alexa對這些命令的響應。這會導致個人信息的暴露,比如銀行歷史數據。

Amazon并不會記錄銀行登陸憑證,但是交互的過程會被記錄下來,因為可以訪問聊天歷史,因此可以訪問受害者與銀行應用的交互,并獲取其數據歷史。研究人員發現根據用戶Alexa賬戶上安裝的應用可以獲取用戶名和手機號。
受害者個人信息
下面的請求可以用來獲取用戶的個人信息,比如家庭地址和其他簡介中的個人信息。

結論
像Alexa這樣的智能語音助手在我們生活中使用的越來越普遍。隨著相關技術的不斷發展,這一趨勢會不斷增強。因此,語音助手也會成為攻擊者的新目標,語音助手安全和隱私保護將是未來的一大趨勢。