Разрешение за папка за качвания и папка за сървърни файлове на специален сървър

Ще управлявам уебсайт на специален сървър, където потребителите ще имат право да качват файлове (не проверявам тези файлове за вируси).

Да кажем, че папките са така -
parent_folder -> уебсайт (папка, която съдържа сървърни файлове)
parent_folder -> uploads (папка, която съдържа потребителски качвания)< /силен>

Въпрос. Достатъчно ли е разрешението за файл в папката на уебсайта като 750 и в папката за качвания като 770?

(Бележка 1: Собственик - Root; Група - Apache; уебсайтът е социална мрежа)
(Бележка 2: Тъй като Apache (www-данни) ще обработва качвания, смятам, че може да се изисква 770 вместо 740)
(Забележка 3: Тъй като Apache (www-data) ще трябва само да чете файлове в папката на уебсайта, следователно 750)
(Забележка 4: Сървърът ще се поддържа от един потребител)


person vjjj    schedule 06.10.2016    source източник
comment
Страхувам се, че на този въпрос не може да се отговори. Една тривиална част от липсващата информация е собственикът и групата на тези директории, но също така зависи от много подробности, вашия модел на заплаха, апетит за риск и т.н. Без цялата тази информация: мога да се сетя за приложение, където това е достатъчно добро , а също и такъв, където не е.   -  person Gabor Lengyel    schedule 06.10.2016
comment
Добавена още информация   -  person vjjj    schedule 06.10.2016


Отговори (1)


Мисля, че дали е достатъчно добро или не зависи от това какъв риск сте готови да поемете. За основна защита може да е добре.

Това, което трябва да имате предвид, е какво би се случило, ако файловете бъдат откраднати или от неупълномощен нападател, или предполагам, че ще има някакъв вид контрол на достъпа и потребителите ще имат достъп до собствените си файлове, в който случай очевиден риск е потребител възможност за достъп до файлове на други хора. Как ще се отрази на вашия уебсайт/бизнес, ако това се случи? Готови ли сте да поемете този риск? Кои са нападателите, от които се опитвате да защитите? Опортюнистичен сценарий хлапета? Опитни нападатели, насочени конкретно към вашия сайт? Атаки на национално ниво? Първо трябва да отговорите на тези.

Недостатъкът на това решение е, че всяко приложение или пробив на ниво операционна система най-вероятно ще даде достъп до всички качени файлове на всички потребители. Ако вашето приложение е уязвимо към неща като включване на локални файлове, обхождане на директория, дори SQL инжектиране с определени бази данни или много други уязвимости, вашите файлове могат да бъдат изтеглени. Дали искате да ги защитите повече зависи от вашия случай на употреба.

По-сигурните опции биха могли да бъдат съхраняването им на отделен сървър (някакъв вид файлово хранилище), шифроването им със специфични за потребителя ключове (и след това управлението на ключовете и криптографията като цяло са огромна тема), можете да приложите mime тип идентификация с бели списъци, за да разрешите само определени типове файлове (това е малко по-различен аспект) или дори бихте могли да добавите криптиране от край до край, за да се предпазите от себе си (оперативния персонал) и т.н. Можете да отидете много по отношение на защитата на тези файлове, ако искам, но става много сложно много бързо.

person Gabor Lengyel    schedule 06.10.2016