歡迎來到 黑吧安全網 聚焦網絡安全前沿資訊,精華內容,交流技術心得!

Facebook CDN系統中的文件下載漏洞

來源:本站整理 作者:佚名 時間:2019-06-13 TAG: 我要投稿


這篇Writeup分享的是Facebook CDN系統的文件下載漏洞,Facebook CDN平臺中的文件名會被以某種加密方法進行編碼,當發生請求調用或下載時則指向一個加密字符串作為代替,作者通過破解了這種加密方法,可以任意修改其中與文件名對應的加密串,從而實現CDN系統中文件下載。該漏洞影響Facebook多個公開和內部CDN文件托管平臺,以下是相關分享。
漏洞說明
Facebook平臺中被選中下載的文件在被執行某種加密算法之后,會以一個加密字符串進行代替。我可以decode這種加密算法并對其生成的加密串進行修改,以指向任意我想下載的文件。目前,這種加密算法廣泛應用于Facebook各平臺中,考慮到Facebook正在實施修復,在此我就不作過多破解方法透露,待修復完成再做詳細討論。
漏洞復現
Facebook平臺基于一些內容分發網絡(CDN)來實現用戶上傳的海量文件存儲和分發,這些文件通常包含圖片、視頻和文檔等等。這里,就拿Facebook 的公開CDN系統 scontent.*.fbcdn.net來說,它代表了以scontent開頭的一類CDN系統,它負責托管用戶上傳的大量文件。我們可以先來看看這類CDN系統的托管文件樣式:
https://scontent.ftun12-1.fna.fbcdn.net/v/t39.2365-6/21276262_1737282336573228_8492096834724954112_n.jpg?_nc_cat=108&oh=4e4c1ebd627f4a10dbbb3dd05a898499&oe=5D665C03
也就是說,通過這個鏈接可以下載到其中相關的.jpg文件21276262_1737282336573228_8492096834724954112_n.jpg,注意,這個下載鏈接中,其jpg文件名或文檔ID(file id)為21276262_1737282336573228_8492096834724954112是一個加密串,另外,“oe” 和 “oh”參數對下載文件形成了一個簽名,這兩個簽名參數會隨時間和文件權限而改變,目的在于防止對CDN系統的未授權破力枚舉下載文件。
拿上述CDN的下載文件21276262_1737282336573228_8492096834724954112_n.jpg來說,經我測試發現,Facebook移動用戶可以在Facebook服務端https://lookaside.facebook.com/redrawable/下,通過構造包含有指向下載文件加密串21276262_1737282336573228_8492096834724954112的請求,就能從Facebook的CDN系統scontent.ftun12-1.fna.fbcdn.net中下載到對應文件。因為我已成功破解了Facebook的這種文檔ID加密方法,所以,我可以嘗試修改這個文檔ID加密串以指向其它文件(如音視頻文檔),實現Facebook CDN系統中的任意托管文件下載。
之后,我把這種方法稍做修改,竟然能成功從Facebook的一些內部(非公開直接訪問)CDN系統如interncache-*.fbcdn.net,獲取到一些文件,這些文件涉及到了Facebook的部份敏感源代碼,以及移動端用戶的APP應用崩潰日志等。其中這些內部文件的相關文檔ID信息可從一些Facebook開源項目的提交內容中去查找,當然,也可以通過對比分析之前不同版本的Facebook移動APP程序來發現。待Facebook完全修復該漏洞之后,我會再對技術細節做詳細披露。
 

【聲明】:黑吧安全網(http://www.pcpbjo.tw)登載此文出于傳遞更多信息之目的,并不代表本站贊同其觀點和對其真實性負責,僅適于網絡安全技術愛好者學習研究使用,學習中請遵循國家相關法律法規。如有問題請聯系我們,聯系郵箱[email protected],我們會在最短的時間內進行處理。
  • 最新更新
    • 相關閱讀
      • 本類熱門
        • 最近下載
        云南快乐十分前三电视