隱蔽重定向漏洞

隱蔽重定向(英語:Covert Redirect[1],是關於單點登錄(Single sign-on)的安全漏洞。因其對OAuthOpenID的影響而為人所知[2]。由新加坡南洋理工大學物理和數學科學學院博士生王晶(Wang Jing)發現並命名[3]

隱蔽重定向的一個重要應用是进行钓鱼式攻击[4],別的網站釣魚是用假的網站,而隱蔽重定向卻是用真的知名網站進行釣魚。這是一種完美釣魚方式[5]

安全漏洞

2014年5月,繼OpenSSL漏洞後,開源安全軟件再曝安全漏洞。新加坡南洋理工大學研究人員王晶發現,OAuth2.0和OpenID授權接口的網站存隱蔽重定向漏洞、英文名為“Covert Redirect”。該漏洞OSVDB編號106567[6]。SCIP編號vuldb.13185[7]。中国國家信息安全漏洞共享平臺編號CNVD-2014-02785[8]。Bugtraq ID是67196[9]

該漏洞首先由CNET報道[10],並由此引起廣泛關註和大量討論。雅虎,福克斯新聞,黑客新聞,鳳凰網,人民網等媒體認為該漏洞影響很大[11][12][13][14][15][16][17]。攻擊者創建一個使用真實站點地址的彈出式登錄窗口——而不是使用一個假的域名——以引誘上網者輸入他們的個人信息。而Mashable等則認為該漏洞是個舊漏洞[18]

最後的主流結論是,隱蔽重定向是一個值得註意的漏洞。該漏洞達不到HeartBleed的級別,但仍然是對授權應用權限的一個提醒[19][20]

OAuth和OpenID也分別對此漏洞進行了說明和建議[21][22]

入侵技術

攻擊者創建一個使用真實站點地址的彈出式登錄窗口——而不是使用一個假的域名——以引誘上網者輸入他們的個人信息[23]

漏洞危害

黑客可利用漏洞給釣魚網站(phishing)“變裝”,用知名大型網站鏈接引誘用戶登錄釣魚網站,一旦用戶訪問釣魚網站並登錄授權,黑客即可讀取其在網站上存儲的私密信息[2]

騰訊QQ、新浪微博、阿里巴巴淘寶、支付寶、搜狐網、網易、人人網、開心網、亞馬遜、微軟Live、WordPress、eBay、PayPal、Facebook、Google、Yahoo、LinkedIn、VK.com、Mail.Ru、Odnoklassniki.ru、GitHub等大量知名網站受影響[2]

鑒於OAuth和OpenID被廣泛用於各大公司——如微軟、Facebook、Google、以及LinkedIn——Wang表示他已經向這些公司已經了匯報。Wang聲稱,微軟已經給出了答復,調查並證實該問題出在第三方系統,而不是該公司的自有站點。Facebook也表示,“短期內仍無法完成完成這兩個問題的修復工作,只得迫使每個應用程序平臺采用白名單”。至於Google,該公司正在追蹤OpenID的問題;而LinkedIn則聲稱它已經在在博客中說明這一問題[4]

其實漏洞不是出現在OAuth這個協議本身,這個協議本身是沒有問題的,之所以存在問題是因為各個廠商沒有嚴格參照官方文檔,只是實現了简版。問題的原因在於OAuth的提供方提供OAuth授權過程中沒有對回調的URL進行校驗,從而導致可以被賦值為非原定的回調URL,就可以導致跳轉、XSS等問題,甚至在對回調URL進行了校驗的情況可以被繞過[23]

漏洞影響

通過對中國部分提供OAuth 2.0的網站進行測試和調查,發現均不同程度的存在以上的問題。

OAuth提供方 回調URL校驗 可利用第三方應用漏洞 校驗繞過
新浪微博 是(已修復)
百度 未測試
騰訊 (已修復)
360 未測試 未測試
開心網
人人網 未測試
淘寶網 未測試
天涯
搜狐
網易微博

從測試結果可以看出,除了百度繞過未進行測試外,其他都存在問題,而且好幾個甚至對回調URL都沒有進行校驗,而對回調URL進行校驗了的又可以被繞過[23]

漏洞防範

OAuth提供方

  • 對redirect_uri進行全路徑驗證,避免URL跳轉情況
  • 參數state即用即毀
  • 首次授權,強制驗證
  • 獲取access_token,驗證App secret
  • 回調URL進行跳轉校驗等
  • 加強redirect_uri驗證,避免繞過[23]

普通用戶

對於普通用戶來說,其實沒有什麼好恐慌的,這次問題的利用的前提是對構造URL的訪問,所以主要是針對URL提高警惕和識別,需要注意以下幾點:

  • 只授權給可信的第三方應用
  • 不要訪問不明來路的鏈接,正常的應用授權應該是通過頁面中的登录按鈕等方式進行的[23]

背景

OAuth是一個被廣泛應用的開放登陆協議,允許用戶讓第三方應用訪問該用戶在某一網站上存儲的私密的信息(如照片,視頻,聯繫人列表),而無需將用戶名和密碼提供給第三方應用。這次曝出的漏洞,可將OAuth 2.0的使用方(第三方網站)的回跳域名劫持到惡意網站去,黑客利用XSS漏洞攻擊就能隨意操作被授權的帳號,讀取用戶的隱私信息。像騰訊、新浪微博等社交網站一般對登入回調地址沒有任何限制,極易遭黑客利用[16]

參見

參考文獻

  1. ^ Covert Redirect. Tetraph. May 01 2014. [2014-11-08]. (原始内容存档于2014-11-08). 
  2. ^ Wang Jing. [2014-11-08]. (原始内容存档于2014-11-08). 
  3. ^ 4.0 4.1 兩款互聯網登錄系統曝出重大漏洞短期內或無法修復. 鳳凰網. 5月03 2014. [2014-11-08]. (原始内容存档于2014-11-08). 
  4. ^ Facebook, Google Users Threatened by New Security Flaw. 雅虎. 5月02 2014. [2014-11-08]. (原始内容存档于2021-01-21). 
  5. ^ OAuth / OpenID Unspecified Application Redirect Weakness. OSVDB. 5月02 2014. [永久失效連結]
  6. ^ VulDB: OAuth/OpenID 2.0 privilege escalation. SCIP. 5月12 2014. [2014-11-08]. (原始内容存档于2016-03-15). 
  7. ^ OAuth 2.0隱蔽重定向漏洞. 國家信息安全漏洞共享平臺. 5月06 2014. (原始内容存档于2014-11-08). 
  8. ^ OAuth and OpenID Open Redirection Vulnerability. SecurityFocus. 2 May 2014 [15 November 2014]. (原始内容存档于2021-01-22). 
  9. ^ Serious security flaw in OAuth, OpenID discovered. CNET. 5月02 2014. [2014-11-08]. (原始内容存档于2015-11-02). 
  10. ^ Facebook, Google users threatened by new security flaw. 福克斯新聞. 5月05 2014. [2014-11-08]. (原始内容存档于2015-09-24). 
  11. ^ Nasty Covert Redirect Vulnerability found in OAuth and OpenID. Thehackernews. 5月03 2014. [2014-11-08]. (原始内容存档于2014-11-08). 
  12. ^ OAuth與OpenID登錄工具曝出重大漏洞. 網易. 5月03 2014. [2014-11-08]. (原始内容存档于2014-11-08). 
  13. ^ 兩款互聯網登錄系統曝出重大漏洞短期內或無法修復. 搜狐. 5月04 2014. [2014-11-08]. (原始内容存档于2014-11-08). 
  14. ^ OAuth和OpenID兩款登六系統再曝重大漏洞. 太平洋電腦網. 5月04 2014. (原始内容存档于2014-11-08). 
  15. ^ 16.0 16.1 Oauth2.0協議曝漏洞大量社交網隱私或遭泄露. 人民網. 5月04 2014. (原始内容存档于2014-11-08). 
  16. ^ OAuth與OpenID登錄工具曝出重大漏洞. CSDN. 5月04 2014. [2014-11-08]. (原始内容存档于2015-07-21). 
  17. ^ Another Security Flaw Gets the Heartbleed Treatment, But Don't Believe the Hype. Tetraph. 3 May 2014 [10 November 2014]. (原始内容存档于2021-03-27). 
  18. ^ Covert Redirect Flaw in OAuth is Not the Next Heartbleed. Symantec. May 03 2014. [2014-11-08]. (原始内容存档于2019-06-12). 
  19. ^ 'Covert Redirect' vulnerability impacts OAuth 2.0, OpenID. SC Magazine. 2 May 2014 [10 November 2014]. (原始内容存档于2016-03-17). 
  20. ^ OAuth Security Advisory: 2014.1 "Covert Redirect". OAuth. 5月04 2014. [2014-11-08]. (原始内容存档于2015-11-21). 
  21. ^ Covert Redirect. OpenID. 5月15 2014. [2014-11-08]. (原始内容存档于2014-10-20). 
  22. ^ 23.0 23.1 23.2 23.3 23.4 針對近期“博全球眼球OAuth漏洞”的分析與防範建議. 知道創宇. 5月06 2014. [2014-11-08]. (原始内容存档于2014-11-08). 

外部連結