Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Pobranie wszystkich plików z folderu bez znania ich nazw
athabus
post
Post #1





Grupa: Zarejestrowani
Postów: 898
Pomógł: 48
Dołączył: 2.11.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Witam,

pracuję nad skryptem, który ma udostępniać możliwość pobrania faktury z serwera. Skrypt będzie trochę bardziej złożony, ale dla uproszczenia załóżmy, że plik ma nazwę składającą się z 20 znaków (losowych). Klient dostaje link do swojego pliku, który znajduje się w folderze rok/miesiąc/dzień/nazwa_pliku.pdf

I tu rodzi się pytanie - czy istnieje możliwość, że ktoś pobierze wszystkie pliki z danego folderu (czyli potencjalne faktury innych klientów) nie znając ich nazw - oczywiście pomijając atak typu brute-force, bo przy takiej długości nazwy trafienie w nazwę pliku wymagałoby miliardów zapytań do serwera?

A może macie jakiś pomysł na bezpieczniejsze umożliwianie pobrania faktur?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
thek
post
Post #2





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Moim zdaniem najlepiej zablokować htaccessem katalog z fakturami, wewnątrz niego katalogi z id użytkowników i skrypt (dostępny tylko dla zalogowanych użytkowników), który jako jedyny może pobierać dane. No a jedynym parametrem skryptu jest nazwa pliku do pobrania. Skrypt bowiem z sesji pobierałby id klienta zalogowanego i na jego podstawie ustawiał ścieżkę pobierania. W ten sposób nawet dokładne znanie nazwy i id klienta czy całej ścieżki wywali Forbidden, gdyż skrypt wykryje nieprawidłowe id klienta i zwyczajnie nie pozwoli na pobranie pliku. Ogranicza go bowiem jedynie do jego własnych faktur z katalogu o jego ID. Ja tak zablokowałem dostęp na serwerze i działa wyśmienicie. Jedyna możliwość zdobycia dostępu do pliku to przejęcie sesji i w tym momencie idealne trafienie w nazwę, a jest to niezwykle trudne z racji regeneracji sesji co 3 requesty. Ma więc mocno ograniczone możliwości ataku nawet ktoś kto sesję przechwycił.
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 01:31