CSIRTCV

Está usted visitando una publicación en la hemeroteca de CSIRT-CV.
Para acceder al portal y contenido actual, visite https://www.csirtcv.gva.es

03/05/2011

Desbordament de sencers en PHP 5.x

Alexander Gavrun ha publicat, en el seu bloc personal, un fallada de seguretat que ha descobert en la funció 'phar_parse_tarfile' de PHP 5.

Risc: Mitjà

'phar' és una extensió de PHP, concebuda per a empaquetar aplicacions PHP i facilitar així la seua distribució i instal·lació en altres sistemes. Proporciona a més una abstracció per a manipular fitxers ZIP i TAR.

La fallada es troba en el fitxer 'ext\phar\tar.c'. Hi ha un error de programació que introdueix un desbordament d'enters durant el maneig de les capçaleres dels fitxers TAR. Un atacant pot manipular el valor 'entry.filename_len' en haver estat assignat després d'operar amb el resultat de la funció 'phar_tar_number' que utilitza com a argument el 'header->size'.

En cridar a la funció 'php_stream_read' s'intentaria copiar dades a un buffer, que no ha estat prèviament reservada, cosa que provocaria una denegació de servei i potencialment permetria executar codi arbitrari.

Alexander Gavrun ha publicat una prova de concepte en el seu bloc, codificada en Base64. 

Sistemes Afectats:

Extensión 'phar' per PHP 5, versió 1.1.1.

Referències:

None

Solució:

Fins al moment, php.net no ha publicat cap solució oficial.

Es recomana no processar amb aquesta funció arxius TAR, en  què no es confie.

Notes:

http://www.hispasec.com/unaaldia/4569
http://0x1byte.blogspot.com/2011/04/php-phar-extension-heap-overflow.html
http://www.vupen.com/english/advisories/2011/1105
http://secunia.com/advisories/44335/

Font: Hispasec una-al-día

CSIRT-CV