|
Posted
almost 15 years
ago
Security releases issued
|
|
Posted
almost 15 years
ago
Django 1.3 release schedule - Update 3
|
|
Posted
almost 15 years
ago
The DjangoCon Europe 2011 organizing committee, chaired by Remco Wendt, has just announced that DjangoCon Europe 2011 will be held in Amsterdam, the Netherlands, from June 6-10 2011. The conference itself will take place on June 6-8, the sprint days
... [More]
will be June 9-10. Though the word was already put out on twitter, the announcement is now available on the official site, http://www.djangocon.eu.
The conference venue is a former warehouse, part of the old port of Amsterdam. The sprint location is a place called "De Waag" which is an old castle in the very heart of Amsterdam, and is famous for housing the Amsterdam Guild of Surgeons during the 17th century.
The sprint location will be open for us 48-hours non stop, meaning literally that we can sprint until we drop.
Hope to see you in Amsterdam in June! [Less]
|
|
Posted
almost 15 years
ago
The first major task in ensuring a timely Django 1.3 release has been
completed: the backlog of unreviewed tickets has been cleared. As of
the time of writing, every ticket in Django's ticket tracker has
undergone at least an initial review.
As
... [More]
a result, we can now give our first report on progress towards
the 1.3 release. At the time of writing, there are 20 tickets known to
be release blockers; for an up-to-date list, check
this Trac query.
To be considered a release blocker, a ticket must describe a problem that:
is a regression in behavior from Django 1.2; or
demonstrates a design flow or bug in a feature added in Django 1.3; or
reveals a problem in Django's packaging or release procedures; or
can cause catastrophic and unintentional loss of data under easily reproducible circumstances.
Everything else is nice-to-have, but will not prevent us from
releasing Django 1.3 on schedule.
The good news is that most of the release blocking tickets are
relatively minor issues. They are either regressions that have
occurred due to inadequate test coverage, or relatively minor
oversights in features added in 1.3. As a result, we appear
to be on schedule for an on-time release (i.e., release candidate in
the week of January 24, Final in the week of January 31)
Once the release blocking tickets have been addressed, attention
will turn to tickets that are Ready
For Checkin. Ideally, there will be no Ready for Checkin
bug fixes when we make the final 1.3 release -- all tickets in the
Ready For Checkin queue will hopefully either be checked in,
bumped back to Accepted because the proposed patch is flawed,
or represent a feature than needs to wait for the 1.4 release cycle.
We will reassess the Zero-RFC goal as we get closer to the release
candidate deadline.
It's important to note that a ticket marked Milestone
1.3 is not automatically guaranteed to be part of the 1.3
release. If you have a ticket that is on Milestone 1.3 and you want to
see it actually get committed to 1.3, then you need to get it reviewed
by someone so it can progress to Ready For Checkin. If it
isn't Ready For Checkin, it won't be checked in!
There's plenty to do if you want to help out:
Write a patch for a release blocking bug
Review someone else's 1.3 Milestone ticket
Write a patch for a 1.3 Milestone ticket (and get someone else to review it)
Proof read the documentation for errors, omissions, and typos
Run your own sites against trunk and report any regressions or problems
Try using new features and report any problems you encounter
The more help we get, the better the 1.3 release will be. [Less]
|
|
Posted
almost 15 years
ago
As part of the Django 1.3 release process, tonight we've released Django 1.3 beta 1, a preview/testing package that gives a little taste of some of the new features coming in Django 1.3. As with all alpha and beta packages, this is not for production
... [More]
use, but if you'd like to try out some of the new goodies coming in 1.3, or if you'd like to pitch in and help us fix bugs before the final 1.3 release (due in January), feel free to grab a copy and give it a spin.
Also, note that this beta release contains the patches mentioned in the security announcement earlier today. If you're using Django 1.3 alpha 1, you're urged to upgrade to beta 1 or apply the trunk patches immediately.
You can get a copy of the 1.3 beta package from our downloads page, and we recommend you read the release notes. Also, for the security conscious, signed MD5 and SHA1 checksums of the 1.3 beta package are available. [Less]
|
|
Posted
almost 15 years
ago
Today the Django team is issuing multiple releases -- Django 1.2.4,
Django 1.1.3 and Django 1.3 beta 1 -- to remedy two security issues
reported to us. All users of affected versions of Django are urged to
upgrade immediately.
Information
... [More]
leakage in Django administrative interface
The Django administrative interface, django.contrib.admin, supports
filtering of displayed lists of objects by fields on the corresponding
models, including across database-level relationships. This is
implemented by passing lookup arguments in the querystring portion of
the URL, and options on the ModelAdmin class allow developers to
specify particular fields or relationships which will generate
automatic links for filtering.
One historically-undocumented and -unofficially-supported feature has
been the ability for a user with sufficient knowledge of a model's
structure and the format of these lookup arguments to invent useful
new filters on the fly by manipulating the querystring.
As reported to us by Adam Baldwin, however, this can be abused to gain
access to information outside of an admin user's permissions; for
example, an attacker with access to the admin and sufficient knowledge
of model structure and relations could construct querystrings which --
with repeated use of regular-expression lookups supported by the
Django database API -- expose sensitive information such as users'
password hashes.
To remedy this, django.contrib.admin will now validate that
querystring lookup arguments either specify only fields on the model
being viewed, or cross relations which have been explicitly
whitelisted by the application developer using the pre-existing
mechanism mentioned above. This is backwards-incompatible for any
users relying on the prior ability to insert arbitrary lookups, but as
this "feature" was never documented or supported, we do not consider
it to be an issue for our API-stability policy. The release notes for
Django 1.3 beta 1 -- which will include this change -- will, however,
note this difference from previous Django releases.
Denial-of-service attack in password-reset mechanism
Django's bundled authentication framework, django.contrib.auth, offers
views which allow users to reset a forgotten password. The reset
mechanism involves generating a one-time token composed from the
user's ID, the timestamp of the reset request converted to a base36
integer, and a hash derived from the user's current password hash
(which will change once the reset is complete, thus invalidating the
token).
The code which verifies this token, however, does not validate the
length of the supplied base36 timestamp before attempting to convert
it. An attacker with sufficient knowledge of a site's URL
configuration and the manner in which the reset token is constructed
can, then, craft a request containing an arbitrarily-large (up to the
web server's maximum supported URL length) base36 integer, which
Django will blindly attempt to convert back into a timestamp.
As reported to us by Paul McMillan, the time required to attempt this
conversion on ever-larger numbers will consume significant server
resources, and many such simultaneous requests will result in an
effective denial-of-service attack. Further investigation revealed
that the password-reset code blindly converts base36 in multiple
places.
To remedy this, the base36_to_int() function in django.utils.http will
now validate the length of its input; on input longer than 13 digits
(sufficient to base36-encode any 64-bit integer), it will now raise
ValueError. Additionally, the default URL patterns for
django.contrib.auth will now enforce a maximum length on the relevant
parameters.
Affected versions
Both of the issues described above are present in the following
currently-supported Django versions:
Django development trunk
Django 1.2
Django 1.1
Resolution
Patches have been applied to Django trunk, and to the 1.2 and 1.1
release branches, which resolve both issues described above. The
patches may be obtained directly from the appropriate changesets:
Django trunk: changeset 15031 for the admin issue and changeset 15032 for the password-token issue.
Django 1.2: changeset 15033 for the admin issue and changeset 15034 for the password-token issue.
Django 1.1: changeset 15035 for the admin issue and changeset 15036 for the password-token issue.
The following new releases have been issued:
Django 1.2.4 (download | checksums)
Django 1.1.3 (download | checksums)
Django 1.3 beta 1, which will contain the patch from Django trunk,
will also be issued later today.
General notes regarding security
As always, we ask that potential security issues be reported via
private email to [email protected], and not via
Django's Trac instance or the django-developers list
Due to the impending Christmas and New Year's holiday, our normal
process of notifying distributors of Django one week in advance of
security-releated release was shortened somewhat to allow these
releases to be issued before most Django users take their holiday
vacations.
If you are or represent a third-party distributor of Django and did
not receive a notification email from the Django release manager,
please contact [email protected]. [Less]
|
|
Posted
almost 15 years
ago
Once again, astute observers will have noted a missed deadline: November 29 has come and gone, but Django 1.3 beta 1 hasn't been released.
In this case, the delay has been caused by a desire to deliver on everything that has been discussed over the
... [More]
last few months. The release of Beta 1 marks the full feature freeze for Django 1.3, and there are lots of little features that have been discussed at length, and are very close to completion, but haven't been committed to trunk. Rather than defer these features to the 1.4, we've opted to push the release schedule by a couple of weeks to let the last few commits happen.
At this point, the outstanding issues are:
#7817: Modification of the {% with %} to support multiple assignment
#9456: Modification of the {% include %} tag to support subtemplate assignment
#11675: Addition of a pylibmc cache backend
#14844: dealing with pluralization rules in {% blocktrans %}
Some administrative i18n issues, aimed at allowing translators to use Transifex to keep translations up to date
In order to accommodate these last features, we've decided to push the Beta 1 release until December 21.
To ensure that we have enough time for fixing bugs once the beta has been released, we're also going to push the final release date by 2 weeks. This means the 1.3 release candidate should be released on January 24, followed by a final 1.3 release on January 31.
Once the beta has been released, we will be focussing on bug fixes. We will be using the Ready For Checkin list as the working list, so if you have a bug you want to see fixed, make sure it has been reviewed and is correctly tagged for as being ready for checkin. We also need assistance triaging the list of unreviewed tickets.
If you're not sure what you need to do in order to get your ticket ready for checkin, read the contribution guide; we also have a work-in-progress HowTo guide that may help clarify what is needed. If you're still not sure, try asking on the #django-dev IRC channel for a push in the right direction. [Less]
|
|
Posted
about 15 years
ago
The DjangoCon organizing committee, led by Steve Holden, has just announced that DjangoCon US 2011 will be held in Portland, Oregon, from September 6-8 2011. This will be followed by a couple of days of sprints. We are also exploring the possibility
... [More]
of running tutorials on the day before (September 5).
There will be a change of venue from the last two years -- we've shifted to the Hilton Portland and Executive Tower. This is located right in the middle of downtown Portland, so it should be a lot more convenient for dinner and other social activities.
The budget hasn't been finalized yet, but we will be aiming to keep registration fees comparable to DjangoCon US 2010. However, we have already negotiated complimentary internet for everyone staying at the hotel, and throughout the ballroom where the conference will be taking place.
Although there was some interest in looking at other venues, due to the relatively short time frame, it was necessary to stick to Portland for at least one more year. To that end -- if you are interested in hosting DjangoCon US 2012 in a location other than Portland, now is the time to start organizing. Jump on the DjangoCon organizers mailing list an let us know that you want to help out. And if you want to help organize DjangoCon US 2011, jump on the same list!
Hope to see you in Portland in September! [Less]
|
|
Posted
about 15 years
ago
In order to assist in the timely release of Django 1.3, we are holding a series of
Django development
sprints over the next couple of weeks.
This weekend, on Saturday November 13, there will be 2 sprints held in parallel. One sprint will be
... [More]
held at the betahaus coworking space in Berlin, Germany. The second will be at several locations around Argentina.
In three weeks time there will be another sprint -- this time, a 2 day sprint (December 4 and 5), held in Sydney, Australia. This sprint will be hosted by The Interaction Consortium.
If you can't make it to Argentina, Berlin, or Sydney in person, you can join us in the #django-sprint IRC channel and help out that way.
For more information on the plans for these sprints, please check out the wiki pages. If you plan on attending, please add your name to the list so that the organizers know how many people to expect. If you want to know what to work on, or you've never been sprinting before and want to know what to expect, check out the wiki page on ideas for sprints.
Hope to see you there! [Less]
|
|
Posted
about 15 years
ago
As part of the Django 1.3 release process, tonight we've released Django 1.3 alpha 1, a preview/testing package that gives a little taste of some of the new features coming in Django 1.3. As with all alpha and beta packages, this is not for
... [More]
production use, but if you'd like to try out some of the new goodies coming in 1.3, or if you'd like to pitch in and help us fix bugs before the final 1.3 release (due in January), feel free to grab a copy and give it a spin.
You can get a copy of the 1.3 alpha package from our downloads page, and we recommend you read the release notes. Also, for the security conscious, signed MD5 and SHA1 checksums of the 1.3 alpha package are available. [Less]
|