PharStreamWrapperi teegi haavatavus, mis mõjutab Drupalit, Joomlat ja Typo3

Raamatukogus PharStreamWrapper, mis pakub käitlejatele kaitset kohta rünnakud faili asendamise kaudu Phar-vormingus, tuvastatud haavatavus (CVE-2019-11831), mis võimaldab teil koodi deserialiseerimise kaitsest mööda minna, asendades teel tähemärgid "..". Näiteks võib ründaja kasutada rünnaku jaoks URL-i, nagu „phar:///path/bad.phar/../good.phar” ja teek tõstab esile põhinime „/path/good.phar”, kui kontrollides, kuigi sellise tee edasisel töötlemisel kasutatakse faili "/path/bad.phar".

Teeki töötasid välja CMS TYPO3 loojad, kuid seda kasutatakse ka Drupali ja Joomla projektides, mis muudab need haavatavustele vastuvõtlikuks. Väljalasetes on probleem parandatud PharStreamWrapper 2.1.1 ja 3.1.1. Drupali projekt parandas probleemi värskendustes 7.67, 8.6.16 ja 8.7.1. Joomlas ilmneb probleem alates versioonist 3.9.3 ja see parandati versioonis 3.9.6. TYPO3 probleemi lahendamiseks peate värskendama PharStreamWapperi teeki.

Praktilise poole pealt võimaldab PharStreamWapperi haavatavus Drupal Core'i kasutajal, kellel on 'Halda teema' õigused, üles laadida pahatahtliku Phar-faili ja käivitada selles sisalduva PHP-koodi legitiimse Phar-arhiivi varjus. Tuletage meelde, et "Phar deserialiseerimise" rünnaku olemus seisneb selles, et PHP funktsiooni file_exists() laaditud abifailide kontrollimisel deserialiseerib see funktsioon automaatselt Phar-failide metaandmed (PHP arhiiv), kui töödeldakse "phar://" algavaid teid. . Phar-faili on võimalik üle kanda pildina, kuna funktsioon file_exists() määrab MIME tüübi sisu, mitte laienduse järgi.

Allikas: opennet.ru

Lisa kommentaar