[1.6.x] Add release notes and bump version number for security release.
This commit is contained in:
parent
5ecc0f828e
commit
623c4916df
|
@ -1,4 +1,4 @@
|
|||
VERSION = (1, 6, 0, 'beta', 3)
|
||||
VERSION = (1, 6, 0, 'beta', 4)
|
||||
|
||||
def get_version(*args, **kwargs):
|
||||
# Don't litter django/__init__.py with all the get_version stuff.
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
==========================
|
||||
Django 1.4.7 release notes
|
||||
==========================
|
||||
|
||||
*September 14, 2013*
|
||||
|
||||
Django 1.4.8 fixes one security issue present in previous Django releases in
|
||||
the 1.4 series.
|
||||
|
||||
Denial-of-service via password hashers
|
||||
--------------------------------------
|
||||
|
||||
In previous versions of Django no limit was imposed on the plaintext
|
||||
length of a password. This allows a denial-of-service attack through
|
||||
submission of bogus but extremely large passwords, tying up server
|
||||
resources performing the (expensive, and increasingly expensive with
|
||||
the length of the password) calculation of the corresponding hash.
|
||||
|
||||
As of 1.4.8, Django's authentication framework imposes a 4096-byte
|
||||
limit on passwords, and will fail authentication with any submitted
|
||||
password of greater length.
|
|
@ -0,0 +1,21 @@
|
|||
==========================
|
||||
Django 1.5.3 release notes
|
||||
==========================
|
||||
|
||||
*September 14, 2013*
|
||||
|
||||
This is Django 1.5.4, the fourth release in the Django 1.5 series. It addresses
|
||||
one security issue.
|
||||
|
||||
Denial-of-service via password hashers
|
||||
--------------------------------------
|
||||
|
||||
In previous versions of Django no limit was imposed on the plaintext
|
||||
length of a password. This allows a denial-of-service attack through
|
||||
submission of bogus but extremely large passwords, tying up server
|
||||
resources performing the (expensive, and increasingly expensive with
|
||||
the length of the password) calculation of the corresponding hash.
|
||||
|
||||
As of 1.5.3, Django's authentication framework imposes a 4096-byte
|
||||
limit on passwords, and will fail authentication with any submitted
|
||||
password of greater length.
|
|
@ -780,6 +780,19 @@ as JSON requires string keys, you will likely run into problems if you are
|
|||
using non-string keys in ``request.session``. See the
|
||||
:ref:`session_serialization` documentation for more details.
|
||||
|
||||
4096-byte limit on passwords
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
Historically, Django has imposed no length limit on plaintext
|
||||
passwords. This enables a denial-of-service attack through submission
|
||||
of bogus but extremely large passwords, tying up server resources
|
||||
performing the (expensive, and increasingly expensive with the length
|
||||
of the password) calculation of the corresponding hash.
|
||||
|
||||
Django now imposes a 4096-byte limit on password length, and will fail
|
||||
authentication with any submitted password of greater length.
|
||||
|
||||
|
||||
Miscellaneous
|
||||
~~~~~~~~~~~~~
|
||||
|
||||
|
@ -869,14 +882,6 @@ Miscellaneous
|
|||
to prevent django from deleting the temporary .pot file it generates before
|
||||
creating the .po file.
|
||||
|
||||
* Passwords longer than 4096 bytes in length will no longer work and will
|
||||
instead raise a ``ValueError`` when using the hasher directory or the
|
||||
built in forms shipped with ``django.contrib.auth`` will fail validation.
|
||||
|
||||
The rationale behind this is a possibility of a Denial of Service attack when
|
||||
using a slow password hasher, such as the default PBKDF2, and sending very
|
||||
large passwords.
|
||||
|
||||
Features deprecated in 1.6
|
||||
==========================
|
||||
|
||||
|
|
Loading…
Reference in New Issue