Bugtraq mailing list archives

Re: WordPress 3.5.1, Denial of Service


From: Peter Bex <Peter.Bex () xs4all nl>
Date: Tue, 11 Jun 2013 20:55:21 +0200

On Fri, Jun 07, 2013 at 06:29:48PM +0200, Krzysztof Katowicz-Kowalewski wrote:
Version 3.5.1 (latest) of popular blogging engine WordPress suffers from remote denial of service vulnerability. The 
bug exists in encryption module (class-phpass.php). The exploitation of this vulnerability is possible only when at 
least one post is protected by a password.

Time frames:
31.05.2013 WordPress security team has been informed about the vulnerability (no response).
07.06.2013 The vulnerability has been released to the public.

More information (including proof of concept):
https://vndh.net/note:wordpress-351-denial-service

A way out (before official WordPress update) to secure existing installations is to apply the following patch:

--- wp-includes/class-phpass.php
+++ wp-includes/class-phpass.php
@@ -120,7 +120,7 @@
                      return $output;
 
              $count_log2 = strpos($this->itoa64, $setting[3]);
-             if ($count_log2 < 7 || $count_log2 > 30)
+             if ($count_log2 < 7 || $count_log2 > 13)
                      return $output;
 
              $count = 1 << $count_log2;

Hi,

This phpass.php isn't hand-rolled like you stated in your blog post; it's
a copy of a public domain crypt()-workalike: http://www.openwall.com/phpass/
There are several other systems which implement their password hashing
using this library.

Having said that, being able to control the setting looks like a mistake on
the part of Wordpress, so I'm not sure the bug is in phpass, strictly
speaking.  However, have you considered contacting upstream
(Solar Designer/OpenWall) about this?

Cheers,
Peter
-- 
http://www.more-magic.net


Current thread: