Portál AbcLinuxu, 10. května 2025 05:14
Zápisek pojednává o bezpečnostním problému na SF.net, kdy všechny soubory dostupné pro webový server musí mít nastavena práva pro čtení všem uživatelům.
Sourceforge.net je služba zajišťující hosting největšího počtu open source projektů. Mezi nabízenými službami nechybí samozřejmě ani bezplatný prostor pro web, aby bylo možné jednotlivé projekty patřičně propagovat. Web projektu se umísťuje na serveru shell.sourceforge.net
do adresáře /home/groups/X/XY/XYZZZ/htdocs
, CGI skripty pak do /home/groups/X/XY/XYZZZ/cgi-bin
, tedy nic neobvyklého. Méně obvyklé ale už je, že všechny soubory zde musí mít nastavený bit pro čtení pro všechny uživatele, aby se k těmto souborům mohl dostat webový server. To nemusí být žádný
problém, pokud není potřeba mít web dynamický. Pokud se ale mají stránky dynamicky generovat a zároveň má být jako úložiště použita MySQL databáze (wiki, CMS, …), naráží se zde na problém – uživatelské jméno a heslo, které musí být uloženy v některém přístupném souboru, budou dostupné komukoliv, kdo si pořídí bezplatný účet na SF.net a umí používat SSH.
Druhou možností je využít souborové úložiště. Pak se budou data nacházet v adresáři /tmp/persistent/FOO
, ale s tím v podstatě dochází ke stejnému problému. Pokud má být toto úložiště zpřístupněno webovému serveru, musí se nastavit patřičná práva opět pro všechny uživatele a ne jenom pro uživatele, pod kterým běží webový server.
Jak z toho ven? Bohužel zde asi není jednoduché východisko. U mnoha projektů asi tato „drobná“ vada na kráse nebude vadit. Pravděpodobně dostatečně často zálohují databázi a kontrolují, jestli náhodou někdo chyby nezneužil.
Podle oficiálního návodu se zdá, že se o tom ví, ale není jednoduché řešení, jak to opravit. Proto bych rád tímto blogem budoucí i stávající uživatele SF.net upozornil, aby si na svá data na SF.net dávali pozor. Dřív nebo později může této chyby někdo využít.
Tiskni
Sdílej:
suexec
?
Group membership of 'nobody' user: SourceForge.net staff continue to evaluate methods for improving the overall security of the project web services. Methods such as suexec and cgiwrap do not suitably address our performance and scalability needs. Though users have requested this in the past, we will not add the project web server user (nobody) to your project group, nor change file ownership to match the project web server user. You are encouraged to make regular backups of your data, make use of our project database service, and carefully consider the security limitations of the shared web environment before implementing any applications.
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.