On Fri, 12 Dec 2008, Wojciech Błaszkowski wrote:
Dnia piątek 12 grudzień 2008, Jacek Osiecki napisał:Witam,
Czy ktoś przerabiał temat zrobienia bezpiecznego hostingu php? Chodzi o to, by uniemożliwić klientom zaglądanie do katalogów sąsiadów...
Uzywam pure-ftpd. Loginy zakładane są przez interfejs php i trzymane w bazie danych. pure-ftpd pobiera sobie te dane i umozliwia logowanie. Flaga "ChrootEveryone" ustawiona na "yes".
To akurat nie problem, w vsftpd mam to samo :) Niedługo przesiądę się na proftpd, bo tam mam już ładnie ujęte wszystkie konta ftp w mysqlu i obsługę quoty również przy użyciu wpisów w mysql - wtedy bym mógł w ogóle zrezygnować z różnych kont rzeczywistych dla poszczególnych userów.
Niby nie zabezpiecza to fizycznie przed wejściem do sąsiada, teoretycznie "wystarczy" się wstrzelić w nazwę katalogu (oczywiście katalog w /home/clients jest generowany dla każdego klienta) ale biorąc pod uwagę ilość możliwych kombinacji to jest to mało prawdopodobne.
Bardziej martwiłbym się tym, że jeśli klient będzie marudził o safe_mode=off w php.ini bo nie może zainstalować sobie osCommerce (lub inny powód) to mu się to da. Jeśli już mu się da, to może sobie zrobić skrypt myszkujący po /home/vhosts/ który to skrypt będzie szukał config.php i zapisywał/wysyłał gdzieś jego zawartość.
O safe_mode nie ma mowy, bo po pierwsze wiążą się z nim dodatkowe problemy a po drugie w php6 już nie będzie safe_mode (nie mogę się nigdzie doczytać co chcą dać w zamian).
Rozwiązanie AppArmor.
Ale co konkretnie da mi AppArmor - to, że apache nie będzie mógł odczytać zawartości /home/clients? Przecież to mogę zrobić uprawnieniami 111 dla /home/clients... Jak ktoś ma stronę duperele.pl i widzi że jest w /home/clients/duperele, to domyśli się że bzdury.pl są w /home/clients/bzdury - i "zabezpieczenie" na nic. Sprawę rozwiązuje moje dodanie losowego katalogu po drodze - czyli /home/clients/<hash>/nazwa - czy w takim układzie AppArmor może mi cokolwiek dać, poza zabronieniem userowi apache dostępu do czegokolwiek poza /home/clients? Bo zakładam że system sam w sobie jest bezpieczny i nie ma możliwości by ktoś skryptem PHP namieszał gdziekolwiek... Pozdrawiam, -- Jacek Osiecki [email protected] GG:3828944 "To nie logika, to polityka" (c) Kabaret pod Wyrwigroszem 2006
_______________________________________________ pld-users-pl mailing list [email protected] http://lists.pld-linux.org/mailman/listinfo/pld-users-pl
