Vulnerabilitatea din biblioteca PharStreamWrapper care afectează Drupal, Joomla și Typo3

În bibliotecă PharStreamWrapper, care oferă manipulatorilor de care să se protejeze împotriva de atac prin înlocuirea fișierelor în formatul „Phar”, identificat vulnerabilitate (CVE-2019-11831), care vă permite să ocoliți protecția împotriva deserializării codului prin înlocuirea caracterelor „..” în cale. De exemplu, un atacator poate folosi o adresă URL precum „phar:///path/bad.phar/../good.phar” pentru un atac, iar biblioteca va evidenția numele de bază „/path/good.phar” atunci când verificarea, deși în timpul procesării ulterioare a unei astfel de căi Se va folosi fișierul „/path/bad.phar”.

Biblioteca a fost dezvoltată de creatorii CMS TYPO3, dar este folosită și în proiectele Drupal și Joomla, ceea ce le face și susceptibile la vulnerabilități. Problemă remediată în versiuni PharStreamWrapper 2.1.1 și 3.1.1. Proiectul Drupal a remediat problema în actualizările 7.67, 8.6.16 și 8.7.1. În Joomla, problema apare începând cu versiunea 3.9.3 și a fost rezolvată în versiunea 3.9.6. Pentru a remedia problema în TYPO3, trebuie să actualizați biblioteca PharStreamWapper.

Din punct de vedere practic, o vulnerabilitate din PharStreamWapper permite unui utilizator Drupal Core cu permisiuni „Administrare tema” să încarce un fișier phar rău intenționat și să facă ca codul PHP conținut în acesta să fie executat sub pretextul unei arhive phar legitime. Amintiți-vă că esența atacului „Phar deserialization” este că atunci când se verifică fișierele de ajutor încărcate ale funcției PHP file_exists(), această funcție deserializează automat metadatele din fișierele Phar (PHP Archive) atunci când procesează căi care încep cu „phar://” . Este posibil să transferați un fișier phar ca imagine, deoarece funcția file_exists() determină tipul MIME după conținut, și nu după extensie.

Sursa: opennet.ru

Adauga un comentariu