成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

HTTPS的頁面發(fā)送不了HTTP請求?——關(guān)于混合內(nèi)容

phodal / 3386人閱讀

摘要:因為頁面通過加載的初始請求是安全的,但是又加載了不安全的內(nèi)容,因此稱之為混合內(nèi)容。但是即使顯示警告,頁面也已經(jīng)加載,用戶的安全仍然受到了威脅。這就是頁面為什么發(fā)送不了的原因。

我們都知道HTTPS的頁面是發(fā)送不了HTTP請求的,那么是什么原因?qū)е翲TTPS頁面不能發(fā)送HTTP請求呢?如果有發(fā)送的需求,怎么樣才能發(fā)送?最近剛好遇到了這個問題,而且搜了半天沒搜到靠譜的答案,所以有了本文。
1. 故事起源

我在《Jquery ajax, Axios, Fetch區(qū)別之我見》中提到過,F(xiàn)etch作為一種不同于XHR的請求方式,展示了它更多API,以及符合ES規(guī)范的良好前景;更不用說它可以支持POST跨域。剛好工作上有用post方法上報效果數(shù)據(jù)的請求,我小手一揮,不用后臺兄弟們麻煩了,我可以搞定,把效果上報換成了Fetch,美滋滋。

過了一段時間,后臺跑過來說,現(xiàn)在還有些其他HTTP站點的數(shù)據(jù)上報。我試了一下,移動端根本就沒有發(fā)出這個請求,這……

2. 為什么HTTPS頁面發(fā)送不了HTTP請求

有些人說是跨域問題,真的是這樣嗎?

同源策略:1. 協(xié)議相同 2. 域名相同 3.端口相同

盡管HTTPS訪問HTTP確實不符合同源策略中的協(xié)議相同,但是在現(xiàn)代瀏覽器里,即使是域名相同的請求,也是會出現(xiàn)以下報錯,而不是跨域報錯。

這也很好理解,畢竟混合內(nèi)容的安全策略是在瀏覽器端判定的,而是否能跨域要看服務(wù)器返回的Response頭,請求都被瀏覽器block掉了,也就不存在是否跨域的問題。

那什么是混合內(nèi)容?

混合內(nèi)容:初始 HTML 內(nèi)容通過安全的 HTTPS 連接加載,但其他資源(例如,圖像、視頻、樣式表、腳本)則通過不安全的 HTTP 連接加載[1]。因為頁面通過 HTTPS 加載的初始請求是安全的,但是又加載了不安全的HTTP內(nèi)容,因此稱之為混合內(nèi)容。

因為HTTPS的S本身就是Secure的意思,現(xiàn)代瀏覽器最初會針對此類型的內(nèi)容顯示警告,以向用戶表明此頁面包含不安全的資源。但是即使顯示警告,頁面也已經(jīng)加載,用戶的安全仍然受到了威脅。所以沒過多久,Chrome和Firefox就直接阻斷掉了這類的請求。

這就是HTTPS頁面為什么發(fā)送不了HTTP的原因。

2. 突破方式

盡管現(xiàn)在主流瀏覽器都已經(jīng)block掉了HTTPS頁面上的HTTP請求,但是我們還是可以通過被動混合內(nèi)容來發(fā)送get請求。

被動混合內(nèi)容:指的是不與頁面其余部分進行交互的內(nèi)容,包括圖像、視頻和音頻內(nèi)容 ,以及無法與頁面其余部分進行交互的其他資源。

主動混合內(nèi)容: 指的是能與頁面交互的內(nèi)容,包括瀏覽器可下載和執(zhí)行的腳本、樣式表、iframe、flash 資源及其他代碼。[1]

因為攻擊者可以通過不安全的HTTP內(nèi)容來攻擊安全的HTTPS頁面,所以這類請求被嚴格阻斷掉了————這也是為什么我們的Fetch請求被干掉了。所以我們可以在迫不得已的情況下,用img.src的方式來發(fā)送請求。當然,請求方法只能是get。

sendHttpRequest: () => {
    const img = new Image();
    img.src = "http://xxx.com//你的請求"
} 

這時候,瀏覽器只會在控制臺報warning,而不會block我們的請求。

總結(jié)

出于HTTPS的安全策略,瀏覽器會阻斷HTTPS上的非安全請求(HTTP)請求,但是我們可以使用被動混合內(nèi)容的方式來跨越這個安全策略。

參考文章:

《什么是混合內(nèi)容》

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/95334.html

相關(guān)文章

  • 如何去深入地理解HTTPS工作原理

    摘要:明文協(xié)議的缺陷是導致數(shù)據(jù)泄露數(shù)據(jù)篡改流量劫持釣魚攻擊等安全問題的重要原因。不驗證通信方的身份,因此有可能遭遇偽裝協(xié)議中的請求和響應(yīng)不會對通信方進行確認。數(shù)字簽名能確定消息的完整性證明數(shù)據(jù)是否未被篡改過。 近幾年,互聯(lián)網(wǎng)發(fā)生著翻天覆地的變化,尤其是我們一直習以為常的HTTP協(xié)議,在逐漸的被HTTPS協(xié)議所取代,在瀏覽器、搜索引擎、CA機構(gòu)、大型互聯(lián)網(wǎng)企業(yè)的共同促進下,互聯(lián)網(wǎng)迎來了HTTP...

    JasonZhang 評論0 收藏0
  • 深入理解HTTPS工作原理

    摘要:明文協(xié)議的缺陷是導致數(shù)據(jù)泄露數(shù)據(jù)篡改流量劫持釣魚攻擊等安全問題的重要原因。也就是說加上加密處理和認證以及完整性保護后即是。數(shù)字簽名能確定消息的完整性證明數(shù)據(jù)是否未被篡改過。 前言 近幾年,互聯(lián)網(wǎng)發(fā)生著翻天覆地的變化,尤其是我們一直習以為常的HTTP協(xié)議,在逐漸的被HTTPS協(xié)議所取代,在瀏覽器、搜索引擎、CA機構(gòu)、大型互聯(lián)網(wǎng)企業(yè)的共同促進下,互聯(lián)網(wǎng)迎來了HTTPS加密時代,HTTPS將...

    iOS122 評論0 收藏0
  • 深入理解HTTPS工作原理

    摘要:明文協(xié)議的缺陷是導致數(shù)據(jù)泄露數(shù)據(jù)篡改流量劫持釣魚攻擊等安全問題的重要原因。也就是說加上加密處理和認證以及完整性保護后即是。數(shù)字簽名能確定消息的完整性證明數(shù)據(jù)是否未被篡改過。 前言 近幾年,互聯(lián)網(wǎng)發(fā)生著翻天覆地的變化,尤其是我們一直習以為常的HTTP協(xié)議,在逐漸的被HTTPS協(xié)議所取代,在瀏覽器、搜索引擎、CA機構(gòu)、大型互聯(lián)網(wǎng)企業(yè)的共同促進下,互聯(lián)網(wǎng)迎來了HTTPS加密時代,HTTPS將...

    lylwyy2016 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<