[horde] Autologin into Horde

Jan Schneider jan at horde.org
Wed Apr 17 13:15:09 UTC 2013


Zitat von Michael M Slusarz <slusarz at horde.org>:

> Quoting Michael M Slusarz <slusarz at horde.org>:
>
>> I guess another possible option would be to regenerate the session  
>> ID after a certain period of time if the client appears to still be  
>> active.  This eliminates the security concern of someone recovering  
>> the session ID and being able to use it, while allowing us to forgo  
>> re-authentication.  However, I don't think the framework is in  
>> place for this to work in dynamic applications if not using COOKIES  
>> (there may be links present on the page containing the old session  
>> ID).  But maybe we ignore this use-case, since we already heavily  
>> disfavor non-cookie based sessions as it is?
>
> Played around with this idea this afternoon and it seems to work  
> well.  At a minimum, it provides some protection against session  
> fixation attacks by periodically changing the session identifier in  
> active sessions (the regeneration value is either half the maximum  
> session GC time, or 1 day if no GC is active).
>
> Cookie based sessions see this value automatically updated in the  
> cookie.  Non-cookie based dynamic sessions now send the SID on every  
> request in order to catch SID changes.
>
> The 1 DoS issue I can think of is if multiple dynamic requests are  
> received at the same time - if the SID changes in the first request  
> one of the subsequent cached requests will try to access a  
> non-existent session and will cause a logout.  Although...
>
> 1) This should be very rare.
> 2) I'm actually not sure if this will even occur.  Since these  
> requests are waiting for R/W access on the session data, the old  
> session data may not be deleted until these queued requests are  
> completed (likewise, I'm not sure if this will point to the new  
> session data or the old session data).  The documentation doesn't  
> discuss this in any detail.
> 3) Although even if PHP behaves in #2, there is still the edge case  
> of changing the SID and the request returning the SID to the  
> browser, and in between the time session is closed and the new SID  
> is recieved the browser fires off a request with the old SID.  Not  
> sure if this edge case is worth dealing with.
>
> An option to fix is to create a periodic request from the browser to  
> explicitly change the SID that locks out all other requests until it  
> is completed.  It could be scheduled to run at a certain time period  
> before server-side regeneration would occur to ensure that it always  
> occurs under controlled conditions.
>
> michael
>
> ___________________________________
> Michael Slusarz [slusarz at horde.org]

I'm getting kicked out of the session like every two hours now. I have  
the max_time still set to 0.
-- 
Jan Schneider
The Horde Project
http://www.horde.org/



More information about the horde mailing list