@(#)Mordred Labs advisory - Integer overflow in PHP array_pad() function

From: Sir Mordred (mordred@s-mail.com)
Date: Tue Apr 01 2003 - 02:54:43 PST

  • Next message: Zelena Endre: "RE: Netscape and Opera crash via java"

    //@(#) Mordred Security Labs advisory 
    
    Release date: April 1, 2003 
    Name: Integer overflow in PHP array_pad() function
    Versions affected: all versions 
    Risk: average
    Author: Sir Mordred (mordred@s-mail.com) 
    
    I. Description: 
    
    PHP is a widely-used general-purpose scripting language that is
    especially suited for Web development and can be embedded into HTML.
    Please visit http://www.php.net for more information about PHP.
    
    II. Details: 
    
    The function array_pad(array input, int pad_size, mixed pad_value) returns
    a copy
    of the input padded to size specified by pad_size with pad_value.
    
    Unfortunately the implementation of this function suffers from an integer
    overflow caused by 
    a very long second argument and could allow a local/remote attacker in the
    worst case 
    to gain control over the web server.
    
    The following short script will cause a httpd child to die:
    
    $ cat t.php
    <?php 
        array_pad(array(1,2,3), 0x40000003, "pad");
    ?>
    
    III. Platforms tested
    
    Linux 2.4 with Apache 1.3.27 / PHP 4.3.1
    
    IV. Vendor response
    
    Vendor has been contacted.
    
    
    ________________________________________________________________________
    This letter has been delivered unencrypted. We'd like to remind you that
    the full protection of e-mail correspondence is provided by S-mail
    encryption mechanisms if only both, Sender and Recipient use S-mail.
    Register at S-mail.com: http://www.s-mail.com
    



    This archive was generated by hypermail 2b30 : Wed Apr 02 2003 - 13:14:48 PST