| Project: | Ubercart Contributions |
| Component: | Code |
| Category: | bug report |
| Priority: | critical |
| Assigned: | spiderman |
| Status: | active |
Jump to:
as of late last week, the folks at SCW are getting many customers reporting that they are getting the wrong cart contents when they go to the checkout.
when viewing the cart/ page, customers will see their order, but when clicking checkout, it shows them order details from a completely different customer. obviously this is a serious problem, and we are actively trying to track it down. as yet, i've been unable to reproduce the bug, but we have a strong suspicion it's related to a similar problem experienced by another client who's using ZenCart. also, we have determined that the other customer is one who is also shopping at the exact same time- it appears whichever of the two orders completes first then takes over the cart of the second order.
this thread (and this one too) describes a problem where customers coming from behind a big ISP proxy will end up experiencing something similar to the problem we're seeing on ubercart because the session handling code gets its wires crossed as shoppers appear to be coming from the same IP.
in the case of ZenCart, we solved the issue by turning on the following options:
- force cookie use
- Check SSL Session ID
- Validate the SSL_SESSION_ID on every secure HTTPS page request.
- Recreate Session
- Recreate the session to generate a new session ID when the customer logs on or creates an account (PHP >=4.1 needed).
unfortunately, afaict there are no analogous settings in drupal/UC, since cookies are always used to track user sessions. i've hunted through drupal.org and ubercart.org extensively, and can find no reference to this kind of problem.
the closest i could find were threads like this one which appears to be unresolved, tho i can't really tell if some other solution to this problem was implemented at some point. i also know that drupal has had one XSS vulnerability that was fixed in 4.6, but i assume this is no longer an issue.
one other relevant point: having decided that the site launch was successful and most of our development efforts complete, i turned on the "standard" drupal page caching mechanism late last week. reports of this problem only began after that configuration change, and so i'm guessing it may be related (in the meantime, i've turned caching off again).
anyway, any help/insight/feedback on this is greatly appreciated, obviously 
thanks!
spidey

