HTTP快取和安全

2022-07-11 11:24:14 字數 2611 閱讀 4912

http 通常用於分布式資訊系統,其中通過使用響應快取可以提高效能。http/1.1 協議包含許多用於使快取工作的元素。

http/1.1 中快取的目標是在許多情況下消除傳送請求的需要,並且無需在許多其他情況下傳送完整響應。

http/1.1 中的基本快取機制是用於伺服器指定過期時間和驗證器的快取的隱式指令。為此,我們使用cache-control標頭。

cache-control標頭 允許客戶端或伺服器在請求或響應中傳輸各種指令。這些指令通常覆蓋預設快取演算法。快取指令在逗號分隔列表中指定。例如:

cache-control: no-cache

客戶端可以在其 http 請求中使用以下快取請求指令:

s.n.

cache request directive and description

1no-cache快取在沒有成功重新驗證源伺服器之前不得使用響應來滿足後續請求.

2no-store快取不應儲存有關客戶端請求或伺服器響應的任何內容.

3max-age = seconds指示客戶端願意接受其時間不大於指定時間(以秒為單位)的響應.

4max-stale [= seconds]指示客戶端願意接受超過其過期時間的響應。如果給出秒數,則不能超過該時間過期.

5min-fresh = seconds指示客戶端願意接受其生存期不小於其當前時間加上指定時間(以秒為單位)的響應.

6no-transform不變換實體內容.

7only-if-cached不檢索新資料。快取只能在文件中時傳送文件,並且不應與源伺服器聯絡以檢視是否存在較新的副本.

伺服器在其 http 響應中可以使用以下快取響應指令:

s.n.

cache response directive and description

1public指示響應可能由任何快取快取.

2private指示響應訊息的左右為單個使用者,不得由共享快取快取.

3no-cache快取在沒有成功重新驗證源伺服器之前不得使用響應來滿足後續請求.

4no-store快取不應儲存有關客戶端請求或伺服器響應的任何內容.

5no-transform不變換實體內容..

6must-revalidate快取在使用之前必須驗證過時文件的狀態,並且不應使用過期的文件.

7proxy-revalidate與 must-revalidate 具有相同的含義,只不過它不適用於非共享使用者**快取.

8max-age = seconds表示客戶端願意接受其年時間不超過指定時間(以秒為單位)的響應.

9s-maxage = seconds該指令指定的最大時間將覆蓋 max-age 指令或 expires 標頭指定的最大時間。專用快取始終會忽略 s-maxage 指令.

http 用於 internet 上的通訊,因此應用程式開發人員,資訊提供者和使用者應注意 http / 1.1 中的安全限制。該討論不包括針對此處提到的問題的最終解決方案,但確實提出了一些降低安全風險的建議。

文件應僅限於 http 請求返回的文件,只能是伺服器管理員想要的文件。

例如,unix,microsoft windows 和其他作業系統使用「 ..」作為路徑元件來指示當前目錄之上的目錄級別。在這樣的系統上,http 伺服器必須在 request-uri 中禁止任何這樣的構造,如果它否則將允許訪問那些打算通過 http 伺服器訪問的資源以外的資源。

如果 http 客戶端快取主機名查詢的結果以提高效能,則它們必須觀察 dns 報告的 ttl 資訊。如果 http 客戶端不遵守此規則,則當先前訪問的伺服器的 ip 位址更改時,它們可能會被欺騙。

如果單個伺服器支援多個彼此不信任的組織,則它必須檢查在所述組織的控制下生成的響應中的 location 和 content location 標頭的值,以確保它們不會嘗試使資源失效。他們沒有許可權。

認證憑證

現有的 http 客戶端和使用者**通常會無限期地保留身份驗證資訊。 http / 1.1 沒有為伺服器提供一種方法來指示客戶端丟棄這些快取的憑據,這是很大的安全風險。

此問題的各個方面有很多解決方法,因此建議在螢幕保護程式,空閒超時和其他緩解此問題固有安全問題的方法中使用密碼保護。

**和快取

http **是中間人,代表中間人有攻擊的機會。**可以訪問與安全相關的資訊,有關單個使用者和組織的個人資訊以及屬於使用者和內容提供者的專有資訊。

**操作員應保護執行**的系統,因為它們將保護包含或傳輸敏感資訊的任何系統。

快取**提供了其他潛在的漏洞,因為快取的內容代表了誘人的惡意利用目標。因此,應將快取內容作為敏感資訊進行保護。

http協商快取和強快取

http協商快取和強快取 1.瀏覽器快取 為了節約網路資源,加速瀏覽,瀏覽器在使用者磁碟上對最近請求過的文件進行儲存,當訪問者再次請求這個頁面時,瀏覽器就可以直接從本地磁碟讀取資源並展示,這樣就可以加速頁面的閱覽。快取這東西,第一次必須獲取到資源後,然後根據返回的資訊來告訴如何快取資源,可能採用的是...

HTTP快取機制和原理

作為web開發,http 快取機制作為 web 效能優化的重要手段。這篇博文主要是,關於瀏覽器會對請求的靜態檔案進行快取,但是為什麼被快取,快取是怎樣生效的。http報文就是瀏覽器和伺服器間通訊時傳送及響應的資料塊。瀏覽器向伺服器請求資料,傳送請求 request 報文 伺服器向瀏覽器返回資料,返回...

計網 Http 強制快取和對比快取

對比快取 強制快取時,客戶端會先從本地快取裡面找,找到了就判斷快取是否過期。強制快取主要是兩個字段 expires和cache control expires標識快取到期時間,是乙個絕對時間,也就是說,他返回的是幾幾年幾幾月幾幾日幾幾時幾幾分幾幾秒,如果客戶端從他的快取的這個字段裡面找到這個時間,發...