Dziury w wielu aplikacjach PHP

Wiele popularnych aplikacji w PHP może być podatnych na nowoodkryty błąd w popularnej bibliotece implementującej protokół XML-RPC dla środowiska PHP. Problem na pewno dotyczy programów PostNuke, WordPress, Drupal, Serendipity, phpAdsNew, phpWiki, phpMyFAQ i wielu innych.

Odkryta przez GulfTech dziura wynika z niedostatecznego weryfikowania danych wejściowych przez popularną bibliotekę PHPXMLRPC w wersjach 1.1 i wcześniejszych. Problem dotyczy także wbudowanej w PHP biblioteki PEAR-XML-RPC.

Błąd polega na tym, że dane otrzymane od użytkownika w pliku XML są bez dokładnej weryfikacji przekazywane do funkcji eval() co umożliwia atakującemu wykonywanie poleceń PHP z zewnątrz. W rezultacie za pomocą odpowiednio skonstruowanego pliku XML można zmusić serwer do wykonywania nieautoryzowanych poleceń. Stopień zagrożenia konkretnych aplikacji zależy od tego, w jaki sposób korzystają one z funkcji XML-RPC.

Dostępna jest już poprawiona wersja biblioteki o numerze wersji 1.1.1, jednak ze względu na to że była ona integrowana z dużymi aplikacjami PHP na różnych etapach rozwoju szybkie naprawienie błędu nie jest proste, a na pewno nie wystarczy udostępnienie poprawek w oryginalnej wersji biblioteki - trzeba będzie poczekać na poprawki od autorów konkretnych aplikacji. Autorzy PostNUKE zalecają na przykład całkowite wyłączenie XML-RPC w tym systemie i skasowanie katalogów zawierających dziurawą bibliotekę do momentu, aż sami nie udostępnią nowej, poprawionej wersji.

Wśród dziurawych aplikacji wymienia się Xaraya, Drupal, PostNuke, B2Evolution, PGPGroupWare, eGroupWare, TikiWiki, PostNuke, WordPress, Serendipity, phpAdsNew, phpWiki, BlogCMS, CivicSpace i phpMyFAQ. Administratorzy wykorzystujący te programy na swoich serwerach powinni jak najszybciej poszukać u autorów aplikacji informacji, jak zabezpieczyć się przed nową dziurą.


Zobacz również