Кітапханада , қорғау үшін өңдеушілерді қамтамасыз ету «Phar» форматындағы файлдарды ауыстыру арқылы, (), бұл жолда «..» таңбаларын ауыстыру арқылы кодты сериядан шығарудан қорғауды айналып өтуге мүмкіндік береді. Мысалы, шабуылдаушы шабуыл үшін "phar:///path/bad.phar/../good.phar" сияқты URL мекенжайын пайдалана алады және кітапхана тексеру кезінде "/path/good.phar" негізгі атауын таңдайды, дегенмен мұндай жолды одан әрі өңдеу "/path/bad.phar" файлын пайдаланады.
Кітапхананы CMS TYPO3 жасаушылары жасаған, бірақ сонымен қатар жобаларда да қолданылады. Drupal и Joomla, бұл оларды да осал етеді. Мәселе шығарылымдарда шешілді Жоба Drupal 7.67, 8.6.16 және 8.7.1 жаңартуларындағы мәселе шешілді. Joomla Мәселе 3.9.3 нұсқасынан бері бар және 3.9.6 нұсқасында түзетілді. TYPO3 жүйесіндегі мәселені шешу үшін PharStreamWapper кітапханасын жаңарту қажет.
Практикалық тұрғыдан алғанда, PharStreamWapper жүйесіндегі осалдық пайдаланушыға мүмкіндік береді Drupal Core, «Administer theme» артықшылықтарымен, зиянды phar файлын жүктейді және ішіндегі PHP кодын заңды phar мұрағаты ретінде орындайды. Еске сала кетейік, «Phar десериализациясы» шабуылы жүктелген анықтама файлдарын «phar://» -дан басталатын жолдарды өңдеген кезде PHP функциясы file_exists() үшін тексерген кезде Phar (PHP Archive) файлдарынан метадеректерді автоматты түрде десериализациялау арқылы жұмыс істейді. phar файлын сурет ретінде тасымалдау мүмкін, себебі file_exists() MIME түрін файлдың кеңейтіміне емес, мазмұнына негіздеп анықтайды.
Ақпарат көзі: opennet.ru
