Co to takiego ten TimThumb? Jest to bardzo popularny skrypt do skalowania i generowania obrazków w locie. Korzysta z niego bardzo wiele darmowych i komercyjnych szablonów, potencjalnie więc, Twoja strona też może być zagrożona. Nie martw się jednak, powstała już bowiem całkiem nowa wersja skryptu, która rozwiązuje zaistniały problem (rozwiązanie i link do pobrania na końcu wpisu).
Jak do tego doszło?
Skrypt na swoje potrzeby tworzy w katalogu z szablonem własny podkatalog cache
, do którego oczywiście ma możliwość zapisu. Sam skrypt skonfigurowany jest w taki sposób, że akceptuje zdjęcia z kilku różnych adresów, m.in. flickr.com, picasa.com, blogger.com, oraz oczywiście z domeny bloga. Problem leży w sposobie, w jaki weryfikowany jest adres, z którego pochodzi plik. Okazało się że skrypt przyjmie również pliki z innych adresów, skonstruowanych np. tak: http://flickr.com.stronahakera.com/skrypt.php
i zapisze je w katalogu cache, skąd mogą zostać uruchomione przez hakera. I to właśnie ta luka została wykorzystana, kiedy 1 sierpnia ktoś włamał się na blog Marka Maundera. Autor zamiast treści na swoim blogu zobaczył… reklamy. Tak na prawdę miał on szczęście, ponieważ atakujący mógł zamieścić i uruchomić na jego stronie dowolny skrypt, np. mógł usunąć blog w całości.
Rozwiązanie
Sprawdź koniecznie, czy ten problem nie dotyczy również Ciebie. Na stronie sucuri.net znajduje się lista darmowych szablonów, udostępnianych w katalogu WordPressa, które korzystają z powyższego skryptu.
Jeśli Twój szablon pochodzi z innego źródła i nie jesteś pewien czy korzysta ze skryptu Timthumb, możesz to sprawdzić samodzielnie. Skrypt będzie znajdował się w katalogu z szablonem. Szukaj pliku o nazwie timthumb.php
(czasem występuje też pod nazwą thumb.php
). Charakterystyczne jest też to, że w katalogu ze swoim szablonem będziesz również miał podkatalog cache
.
Jeśli okaże się że Twój szablon wykorzystuje skrypt Timthumb, koniecznie go zaktualizuj. Po ataku na swój blog Mark Maunder podszedł do tego bardzo osobiście, i we współpracy z autorem oryginalnego skryptu w ciągu kilku dni powstała całkiem nowa wersja, którą możesz pobrać tutaj. Wystarczy podmienić istniejący plik timthumb.php na nowy, nie ma potrzeby dokonywania zmian w szablonie.