基於非瀏覽器的跨域HTTP請求攻擊
截至本文發布時,此漏洞還沒有發布CVE編號,如果有CVE編號的消息,我將第一時間進行後續報道。
此類安全漏洞漏洞是一個由於在HTTP API設計和實施過程中可能出現的安全情況,這些漏洞可能會被用於繞過網路安全策略並啟用數據交換或未經授權的API。
由於此漏洞依賴於Google Cloud Storage SDK,所以當前版本的rclone用戶可能會受到此次攻擊的影響, Rclone 是一款的命令行工具,支持在不同對象存儲、網盤間同步、上傳、下載數據。如果用戶使用rclone sync命令在不同的Google雲端存儲分區之間轉移數據,則會創建一種攻擊環境,即Google Cloud Storage API伺服器選擇的任意URL的完整內容將以靜默方式發送給Google。
廣義上講,此漏洞是一個混淆代理問題,因此它會影響那些依賴登錄許可權進行訪問控制的進程,此攻擊建立在Joey Hess在CVE-2018-10857 (更多信息點此)中發現和披露的漏洞之上。
構建非瀏覽器應用程序的開發人員並不能從現代web瀏覽器提供的安全域隔離框架中獲益,他們仍然有責任考慮並減少跨信任域進行意外交互的機會。
漏洞攻擊場景
1.對由API伺服器選擇的URL執行操作的API客戶端;
2.在API伺服器提供的URL重定向的API客戶端上執行任務;
使用易受中間人攻擊的網路傳輸的API客戶端,不僅會受到一般黑客的攻擊,而且還會受到能夠控制API伺服器的攻擊者的攻擊,也能受到能夠執行中間人攻擊的攻擊者的攻擊。
已知受影響的API
1.Google雲端存儲;
2.Backblaze推出的雲存儲服務B2;
3.Yandex.Disk雲存儲服務;
Google Cloud提供的Python&Go SDK都易受此攻擊的影響,此漏洞也可能適用於其他雲存儲API。
攻擊示例詳解
在RESTful API實現的上下文中,具有API伺服器控制權的攻擊者,會向客戶端返回一個他們希望客戶端推送或提取數據的URL。或者,API伺服器使用HTTP重定向來使客戶端與API伺服器選擇的URL進行交互。
這使得攻擊者可以讓客戶端從攻擊者指定的URL中請求數據,進而將得到的數據用於不同的信任域,從而使得數據泄露。在將數據發送到任意URL的客戶端中,該漏洞可以使得攻擊者將PUT或POST請求發送到系統設計人員可能認為無法訪問的URL中。
客戶端經常可以訪問那些保密的URL,不過某些軟體可以使用 『file://』 語法來允許訪問任意系統文件,託管在本地或私有IP地址上的URL經常無需身份驗證即可被訪問。在雲環境中,169.254.169.254端的可用數據有時會包含一些憑證,這些憑證可以創建重要的許可權升級機會,此時任何通過權威認證的數據都會被暴露。
緩解措施
1.創建可安全訪問的網址或網址格式的白名單;
2.在應用程序的適當抽象級別實施同源策略,選擇適當的信任域。
3.避免在重定向的URL中進行操作,如果進行了URL重定向,請仔細考慮。
4.不要接受任何來自遠程伺服器的任意URL,在客戶端生成所有URL,使用URL命名策略有助於搞清楚何時跨越信任域。
5.只使用不容易受到中間人攻擊的配置,如果使用HTTPS,請確保進行適當的證書驗證。
6.特別要注意DNS重新綁定攻擊,注意IPv4、IPv4和IPv6的IP空間映射。
TAG:嘶吼RoarTalk |