Chris,
See comments below:-

> Rob,
> 
> On 10/4/2010 7:27 AM, Rob Gregory wrote:
> > Using the hostname doesn't really guarantee a unique session for example
> > if I click new tab and paste the URL into the new window I suspect the
> > browser will see the same session from the first tab.
> 
> Note that you haven't changed the hostname in this case: you've just
> cloned a browser window (or "tab" if you prefer to call it that).
> 
> > In our application
> > the user can then change the environment with disastrous consequences
> > when updating the database.
> 
> Sounds like you need to be pretty careful. Is it possible you've built a
> fragile application?

Some legacy parts of the application became fragile when the browsers started 
sharing sessions and this fix has been implemented to work around that fact.

> 
> > Did you implement anything to stop the
> > session sharing at this level. What I did was to use the window.name
> > attribute to allow tracking of browser instances and compare this when
> > doing the session timeout checking and this way I am able to redirect
> > any further browser opens into new sessions.
> 
> That's pretty fragile: relying on client-side javascript for anything
> security-related is very foolish.

I do not rely on javascript for security, it is used to provide a means of 
tracking open browser sessions.
The worst a client could do would be to remove the window.name which would 
result in a new session being generated. 

> 
> > With the exception of WEB-INF (which was due to tomcat no longer seeing
> > that as a WEB-INF call because I have my unique-id in the path) do you
> > see any security faults in what I am doing?
> 
> Many: disabling javascript on the client side will break your security.
> An attacker overriding the javascript will break your security.

The application has been security audited and after fixing a few issues is now 
very much secure. Disabling javascript wouldn't break the security model but we 
do require javascript to be enabled for correct functionality. 

To clarify I do not rely on javascript for anything security related and purely 
use this as a means of detecting the user has an existing browser window open. 
The window.name property is the only way to determine unique browser instances 
at the moment and even this is flawed if the browser is opened by a hyperlink 
containing a named target! I think browser manufacturers need to address this 
issue and provide some unique identification between browser requests. Until 
then I have no choice but to work-around this session sharing.

Thanks again for your input,
Rob

> 
> - -chris
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v1.4.10 (MingW32)
> Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/
> 
> iEYEARECAAYFAkyqDOQACgkQ9CaO5/Lv0PBbSACfVhscYMSd4q13ivnaz4k6LdeQ
> ZmgAoKSUg6VkjFxyFr47j1260++fjhre
> =ct/x
> -----END PGP SIGNATURE-----
> 
> ---------------------------------------------------------------------
> To unsubscribe, e-mail: users-unsubscr...@tomcat.apache.org
> For additional commands, e-mail: users-h...@tomcat.apache.org

Reply via email to