Poważna dziura w PHP XML_RPC
- Paweł Krawczyk,
- 26.08.2005, godz. 12:37
Audyt kodu przeprowadzony w ramach projektu Hardened PHP ujawnił poważną dziurę w module PEAR XML_RPC stanowiącym część PHP.
Błąd jest związany z niewłaściwym wykorzystaniem funkcji eval() w kodzie PEAR XML_RPC. Za pomocą odpowiednio skonstruowanego zapytania w formacie XML można spowodować że interpreter PHP wykona kod przysłany z zewnątrz przez atakującego.
Exploit dla tej dziury nie jest na razie dostępny. Projekt Hardened PHP zaleca zainstalowanie nowej wersji PEAR XML_RCP 1.4.0, która eliminuje ten błąd. Autorzy przeprowadzili również audyt kodu oraz wprowadzili zmiany, które powinny zapobiec powstawaniu tego rodzaju problemów w przyszłości.
Szczegóły dziury: PEAR XML_RPC Remote PHP Code Injection Vulnerability
Warto również zapoznać się z samym projektem Hardened PHP, którego celem jest podniesienie poziomu bezpieczeństwa serwerów z PHP. Ze stron projektu można ściągnąć na przykład dodatek do interpretera PHP Hardening Patch. Łatka implementuje ponad dodatkowych 15 zabezpieczeń PHP o charakterze profilaktycznym, wśród nich między innymi ochronę przeciwko niedawno odkrytym atakom HTTP Request Smuggling. Większość z tych zabezpieczeń działa automatycznie, nie wymaga konfiguracji i chroni skutecznie przed wieloma dotychczasowymi oraz nowymi atakami.