![]() |
![]() |
![]()
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? |
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 320 Pomógł: 29 Dołączył: 3.04.2010 Ostrzeżenie: (20%) ![]() ![]() |
Wykazałem już, że nie ma sensu ukrywać inaczej tego, jeśli to ma być dostępne dla każdego, kto zna link. Jeśli potrzeba zaimplementować autoryzację, możemy stosować to samo, tylko przed tym dodać id użytkownika i jakiś unikalny dla danego użytkownika kod (aby 1/20452.pdf nie było tym samym co 2/20452.pdf) linkujący na prawidłowy dokument.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 2 148 Pomógł: 230 Dołączył: 26.03.2008 Ostrzeżenie: (0%) ![]() ![]() |
Wykazałem już, że nie ma sensu ukrywać inaczej tego, jeśli to ma być dostępne dla każdego, kto zna link. Jeśli potrzeba zaimplementować autoryzację, możemy stosować to samo, tylko przed tym dodać id użytkownika i jakiś unikalny dla danego użytkownika kod (aby 1/20452.pdf nie było tym samym co 2/20452.pdf) linkujący na prawidłowy dokument. Jeśli była by autoryzacja to nie ma najmniejszego sensu robić tego poprzez podawanie bezpośredniego linka do pliku, tylko poprzez skrypt. Cytat Inna sprawa, że waląc brute-force, drzesz każdy napotkany plik trafiony. Czyli nie masz 1 trafienie na każdą teoretyczną możliwość ale zapewne dziesiątki lub setki, zależnie ile faktur ma klient. Jeśli zaś masz jeden katalog dla wszystkich klientów to brucik zedrze masę plików od masy ludzi. A zauważ, że faktury zawierają dane osobowe i za coś takiego można jednak "beknąć". Załóżmy, że takich faktur znajduje się na serwerze i milion a hash w linku jest na podstawie MD5. |A| = 1 000 000 |Ω| = 36^32 = 6.33402867 × 10^49 P(A) = |A| / |Ω| = 1.57877404 × 10^(-44) Cytat to brucik zedrze masę plików od masy ludzi Jeżeli ktoś brutem trafiłby chociaż JEDEN plik to ja na jego miejscu zająłbym się grą w LOTTO, bo chyba by trafił szóstkę kilka razy pod rząd. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 01:38 |