HTTP狀態碼之200和304

大學霸發表於2017-03-01
HTTP狀態碼之200和304

HTTP狀態碼(HTTP Status Code)是一種表示網頁伺服器響應狀態的三位數字編碼。透過這些數字,可以簡化狀態的表達。狀態碼有幾十種,其中首位數字為1-5。根據這5個數字,狀態碼可以分為5類。1開頭的表示請求正在處理;2開頭請求已經成功處理;3開頭表示重定向;4開頭表示請求錯誤;5開頭表示伺服器錯誤。

在嗅探抓包過程中,常見的有兩種200和304。這兩個狀態碼都關係到能否獲取重要資訊。當客戶第一次請求伺服器資源,伺服器成功返回資源,這時狀態碼為200。所以,狀態碼為200的資料包往往包含使用者從伺服器獲取的資料。

每個資源請求完成後,通常會被快取在客戶端,並會記錄資源的有效時間和修改時間。當客戶再次請求該資源,客戶端首先從快取中查詢該資源。如果該資源存在,並且在有效期,則不請求伺服器,就不會產生對應的請求資料包。

如果不在有效期,客戶端會請求伺服器,重新獲取。伺服器會判斷修改時間,如果沒有修改過,就會返回狀態碼304,告訴客戶端該資源仍然有效,客戶端會直接使用快取的資源。針對304的響應,滲透人員可以分析對應的請求包,獲取資源路徑。如果該資源不限制訪問,就可以直接請求獲取。否則,就需要進行Cookie劫持,進行獲取。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/29597077/viewspace-2134512/,如需轉載,請註明出處,否則將追究法律責任。

相關文章