Vulnerabilitat a la biblioteca PharStreamWrapper que afecta Drupal, Joomla i Typo3

A la biblioteca PharStreamWrapper, que proporciona controladors per protegir-se de atacs mitjançant la substitució de fitxers en el format "Phar", identificat vulnerabilitat (CVE-2019-11831), que us permet evitar la protecció contra la deserialització del codi substituint els caràcters "..." al camí. Per exemple, un atacant pot utilitzar un URL com "phar:///path/bad.phar/../good.phar" per a un atac, i la biblioteca destacarà el nom base "/path/good.phar" quan comprovació, encara que durant el processament posterior d'aquest camí S'utilitzarà el fitxer "/path/bad.phar".

La biblioteca va ser desenvolupada pels creadors del CMS TYPO3, però també s'utilitza en projectes Drupal i Joomla, la qual cosa els fa també susceptibles a vulnerabilitats. Problema solucionat a les versions PharStreamWrapper 2.1.1 i 3.1.1. El projecte Drupal va solucionar el problema a les actualitzacions 7.67, 8.6.16 i 8.7.1. A Joomla el problema apareix des de la versió 3.9.3 i es va solucionar a la versió 3.9.6. Per solucionar el problema a TYPO3, heu d'actualitzar la biblioteca PharStreamWapper.

Pel que fa a la pràctica, una vulnerabilitat a PharStreamWapper permet a un usuari de Drupal Core amb permisos "Administrar tema" penjar un fitxer phar maliciós i fer que el codi PHP que hi conté s'executi sota l'aparença d'un arxiu phar legítim. Recordeu que l'essència de l'atac de "deserialització Phar" és que quan es comproven els fitxers d'ajuda carregats de la funció PHP file_exists(), aquesta funció deserialitza automàticament les metadades dels fitxers Phar (Arxiu PHP) quan es processen els camins que comencen per "phar://". . És possible transferir un fitxer phar com a imatge, ja que la funció file_exists() determina el tipus MIME per contingut, i no per extensió.

Font: opennet.ru

Afegeix comentari