guess the usual "keep python updated to the last release" comes in handy also this time ...
On Monday, August 31, 2015 at 8:34:10 PM UTC+2, Brian Nguyen wrote: > > So I found the root cause of the issue. > > It turns out there was a bug in Python on how it handles cookies with > square brackets ([, ]) in the values. > > http://bugs.python.org/issue22931 > https://code.djangoproject.com/ticket/24492 > > The s_vi cookie that was affecting our environment had those square > brackets. Something interesting is if we try to create a cookie from within > Web2py with a square bracket, Web2py will encapsulate the value with quotes > and the bug will not take effect. > > This was fixed in Python 2.7.10 ( > https://hg.python.org/cpython/raw-file/15c95b7d81dc/Misc/NEWS). > > Brian > > On Friday, August 21, 2015 at 9:10:27 AM UTC-7, Brian Nguyen wrote: >> >> Hello Massimo, >> >> We have found the root cause of the issue and are able to reproduce it >> 100%. >> >> It seems that one of the websites we use at our company generates Adobe >> tracking cookies that cause Web2py forms to stop working. >> >> The Adobe cookies in questions are: >> s_vi >> s_fid >> s_cc >> s_sq >> >> Since these cookies have a broader domain, they end up in my web2py app >> when users go to the culprit site. >> >> I'll have to investigate how these cookies interfere with web2py forms. >> >> EDIT: >> So here's my hypothesis of what's happening. According to the Web2py >> documentation under the workflow section for the core, it states: >> >> "Before calling the action, a few things happen: if the request header >> contains a session cookie for the app, the session object is retrieved; if >> not, a session id is created (but the session file is not saved until >> later); an execution environment for the request is created; models are >> executed in this environment." >> >> Since some of the Adobe cookies are session cookies, could Web2py be >> detecting these Adobe session cookies and not handle the session properly? >> >> Do we have any mechanisms in Web2py to limit the scope of the cookie >> domain for our app? >> >> Thank you, >> Brian >> >> On Thursday, August 20, 2015 at 10:19:55 PM UTC-7, Massimo Di Pierro >> wrote: >>> >>> Is there a proxy or a load balancer? Can you reproduce it without >>> tornado? >>> >>> On Thursday, 20 August 2015 14:13:44 UTC-5, Brian Nguyen wrote: >>>> >>>> Hello all, >>>> >>>> I've been running into this issue lately where ALL forms would clear >>>> when the submit button is clicked. >>>> >>>> I understand how CSRF may cause these symptoms and need your help. >>>> >>>> It seems to happen to random users using any browser. Although it >>>> doesn't affect all browsers simultaneously. >>>> >>>> The odd thing is, it also affects the Web2py Administrator Interface >>>> password form and forms from other apps on the same server. >>>> >>>> We can't trigger the issue 100%, but we can mimic the problem by >>>> blocking cookies to our app. Opening multiple tabs to the form and >>>> submitting on an older tab also mimics the issue, but eventually fixes >>>> itself on next submit when testing on a working environment. >>>> >>>> The workaround for the issue seems to be clearing all the cookies & >>>> cache or running in incognito/private mode. However, the issue may >>>> eventually return. >>>> >>>> In my tests, it seems that only a single formkey can be stored in >>>> session when the problem is present. When we refresh the page, it still >>>> has >>>> only one new formkey. In a working environment, we can refresh the page >>>> and >>>> have up to 10 formkeys stored in session. >>>> >>>> Based on our workaround, I've noticed that the session_id_(name) cookie >>>> would not be generated automatically. Although we do have a session_id and >>>> session_filename for the user. Also, the session_file will show as None. >>>> >>>> Server Configuration: >>>> Web2py 2.11.2 >>>> Tornado Webserver >>>> >>>> User Configuration: >>>> Chrome >>>> Firefox >>>> IE 8 >>>> >>>> All browser versions may vary. The cookie and security settings have >>>> been confirmed to be wide open. >>>> >>>> Affected forms: >>>> Web2py Administrator Interface >>>> Auth (default/user) >>>> Custom forms (with and without passing session to forms.accept) >>>> >>>> I've spent countless hours lurking the Web2py resources for a solution, >>>> but I just can't figure this one out. :( >>>> >>>> Thank you, >>>> Brian >>>> >>> -- Resources: - http://web2py.com - http://web2py.com/book (Documentation) - http://github.com/web2py/web2py (Source code) - https://code.google.com/p/web2py/issues/list (Report Issues) --- You received this message because you are subscribed to the Google Groups "web2py-users" group. To unsubscribe from this group and stop receiving emails from it, send an email to web2py+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.