Katika maktaba , ambayo hutoa washughulikiaji kulinda dhidi ya kupitia uingizwaji wa faili katika umbizo la "Phar", (), ambayo hukuruhusu kukwepa ulinzi wa kuondoa msimbo kwa kubadilisha herufi ".." kwenye njia. Kwa mfano, mshambulizi anaweza kutumia URL kama vile “phar:///path/bad.phar/../good.phar” kwa shambulio, na maktaba itaangazia jina la msingi “/path/good.phar” wakati kuangalia, ingawa wakati wa usindikaji zaidi wa njia kama hiyo Faili "/path/bad.phar" itatumika.
Maktaba hiyo ilitengenezwa na waundaji wa CMS TYPO3, lakini pia hutumika katika miradi Drupal и Joomla, jambo ambalo huwafanya pia wawe katika hatari. Suala hilo limetatuliwa katika matoleo Mradi Drupal Tatizo lilitatuliwa katika masasisho 7.67, 8.6.16 na 8.7.1. Joomla Tatizo limekuwepo tangu toleo la 3.9.3 na lilirekebishwa katika toleo la 3.9.6. Ili kurekebisha tatizo katika TYPO3, unahitaji kusasisha maktaba ya PharStreamWapper.
Kwa mtazamo wa vitendo, udhaifu katika PharStreamWapper humruhusu mtumiaji Drupal Core, yenye haki za 'Admin theme', hupakia faili hasidi ya phar na kutekeleza msimbo wa PHP uliomo ndani, uliofichwa kama kumbukumbu halali ya phar. Kama ukumbusho, shambulio la "Phar deserialization" hufanya kazi kwa kuondoa kiotomatiki metadata kutoka kwa faili za Phar (PHP Archive) wakati wa kuangalia faili za usaidizi zilizopakiwa kwa kitendakazi cha PHP file_exists() wakati wa kuchakata njia zinazoanza na "phar://." Kuhamisha faili ya phar kama picha kunawezekana, kwani file_exists() huamua aina ya MIME kulingana na maudhui ya faili, sio kiendelezi chake.
Chanzo: opennet.ru
