Ресурсу на сервере не хватает надлежащего контроля доступа, что позволяет злоумышленникам получить конфиденциальные
файлы конфигурации, включая учетные данные базы данных. Это приводит к потенциальному несанкционированному доступу
к базе данных через инструмент управления.
Рекомендация:
Ограничьте доступ к файлам: убедитесь, что доступ могут получить только авторизованные пользователи. конфиденциальные файлы,
внедрив строгий контроль доступа к функциям загрузки файлов.
Избегайте раскрытия конфиденциальной информации: никогда не храните конфиденциальные учетные данные, такие как пароли базы данных
, в виде открытого текста в файлах конфигурации. Используйте переменные среды или зашифрованные
системы управления секретами для хранения конфиденциальной информации.
Проверяйте вводимые пользователем данные: всегда проверяйте вводимые пользователем данные, чтобы злоумышленники не могли манипулировать
путями к файлам или получить доступ к неавторизованным файлам с помощью таких методов, как обход каталогов.
Очистка запросов к файлам. Если приложению требуются указанные пользователем имена файлов для загрузки файлов, убедитесь, что имена файлов строго проверены и очищены от любых
потенциально опасных символов или шаблоны.
Файлы белого списка: разрешают загрузку файлов только из заранее определенного списка или каталога, чтобы гарантировать
отсутствие конфиденциальных или ненужных файлов.
Ограничить типы файлов: ограничить типы файлов, которые можно загрузить, чтобы гарантировать доступность только
нужных файлов, например, разрешайте только файлы .txt или .csv и блокируйте все остальные.
Избегайте утечки информации: убедитесь, что Сообщения об ошибках или журналы не раскрывают конфиденциальную
информацию, такую как полные пути к файлам или сведения о базе данных, которая могла бы помочь злоумышленнику
использовать уязвимость.
Подробнее здесь: https://stackoverflow.com/questions/791 ... credential