1. 程式人生 > >安全測試學習筆記一(Cookie&Session)

安全測試學習筆記一(Cookie&Session)

一,Session:含義:有始有終的一系列動作\訊息

  1, 隱含了“面向連線” 和“保持狀態”兩種含義

  2, 一種用來在客戶端與伺服器之間保持狀態的解決方案

  3, 也指這種解決方案的儲存結構“把××儲存在session裡”

  二, http 協議本來是無狀態的,所以引進了cookie和session機制來保持連線狀態

  cookie與session 機制之間的區別與聯絡:

  cookie機制採用的是在客戶端保持狀態的方法

  session機制採用的是在伺服器端保持狀態的方案,由於在伺服器端保 持狀態的同時必須要求客戶端提供一個標識,

  三,關於cookie機制

  Cookie 的使用是由瀏覽器按照一定的原則在後臺自動傳送給伺服器的,瀏覽器會檢查

  所有儲存的cookie,如果某個cookie所宣告的作用範圍大於等於將要請求的資源所在的位置,則把該cookie附在請求資源的http請求頭上傳送給伺服器。

  儲存在硬碟上的cookie可以在不同的瀏覽器程序間共享,比如兩個IE視窗。而儲存在記憶體裡的cookie,不同的瀏覽器有不同的處理方式,對於IE,在一個開啟的視窗上按CTRL+ N(從檔案選單)開啟的視窗可以與原視窗共享cookie,而使用其他方式新開的IE程序則不能共享已經開啟的視窗的記憶體cookie。

  Cookie的內容包括: 名字,值,過期時間,路徑和域

  四,關於session的機制

  當程式需要為某個客戶端的請求建立一個session的時候,伺服器首先檢查這個請求是否含了一個session 標識(session id),如果有,則說明以前為該客戶建立了一個session,伺服器就按照session id把這個session檢索出來用,一般一個cookie的名字就是類似於session ID,如果cookie被禁止的時候(cookie可以被人為的禁止),經常使用重寫URL的方式,把session ID附加在URL路徑後面,為了在整個互動過程中始終保持狀態,就必須在每個客戶端可能請求的路徑後面都包含這個session id。

  人們以為:“把瀏覽器關閉了,session 就小時了”其實不對,除非程式通知伺服器刪除一個session,否則伺服器會一直保留,而程式一般都是在使用者作log off的時候發個指令去刪除session。人們之所以會產生這種錯覺,是因為大部分session會採用cookie來儲存session,而關閉瀏覽器後這個session就消失了,如果伺服器設定的cookie被儲存到硬碟上,或者使用某種手段改寫瀏覽器發出的http請求頭,把原來的session id傳送給伺服器,則再次開啟瀏覽器,其實是可以再次找到之前的session id的。所以設定失效時間可以起到一定的保護作用。

  五,關於session的一些問題

  1, session何時被建立: 不是在客戶端訪問時就被建立,而是在伺服器端呼叫httpservletRequest.getSession(true)時才被建立。

  2, session何時被刪除: A,程式呼叫httpSession.invalidate(),B距離上一次收到客戶端傳送的session id時間間隔超過了session的超時設定 C, 伺服器程序被停止(非持久session)

  3, 如何做到關閉瀏覽器同時關閉session: 嚴格說做不到,可以讓所有的客戶端頁面使用window.onclose來監視瀏覽器的關閉東西,然後向伺服器傳送一個請求來刪除session,但是對於瀏覽器崩潰或者強行殺死程序時仍然無能為力。

相關推薦

安全測試學習筆記(Cookie&Session)

一,Session:含義:有始有終的一系列動作\訊息   1, 隱含了“面向連線” 和“保持狀態”兩種含義   2, 一種用來在客戶端與伺服器之間保持狀態的解決方案   3, 也指這種解決方案的儲存結構“把××儲存在session裡”   二, http 協議本來是無狀態的

OWASP WebGoat---安全測試學習筆記

編者按:         作為一名黑盒測試人員,我是今年初開始接觸安全性測試這個方向的。但是在學習安全性測試時,感覺知識點很碎,或者說缺少綱領性的東西,很難下手或邁出第一步。後來找到了OWASP to

安全測試學習筆記

我對於安全測試的知識僅限於以前上學時候學的資訊保安,這方面完全是小白一個。 這篇部落格記錄我開始學習安全測試的一些內容 一、搭建實驗環境 1、虛擬機器windows server 2003 2、虛擬機器kali Linux 2018.3 3、ophcrack (windows密碼破解工具)下載需要的彩虹表配合

egg學習筆記(5)--cookie,session

簡介 session 是另一種記錄客戶狀態的機制,不同的是 Cookie 儲存在客戶端瀏覽器中,而 session 儲存在伺服器上。 當瀏覽器訪問伺服器併發送第一次請求時,伺服器端會建立一個 session 物件,生成一 個類似於 key,value 的鍵值對, 然

軟體測試學習筆記----------------------------------

這週末去朋友家玩,一個週末都沒有學習,再加上最近準備學習Django框架,安裝有點問題,也一直在查資料,就沒有再更新Python學習的模組,決定給自己其他的時間做點別的,所以在看軟體測試的書籍,記下書上的的筆記。 軟體開發生命週期模式: 大爆炸模式:簡單,幾乎什麼前期文件資料都沒有

OWASP WebGoat---安全測試學習筆記(十七)---會話管理缺陷

會話管理缺陷(Session  Management  Flaws) 主題: 1.會話劫持 概念:         因為HTTP是沒有狀態的,所以就有了會話管理的概念。伺服器通過會話管理,來記憶

安全學習筆記】Kali Linux滲透測試方法

信息安全 kali linux security+ 1.安全問題的根源①由於分層思想,導致每個層次的相關人員都只關心自己層次的工作,因此每個人認識系統都是片面的,而安全是全方位的,整體的,所以造成安全問題。②技術人員追求效率,導致只追求功能實現,而很容易忽略安全性的工作③由於人都是會犯錯誤的,因此

AWS學習筆記()--CLI基礎知識(測試

ren rmi fault download 3-0 hot calling r.js getting Installing the AWS CLI Install the AWS CLI Using pip on linux1) Install python---Chec

rf自動化測試學習筆記

window 學習 img 頁面 最大化 fault close 等待 fonts 1、打開瀏覽器 Open Browser 2、瀏覽器窗口最大化 Maximize Browser Window 3、點擊控件 Click Element、Click Button 4、

接口測試學習筆記

正則表達 絕對路徑 計劃 描述 器) 接口測試 學習筆記 nat 例如 第一課主要關於接口測試,涉及到postman和jmeter兩個工具 一、基礎知識: 1、接口就是把client(前端)和server(後端)端聯系起來的(或者說各種花式操作數據庫)。服務器也是一臺電腦,

kali linux 網路滲透測試學習筆記

筆者準備在csdn上面寫寫技術部落格,畢竟平時自己也經常看csdn,卻沒有相應的產出來反饋給其他人,來幫助其他人,如果不寫部落格,那麼這就是一種十分自私的行為。這樣就略略感覺比較尷尬了。而且一個人的技術部落格反映了一個人的技術水平以及最近研究方向,在某些不對的平臺上寫

滲透測試學習筆記之案例

0x00 前言很久沒有更新部落格了,主要是因為工作很忙,寫部落格也太耗時間了。但是突然發現,許久不寫很多東西都快生疏了。因而決定從今天起開始寫一些跟滲透測試相關的文章,也可以認為是學習筆記吧,留作日後的技術積累和參考吧。0x01 案列分析實驗環境:目標靶機:10.11.1.0

【 分類 】- 安全滲透測試學習筆記

個人簡介 如果對測試比較感興趣的可以加QQ群:320542475! 如果你願意,我們可以聊聊測試的那點事,相互學習、互相成長,我相信只要不斷吸取自己所需營養,即使出生不那麼光彩,在未來依然會光芒萬丈,只是在前進的路上荊棘多了一點而已、、、

Python3爬蟲學習筆記 (get,post,cookie,proxy,agent)

No.1 第一個python爬蟲練習 from urllib import request,parse import chardet if __name__ == '__main__': url = 'https://blog.csdn.net/m0_37355951/arti

JavaWeb學習筆記 (七) CookieSession

一. Cookie 1.什麼是Cookie 餅乾,其實是一份小資料,在伺服器生成,然後給客戶端,並且存放在客戶端上 2.應用場景 (1) 自動登陸 會記住我們的賬號密碼 (2) 瀏覽記錄 (3) 購物車 3.為什麼要有Cookie (1)http

junit開源測試框架學習筆記探尋junit基本元件TestCase、TestSuite、TestRunner和TestListener

還記得培訓半路出家來搞JAVA的時候,老師講的第一個開源框架就是junit,當時覺得是還挺好用的,在myeclipse中右鍵單擊一下,對於按照juni規定格式的方法就會執行,並判斷是否和斷言也就是你預期的效果是否一致。當時,覺得挺沒用的,不就是斷言嗎,就是得到一個預期的結果

hadoop學習筆記()——hadoop安裝及測試

這幾天乘著工作之餘,學習了一下hadoop技術,跌跌撞撞的幾天,終於完成了一個初步的hadoop的安裝及測試,具體如下: 動力:工作中遇到的資料量太大,伺服器已經很吃力,sql語句執行老半天,故想用大

安全學習筆記】​Kali Linux滲透測試介紹

Kali Linux滲透測試介紹 安全問題的根源         優點:分工明確,工作效率高。(把大問題簡化成易於解決的小問題)         缺點:從業人員對系統沒有整體的認識,對安全認識較為片面。(搞技術的為了提高工作效率,只追求功能實現, 很少能在實現功能後

安全學習筆記】Kali Linux滲透測試介紹

​Kali Linux滲透測試介紹      安全問題的根源         優點:分工明確,工作效率高。         缺點:從業人員對系統沒有整體的認識,對安全認識較為片面。         最大威脅是人,人都會犯錯,安全問題不能100%絕對根除。    

AngularJS入門學習筆記

rect directive 技術分享 attr 兩個 ava 內容 module 大括號 首先聲明: 本博客源自於學習:跟我學AngularJs:AngularJs入門及第一個實例。通過學習,我自己的一些學習筆記。 1.AngularJS的一些基本特性 (1)使用雙大括號