跳轉到內容

網路應用程式安全指南/會話固定

來自華夏公益教科書,開放的書籍,面向開放的世界

會話固定

在會話固定攻擊中,攻擊者會建立一個未經身份驗證的會話,然後誘使使用者使用並驗證該會話。一旦使用者完成身份驗證,攻擊者便可以利用該會話,因為他知道會話 ID。

防止此類攻擊

  • 在使用者登入時重新生成(更改)會話 ID(銷燬舊會話)
  • 透過僅從 cookie 接受會話 ID,而不是從 GET 或 POST 引數接受,來阻止攻擊者讓使用者使用他的會話(PHP:php.ini 設定“session.use_only_cookies”)

基本原理

重新生成 ID 使舊會話 ID 對攻擊者毫無價值。即使攻擊者設法固定會話,他的會話也永遠不會被驗證。第二種對策旨在使固定會話變得不可能。但是,XSS 或相同域(不一定是非子域!)上其他應用程式的類似問題可能會允許攻擊者設定錯誤的 cookie。

華夏公益教科書