Назад | Перейти на главную страницу

Может ли кто-нибудь обойти файл .htaccess, не изменяя его?

Я храню конфиденциальные данные в папке с названием /data/. Эта папка содержит несколько файлов и подкаталог.

Подкаталог содержит измененную версию конфиденциальных данных с тем же именем файла.

Следовательно, у меня есть /data/file.exe и /data/modified/file.exe. Я установил некоторые правила в .htaccess файл, чтобы заблокировать любой доступ извне сервера к /data/ папку, но не в /data/modified/.

Поскольку имена файлов одинаковы, любой, кто имеет доступ к /data/modified/ папка знает, что исходный файл существует в /data/ с таким же названием.

Теперь вопрос: безопасно ли это? Может ли кто-нибудь перезаписать эти правила и получить доступ к этим файлам, не взламывая сервер или не изменяя .htaccess файл? Я знаю, что вы можете делать все, что угодно, если у вас есть доступ к серверу.

Я использую веб-сервер Apache V.2.4 на сервере Windows Server 2008, но могу перейти на LiteSpeed ​​в CentOS.

PS: Пожалуйста, скажите мне, если это неправильное место / формат, чтобы задать этот вопрос, чтобы я мог переместить, отредактировать или удалить его. Спасибо.

Это не идеальная установка, потому что ваша общая папка является подпапкой вашего защищенного каталога. Таким образом, каждый, кто просматривает / данные / изменяет, знает, что родительская папка запрещена. Это вопрос времени, когда кто-нибудь попытается проверить, содержится ли /data/modified/file.exe также в /data/file.exe, и он получит удар.

Я предлагаю разделить структуру папок следующим образом:
/ data_modified
/ data_secure (возможно, вы захотите проявить больше изобретательности с этим именем папки).

Теперь никто не знает новое имя безопасной папки, поэтому они не знают, где искать ваши конфиденциальные данные, поскольку вы больше не разглашаете имя папки.

В остальном, если вы используете .htaccess, чтобы запретить доступ к каталогу, это хорошо с точки зрения безопасности, и доступ к вашим данным не должен быть возможен без несанкционированного доступа к серверу.
Но если вы используете его для предоставления доступа по имени пользователя / паролю, вам следует быть предельно осторожным. Если вы не используете HTTPS, скорее всего, пара имени пользователя и пароля согласовывается в виде обычного текста по вашей сети.

Вы также можете взглянуть на эта почта о том, как защитить .htaccess, если вы предлагаете пользовательский / проходной доступ.