白帽駭客David Schütz公開了他在2019年所發現的Google漏洞,該漏洞可讓惡意攻擊者透過Google Ads,一個影格一個影格地偷走YouTube私人影片的影像內容。Google已經確認該漏洞存在,並且已經完成修復,還透過漏洞獎勵計畫發送5,000美元的獎勵給David Schütz。

YouTube服務本身並不會直接洩漏私人影片內容,而是必須要透過Google Ads。Google Ads是一個廣告服務,可以讓使用者製作廣告,在YouTube等Google服務中播放,包括在YouTube影片前的廣告影片,都可以在Google Ads中製作。而在Google Ads中,有一個稱為Moments的功能,可讓廣告商可以指定影片時間,標記像是企業商標出現的時間戳。

Moments便是洩漏私人影片內容的主角,David Schütz提到,當用戶標記一個指定時刻,則Moments功能便會向/GetThumbnails端點發出POST請求,請求訊息會包括影片的ID和以毫秒為單位的影片時間,而取得的回應則是Base64編碼影像,以用於Google Ads的縮圖。而Moments的漏洞,使得請求訊息中的影片ID,可以使用非用戶所有的私人影片,也就是說,這是一個不安全直接物件參照(Insecure Direct Object Reference,IDOR)漏洞,可讓惡意人士任意存取私人影片中的任意影格。

David Schütz實作了這個IDOR漏洞的概念性驗證,只要計算好每影格在螢幕上停留的時間,就能重複動作擷取不同影格,並且串接在一起還原成為影片,這個Moments漏洞提供攻擊者,下載任何用戶YouTube私人影片的能力。

不過,這個漏洞仍有其限制,在實際應用上,攻擊者必須要知道目標私人影片的ID,因此攻擊者要大量取得影片ID仍有其障礙,再來是,惡意攻擊者取得的內容是圖片,因此不會有聲音訊號,私人影片聲音內容不會遭到洩漏。另外,取得的Base64編碼影像解析度很低,但是仍為足以辨識影片內容的程度。

David Schütz在2019年12月向Google回報了這個漏洞,Google也迅速地確認該漏洞,並且暫時禁用Moments功能,在2020年1月,Google就發出漏洞獎勵獎金5,000美元。David Schütz表示,兩個不同後臺溝通的環節,通常是值得關注的地方,因為兩個產品團隊可能只了解各自的系統,並在使用其他產品時,遺漏重要細節,因此容易出現安全性漏洞。


Advertisement

更多 iThome相關內容