publikuj: Opublikuj w wykop.pl Opublikuj we flaker.pl Opublikuj na OSnews.pl Opublikuj w delicious wydrukuj
skomentuj »

TAGI: debian , php , suhosin , bezpieczeństwo , awaria , deweloper

2010-03-01 19:18  |  Adam Golański

Suhosin: deweloperzy Debiana popsuli rozszerzenie bezpieczeństwa PHP?

Suhosin: deweloperzy Debiana popsuli rozszerzenie bezpieczeństwa PHP?

Suhosin to wykorzystywane przez wielu hosterów rozszerzenie bezpieczeństwa dla PHP, które pozwala na zabezpieczenie serwerów i użytkowników przed konsekwencjami znanych i nieznanych błędów w interpreterze tego języka. Prowadzi ono jednak czasem do problemów z kompatybilnością źle napisanych skryptów, a nawet zawieszania niektórych maszyn. Rozwiązaniem problemu jest łatka stworzona przez deweloperów Debiana, która jednak zmniejsza poziom bezpieczeństwa przynoszonego przez rozszerzenie. Jej wydanie wywołało jednak wielką awanturę z twórcą samego Suhosina.

Pakiet bezpieczeństwa zawiera m.in. łatkę, która sprawdza, czy pewne mechanizmy zabezpieczeń są aktywne. Jej dane konfiguracyjne przechowywane są w pamięci RAM. Aby uchronić się przed exploitami, które by mogły zmienić te ustawienia, zawierający je obszar pamięci zostaje ustawiony w tryb tylko do odczytu – dopasowuje się go do strony pamięci i blokuje zapis funkcją mprotect().

Problem jednak pojawia się, gdy mechanizm ten zostaje uruchomiony na systemach o innej architekturze niż x86/x64 – na przykład platformie Itanium. Dochodzi do zawieszenia interpretera, gdy próbuje on dokonać zapisu do chronionego obszaru pamięci. Problem zauważyli deweloperzy Debiana i przygotowali odpowiednią łatkę, która eliminowała usterkę. Jednocześnie o sprawie poinformowali twórcę Suhosina, Stefana Essera. Nie uzyskali od niego jednak odpowiedzi. Gdy minęło kilkanaście dni, wydali łatkę w ramach poprawek bezpieczeństwa.

Tak się jednak złożyło, że Esser w końcu sprawdził swojego e-maila (powiązanego z projektem Hardened PHP) i zobaczył wydaną do Debiana łatkę. Gdy zbadał ją bliżej, odkrył, że choć faktycznie eliminuje ona usterki, to jednocześnie wyłącza mechanizm ochrony pamięci, pozwalając cwanemu napastnikowi na stworzenie nowej konfiguracji i zmuszenie interpretera do skorzystania z niej.

Reakcja niemieckiego dewelopera była dość gwałtowna. Zamiast zwrócić uwagę programistom Debiana na problem i pomóc im w jego naprawieniu, opublikował nie oszczędzający w słowach wpis na łamach swojego bloga, w którym porównał ich zachowanie do tego, co działo się przy niesławnej luce w OpenSSL z 2008 roku.

Nie pozostało to bez echa – jak podaje serwis heise.de, na łamach bloga doszło do gorącej dyskusji, pełnej wzajemnych oskarżeń i przejawów zranionej dumy (eine heftige Diskussion, die vor allem durch Vorwürfe und verletzte Eitelkeiten geprägt war). W końcu Esser skasował kilka akapitów ze swojego oryginalnego wpisu, przeedytował inne i wyłączył komentarze. Sęk w tym, że nie udało się wypracować żadnego konstruktywnego rozwiązania – wciąż nie ma łatki, która rozwiązywałaby problem awarii bez wprowadzania luk w bezpieczeństwie.

Jak widać, dużą rolę w rozwoju oprogramowania Open Source odgrywają ludzkie ambicje i wybujałe ego niektórych programistów. Deweloperzy Debiana, znani ze swoich czasem zdumiewających decyzji i ideologicznego zacięcia na pewno nie należą do najłatwiejszych partnerów – potrafili np. odmówić wprowadzenia do repozytorium testing/unstable pakietu osadzonego (embedded) interpretera PHP, argumentując, że „PHP to zgniły język, do którego używania nie powinno się zachęcać” (it's a rotten language whose use should not be encouraged). Z drugiej strony także i twórca Suhosina nie popisał się dobrą wolą. Cierpi na tym bezpieczeństwo i stabilność webowych aplikacji.

Źródło: heise.de

publikuj: Opublikuj w wykop.pl Opublikuj we flaker.pl Opublikuj na OSnews.pl Opublikuj w delicious wydrukuj
skomentuj »

Polecamy

Reklama

Komentarze

Uwaga! Możesz zarejestrować się w serwisie i w ten sposób zarezerwować swój nick oraz ominąć konieczność ciągłego odczytywania wyrazów.

Aby dodać komentarz, musisz podać swój nick, treść komentarza oraz poprawnie przepisać oba słowa z obrazka (słowa muszą być rozdzielone spacją).
W treści komentarza można używać języka formatowania BBcode.

Polecane książki

Czytaj Webhosting

Chcesz być na bieżąco z naszymi informacjami? Zapisz się na Newsletter.

Zarejestruj domenę

Sprawdź dostępność swojej domeny:

.pl: 0 zł   .com: 19.90 zł
.com.pl: 0 zł   .eu: 19.90 zł