id,summary,reporter,owner,description,type,status,component,version,severity,resolution,keywords,cc,stage,has_patch,needs_docs,needs_tests,needs_better_patch,easy,ui_ux 11061,Malformed POST request cause TypeError in AdminSite.login(),Vladimir Dmitriev,nobody,"I found that any visitor can cause a !TypeError on Django site with enabled contrib.admin application. This can be done by sending malformed authentication POST request without username parameter but with LOGIN_FORM_KEY. This will cause following exception in !AdminSite.login() function: {{{ Traceback (most recent call last): File ""/usr/local/lib/python2.5/site-packages/django/core/handlers/base.py"", line 86, in get_response response = callback(request, *callback_args, **callback_kwargs) File ""/usr/local/lib/python2.5/site-packages/django/contrib/admin/sites.py"", line 141, in root return self.login(request) File ""/usr/local/lib/python2.5/site-packages/django/views/decorators/cache.py"", line 44, in _wrapped_view_func response = view_func(request, *args, **kwargs) File ""/usr/local/lib/python2.5/site-packages/django/contrib/admin/sites.py"", line 244, in login if u'@' in username: TypeError: argument of type 'NoneType' is not iterable }}} Although there is no security threat with this error, it makes Django incompatible with !McAfee SECURE service. !McAfee performs a sort of stress testing by generating a lot of random requests with different URLs and form parameters which cause ~20 Django error messages to appear in mailbox each day. I've created tiny patch with fix and test. Affected versions: both trunk and 1.0.2",,closed,contrib.admin,dev,,fixed,admin login,vldmit@…,Ready for checkin,1,0,0,0,0,0