Në bibliotekë , ofrueshtë mbështetje për mbrojtje nga përmes zëvendësimit të skedarëve në formatin «Phar», (), që lejon rrethimin e mbrojtjes nga deserializimi i kodit përmes zëvendësimit të karaktereve «..» në rrugë. Për shembull, një sulmues mund të përdorë një URL si «phar:///path/bad.phar/../good.phar» dhe biblioteka do të nxjerrë gjatë kontrollit emrin bazë «/path/good.phar», megjithëse gjatë përpunimit të mëtejshëm të këtij rrugë do të përdoret skedari «/path/bad.phar».
Biblioteka është zhvilluar nga krijuesit e CMS TYPO3, por po ashtu përdoret në projekte Drupal dhe Joomla, duke i bërë ata gjithashtu të ndjeshëm ndaj kësaj dobësie. Problemi është zgjidhur në lëshimet . Projekti Drupal e ka zgjidhur problemin në përditësimet 7.67, 8.6.16 dhe 8.7.1. Në Joomla, problemi shfaqet që nga versi 3.9.3 dhe është zgjidhur në lëshimin 3.9.6. Për të zgjidhur problemin në TYPO3, është e nevojshme të përditësoni bibliotekën PharStreamWrapper.
Nga ana praktike, dobĂ«sia nĂ« PharStreamWapper lejon pĂ«rdoruesin e Drupal Core me privilegje tĂ« administratĂ«s sĂ« temave (âAdminister themeâ) tĂ« ngarkojĂ« njĂ« skedar phar tĂ« dĂ«mshĂ«m dhe tĂ« arrijĂ« tĂ« ekzekutojĂ« kodin PHP tĂ« vendosur brenda tij nĂ«n petkun e njĂ« arkivi phar legjitim. KujtojmĂ« se thelbi i sulmit tĂ« âPhar deserializationâ Ă«shtĂ« se gjatĂ« verifikimit tĂ« skedarĂ«ve tĂ« ngarkuar nga funksioni PHP file_exists(), ky funksion automatikisht ekzekuton deserializimin e tĂ« dhĂ«nave nga skedarĂ«t Phar (PHP Archive) gjatĂ« pĂ«rpunimit tĂ« rrugĂ«ve qĂ« fillojnĂ« me âphar://â. Transferimi i skedarit phar Ă«shtĂ« i mundshĂ«m nĂ«n petkun e njĂ« imazhi, pasi funksioni file_exists() pĂ«rcakton MIME-tipin sipas pĂ«rmbajtjes dhe jo sipas zgjatjes.
Burimi: opennet.ru
