
Я только что обнаружил компьютер, обслуживающий конфиденциальные данные из MS SQL Server, который, похоже, практически не имеет защиты безопасности. Я хотел бы защитить этот ящик как можно быстрее.
Проблема в том, что я администратор Linux, не имеющий опыта работы с базами данных Microsoft, и помогаю в удаленном офисе без ИТ-персонала. (Установка также на испанском языке, поэтому, пожалуйста, простите меня, если я искажаю имена).
Итак, я нашел программу под названием SQL Server Enterprise Manager (в диалоговом окне «О программе» нет номера версии, но в авторских правах в файлах справки указано «1988-2000»), которая позволяет мне читать все данные, создавать учетные записи и менять пароли любых существующих учетных записей. Она не запрашивает у меня пароль.
Как закрыть эту зияющую дыру в безопасности?
Означает ли эта ситуация наличие других уязвимостей, которые мне следует проверить?
решение1
Возможно, вы передаете серверу проверку подлинности Windows, и если вы являетесь администратором домена/компьютера, вы сможете войти в любую установку 2000 и большинство установок 2005.
После того, как вы разберетесь, как подключаетесь, вам следует провести аудит безопасности, сначала проверив роли безопасности сервера, чтобы увидеть, кто указан как sysadmin. Это должно быть в узле безопасности под экземпляром базы данных, а не под отдельными базами данных — я имею в виду иерархию древовидной структуры в EM.
Затем вы можете покопаться в базах данных, если это необходимо, чтобы заблокировать разрешения и сделать все безопасным и стабильным. Вы также можете захотеть изменить пароль sa, который является «черным ходом» для входа в SQL, когда вы заблокированы.
http://technet.microsoft.com/en-us/library/cc966456.aspx
Я бы также попробовал запустить анализатор лучших практик.
решение2
Проблема в том, что этот компьютер на самом деле активно обращается к данным на вашем сервере SQL и использует их, или в том, что вы можете получить доступ к серверу SQL, по-видимому, без ограничений... потому что это две совершенно разные вещи. Также были бы полезны некоторые подробности, например, какую версию и редакцию сервера SQL вы используете?
SQL Server Enterprise Manager используется для управления SQL 2000 и более ранними версиями. SQL Server Management Studio используется для управления SQL 2005 и более поздними версиями.
решение3
Если вы не можете удалить SQL Server Enterprise Manager, вы можете удалить регистрацию SQL Server или установить флажок «Всегда спрашивать имя пользователя и пароль» в регистрации сервера.
Проверьте также пароль sa (root) для SQL Server, так как до SQL Server 2000 его можно было оставить пустым!