Witam
Stan rzeczy:
Na fizycznym serwerze klienta istnieje x hostów. Używam jednego z nich do aplikacji dla tego klienta, aplikacja moja wymaga uploadowania plików, do tego celu mam katalog z odpowiednimi uprawnieniami, moja aplikacja pilnuje tego co jest upladodowane, kontroluje typy plikow etc.
Problem polega jednak na tym ze osoby piszace aplikacje dla tego samego klienta używające innych hostow na tym serwerze mogą w swoich skryptach mieć wystarczające dziury które to pozwola uploadowac do mojego katalogu jakies skrypty.
Pytanie:
W jaki sensowny sposób zabezpieczyc się przed skutkami lub wogole przed możliwością uploadu niechcianych przeze mnie skryptow poprzez aplikacje na innych hostach.
Dodatkowe utrudnienia na które nie mam wpływu:
1. Nie mam wpływu na sposób konfiguracji hostow na tym serwerze fizycznym, z każdego hosta mogę sięgać do każdego katalogu we wszystkich hostach wg uprawnien tam ustawionych
2. W Sumie niewiele by to zmienilo przy utrudnieniu wyzej wymienionym no ale dodam tez że nie mam uprawnien aby stworzyc katalog poza struktura httpd.
Problemy:
Wystapila sytuacje ze ktos z innego hosta (nie ma znaczenia jak uzyskal tam możliwość wrzucania skryptow w sensie ze nie mam wpływu na to co się dzieje na innych hostach) uploadowal skrypty do mojego katalogu uploadu.
Pomysly:
1. Baza uploadowanych plikow i skrypt periodycznie sprzwdzajacy zgodność zawartości katalogu z baza „autoryzowanych” uploadow.
2. Open_basedir + deny from All – nie mam zbyt głębokiej wiedzy w kwestiach administracyjnych, ale jak rozumiem ta dyrektywa ogranicza możliwość uruchamiania skryptow tylko dla uruchamianych z określonego katalogu, rodzi to jednak kolejna trudność w tym ze wszelkie uploadowane pliki musza być otwierane i wystawione klintowi do ściągnięcia przez php a ni Ama możliwości bezpośredniego podania linku do pliku. Mam tu dodatkowy problem w tym ze w .htaccess skutecznie mogę ustawic „deny” ale jus open_basedir nie dzisiala ani ustawianie poprzez .htaccess ani poprzez php.ini
3. ??????????????????????????????????
Nie wiem czy w sensowny sposób opisałem problem, jeśli to możliwe proszę o sugestie jak uporac się z niechcianymi uploadami od „sąsiadów” z serwera.
Jakub Lipski