Screencast: Session Hijacking

Wenn nach einer Benutzer-Authentifizierung die zugehörigen Cookies über eine unsichere Verbindung ausgetauscht werden, kann dies das Ziel für Session-Hijacking-Angriffe werden. Was in einem solchen Fall getan werden muss und wie dies vermieden werden kann zeigt Ryan in diesem Screencast.

 

Downloads in verschiedenen Formaten:

mp4
m4v
webm
ogg

 

Resourcen:

terminal

[bash]
sudo tcpdump -i lo0 -A
curl http://todo.dev/
curl http://todo.dev/ -H ‚Cookies: …‘
curl https://todo.dev/ -k -H ‚Cookies: …‘
[/bash]

config/environments/production.rb

[ruby]
config.force_ssl = true
[/ruby]

sessions_controller.rb

[ruby]
cookies.signed[:secure_user_id] = {secure: true, value: "secure#{user.id}"}
# …
cookies.delete(:secure_user_id)
[/ruby]

application_controller.rb

[ruby]
def current_user
if !request.ssl? || cookies.signed[:secure_user_id] == "secure#{session[:user_id]}"
@current_user ||= User.find(session[:user_id]) if session[:user_id]
end
end
[/ruby]

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.