У нашего клиента возникла проблема с информацией базы данных в виде открытого текста в файле server.xml или context.xml на сервере Tomcat. Я просмотрел несколько сайтов вроде OWASP и кажется, что нет очевидного решения. Я также видел такие вещи, как этот блог wordpress которые описывают реализацию для этого специального расширения Tomcat. Должен существовать некоторые стандартная реализация (и) уже без необходимости катить собственную. Есть ли у кого-нибудь опыт работы с таким решением?
В настоящее время пароль хранится в виде открытого текста в файле конфигурации. Альтернативой, которая часто используется, скажем, в закрытых ключах SSL с шифрованием DES, является использование симметричного алгоритма для шифрования конфиденциальных данных.
Это было бы не более безопасный чем просто сохранить пароль в виде открытого текста в файле .xml. Служба будет настроена с ключом шифрования зашифрованного секрета (если вам не требуется, чтобы кто-то был у клавиатуры, чтобы вводить пароль каждый раз при запуске службы), который может использоваться злоумышленником для доступа к зашифрованным данным. Это обеспечивает уровень неясности, но не уровень безопасности.
Шифрование пароля ненамного лучше, чем запланированный текст. CVS выполняет замену символов своего обычного текстового пароля для защиты от случайного раскрытия при просмотре файлов. Файл, содержащий пароль, должен быть надежно защищен независимо от формы.
Стандартный метод шифрования ненамного лучше простого текстового пароля. Это хорошо известная угроза безопасности. Такой простой метод, как CVS, действительно защищает от случайного раскрытия администраторам, имеющим доступ к файлу.
MySQL допускает ограничения на основе исходного хоста, который я бы реализовал, если это ваша база данных. Серверы баз данных любого типа должны иметь ограниченный доступ.
Как только кто-то получит доступ к вашему хосту, битва будет проиграна.