Bregusrwydd yn llyfrgell PharStreamWrapper yn effeithio ar Drupal, Joomla a Typo3

Yn y llyfrgell PharStreamWrapper, sy'n darparu trinwyr i amddiffyn yn erbyn daliad ymosodiadau trwy amnewid ffeiliau yn y fformat “Phar”, a nodwyd bregusrwydd (CVE-2019-11831), sy'n eich galluogi i osgoi amddiffyniad deserialization cod drwy amnewid ".." nodau yn y llwybr. Er enghraifft, gall ymosodwr ddefnyddio URL fel “phar:///path/bad.phar/../good.phar” ar gyfer ymosodiad, a bydd y llyfrgell yn tynnu sylw at yr enw sylfaen “/path/good.phar” pan gwirio, er yn ystod prosesu pellach o lwybr o'r fath Bydd y ffeil "/path/bad.phar" yn cael ei ddefnyddio.

Datblygwyd y llyfrgell gan grewyr y CMS TYPO3, ond fe'i defnyddir hefyd mewn prosiectau Drupal a Joomla, sy'n eu gwneud hefyd yn agored i wendidau. Mater sefydlog mewn datganiadau PharStreamWrapper 2.1.1 a 3.1.1. Trwsiodd prosiect Drupal y mater mewn diweddariadau 7.67, 8.6.16 ac 8.7.1. Yn Joomla mae'r broblem yn ymddangos ers fersiwn 3.9.3 ac fe'i sefydlogwyd yn rhyddhau 3.9.6. I ddatrys y broblem yn TYPO3, mae angen i chi ddiweddaru llyfrgell PharStreamWapper.

Ar yr ochr ymarferol, mae bregusrwydd yn PharStreamWapper yn caniatáu i ddefnyddiwr Drupal Core sydd â chaniatâd 'Thema Gweinyddu' uwchlwytho ffeil phar maleisus ac achosi i'r cod PHP sydd ynddo gael ei weithredu dan gochl archif phar gyfreithlon. Dwyn i gof mai hanfod yr ymosodiad “Phar deserialization” yw, wrth wirio ffeiliau cymorth llwythog y swyddogaeth PHP file_exists(), mae'r swyddogaeth hon yn dad-gyfrifo'n awtomatig metadata o ffeiliau Phar (Archif PHP) wrth brosesu llwybrau gan ddechrau gyda “phar: //” . Mae'n bosibl trosglwyddo ffeil phar fel delwedd, gan fod y swyddogaeth file_exists() yn pennu'r math MIME yn ôl cynnwys, ac nid trwy estyniad.

Ffynhonnell: opennet.ru

Ychwanegu sylw