セッションハイジャックとは?
推測や盗聴、窃取などの不正な手段で入手したセッションIDを用いて正規のユーザーになりすまし、セッションを乗っ取るサイバー攻撃。
セッションIDの推測
攻撃者は対象となるシステムに繰り返しアクセスすることで、セッションIDの生成規則や傾向を分析することでセッションIDを推測する。
長くランダム性の高いセッションIDを使うこと。
長くランダム性の高いセッションIDを使うこと。
セッションIDの窃取
通信が暗号化されていない場合、パケットキャプチャソフトで通信内容を盗聴しセッションIDが不正取得される。
またXSS(クロスサイトスクリプティング)にセッションIDが盗まれる場合もある。
またXSS(クロスサイトスクリプティング)にセッションIDが盗まれる場合もある。
セッションIDの固定化
攻撃者が事前に用意したセッションIDを正規のユーザーで利用させセッションを乗っ取る手法。
対策
1. URLにセッションIDを含めない
2. 推測されにくいセッションIDを採用する
3. ログイン成功後にセッションIDを再発行する
4. cookieに属性を加える
2. 推測されにくいセッションIDを採用する
3. ログイン成功後にセッションIDを再発行する
ログインのたびに新しいセッションIDを付与することで、攻撃者が事前に用意したセッションIDが使えなくなる
4. cookieに属性を加える
Secure属性 - 暗号化通信(https)の時にのみ送信を制限
HttpOnly属性 - JavaScriptなどのスクリプトからのアクセスを抑制
SameSite属性 - 異なるサイトからアクセスがあった場合にCookieを送信させない
HttpOnly属性 - JavaScriptなどのスクリプトからのアクセスを抑制
SameSite属性 - 異なるサイトからアクセスがあった場合にCookieを送信させない
セキュリティ
0 件のコメント:
コメントを投稿