Vulnerabilities have been reported in Django, which can be exploited by malicious people to bypass certain security restrictions and conduct script insertion and cross-site request forgery attacks, according to Secunia.
1. The cross-site request forgery protection does not properly verify requests with certain “X-Requested-With” headers, which can be exploited to conduct cross-site request forgery attacks by using certain browser plugins and HTTP redirects to send cross-domain HTTP requests with spoofed headers.
2. Input passed via the filename of uploaded files is not properly sanitised within the file field before being used. This can be exploited to insert HTML and script code, which will executed in a user’s browser session in context of an affected site if malicious data is viewed.
Successful exploitation requires that a file-storage backend that does not properly sanitise the file name is used (no default file-storage backends are affected).
3. The file-based session storage system does not properly sanitise the key submitted in the session cookie, which can be exploited to conduct directory traversal attacks.
Note: This only affects deployments on systems using path separators other than specified in Python’s “os.path.sep” (e.g. Windows systems).
A solution is to update to version 1.1.4 or 1.2.5 or apply patches.