VYPR
Moderate severityNVD Advisory· Published Oct 22, 2014· Updated May 6, 2026

CVE-2014-8088

CVE-2014-8088

Description

The (1) Zend_Ldap class in Zend before 1.12.9 and (2) Zend\Ldap component in Zend 2.x before 2.2.8 and 2.3.x before 2.3.3 allows remote attackers to bypass authentication via a password starting with a null byte, which triggers an unauthenticated bind.

Affected packages

Versions sourced from the GitHub Security Advisory.

PackageAffected versionsPatched versions
zendframework/zendframeworkPackagist
>= 2.0.0, < 2.0.992.0.99
zendframework/zendframeworkPackagist
>= 2.1.0, < 2.1.992.1.99
zendframework/zendframeworkPackagist
>= 2.2.0, < 2.2.82.2.8
zendframework/zendframeworkPackagist
>= 2.3.0, < 2.3.32.3.3
zendframework/zendframework1Packagist
>= 1.12.0, < 1.12.91.12.9

Affected products

21
  • Zend/Framework21 versions
    cpe:2.3:a:zend:zend_framework:*:*:*:*:*:*:*:*+ 20 more
    • cpe:2.3:a:zend:zend_framework:*:*:*:*:*:*:*:*range: <=1.12.7
    • cpe:2.3:a:zend:zend_framework:1.12.0:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.0:rc1:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.0:rc2:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.0:rc3:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.0:rc4:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.1:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.2:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.3:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:1.12.5:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.0.0:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.01:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.2.2:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.2.3:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.2.4:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.2.5:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.2.6:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.2.7:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.3.0:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.3.1:*:*:*:*:*:*:*
    • cpe:2.3:a:zend:zend_framework:2.3.2:*:*:*:*:*:*:*

Patches

1
a4222a6c1dc8

Merge branch 'security/zf2014-05'

https://github.com/zendframework/zendframeworkMatthew Weier O'PhinneySep 16, 2014via ghsa
4 files changed · +52 0
  • CHANGELOG.md+27 0 modified
    @@ -1,5 +1,20 @@
     # CHANGELOG
     
    +## 2.3.3 (2014-09-16)
    +
    +- [6576: Custom barcode adapter wasn't being set in options](https://github.com/zendframework/zf2/pull/6576)
    +- [6664: Use is_file to check for an uploaded file](https://github.com/zendframework/zf2/pull/6664)
    +
    +### SECURITY UPDATES
    +
    +- **ZF2014-05:** Due to an issue that existed in PHP's LDAP extension, it is
    +  possible to perform an unauthenticated simple bind against a LDAP server by
    +  using a null byte for the password, regardless of whether or not the user
    +  normally requires a password. We have provided a patch in order to protect
    +  users of unpatched PHP versions (PHP 5.5 <= 5.5.11, PHP 5.4 <= 5.4.27, all
    +  versions of PHP 5.3 and below). If you use `Zend\Ldap` and are on an affected
    +  version of PHP, we recommend upgrading immediately.
    +
     ## 2.3.2 (2014-08-11)
     
     - [4747: Zend\Code\Generator\FileGenerator problem](https://github.com/zendframework/zf2/issues/4747)
    @@ -460,6 +475,18 @@
     - [5943: Fixed route matcher test](https://github.com/zendframework/zf2/pull/5943)
     - [5951: Fix console mixed case optional value params](https://github.com/zendframework/zf2/pull/5951)
     
    +## 2.2.8 (2014-09-16)
    +
    +### SECURITY UPDATES
    +
    +- **ZF2014-05:** Due to an issue that existed in PHP's LDAP extension, it is
    +  possible to perform an unauthenticated simple bind against a LDAP server by
    +  using a null byte for the password, regardless of whether or not the user
    +  normally requires a password. We have provided a patch in order to protect
    +  users of unpatched PHP versions (PHP 5.5 <= 5.5.11, PHP 5.4 <= 5.4.27, all
    +  versions of PHP 5.3 and below). If you use `Zend\Ldap` and are on an affected
    +  version of PHP, we recommend upgrading immediately.
    +
     ## 2.2.7 (2014-04-15)
     
     ### SECURITY UPDATES
    
  • library/Zend/Ldap/Ldap.php+4 0 modified
    @@ -758,6 +758,10 @@ public function bind($username = null, $password = null)
         {
             $moreCreds = true;
     
    +        // Security check: remove null bytes in password
    +        // @see https://net.educause.edu/ir/library/pdf/csd4875.pdf
    +        $password = str_replace("\0", '', $password);
    +
             if ($username === null) {
                 $username  = $this->getUsername();
                 $password  = $this->getPassword();
    
  • README.md+11 0 modified
    @@ -17,6 +17,17 @@ DD MMM YYYY
     
     ### UPDATES IN 2.3.3
     
    +**This release contains security updates:**
    +
    +- **ZF2014-05:** Due to an issue that existed in PHP's LDAP extension, it is
    +  possible to perform an unauthenticated simple bind against a LDAP server by
    +  using a null byte for the password, regardless of whether or not the user
    +  normally requires a password. We have provided a patch in order to protect
    +  users of unpatched PHP versions (PHP 5.5 <= 5.5.11, PHP 5.4 <= 5.4.27, all
    +  versions of PHP 5.3 and below). If you use `Zend\Ldap` and are on an affected
    +  version of PHP, we recommend upgrading immediately.
    +
    +
     Please see [CHANGELOG.md](CHANGELOG.md).
     
     ### SYSTEM REQUIREMENTS
    
  • tests/ZendTest/Ldap/BindTest.php+10 0 modified
    @@ -267,4 +267,14 @@ public function testResourceIsAlwaysReturned()
             $this->assertTrue(is_resource($ldap->getResource()));
             $this->assertEquals(TESTS_ZEND_LDAP_USERNAME, $ldap->getBoundUser());
         }
    +
    +    /**
    +     * @see https://net.educause.edu/ir/library/pdf/csd4875.pdf
    +     */
    +    public function testBindWithNullPassword()
    +    {
    +        $ldap = new Ldap\Ldap($this->options);
    +        $this->setExpectedException('Zend\Ldap\Exception\LdapException', 'Invalid credentials');
    +        $ldap->bind($this->altUsername, "\0invalidpassword");
    +    }
     }
    

Vulnerability mechanics

Generated by null/stub on May 9, 2026. Inputs: CWE entries + fix-commit diffs from this CVE's patches. Citations validated against bundle.

References

13

News mentions

0

No linked articles in our index yet.