Защита SQL Server в Интернет — до 20 мин.
По возможности не выставляйте Ваш SQL Server в Интернет. Это верный способ привлечь взломщиков. Однако, если это неизбежно, примите к сведению:
· Открыть для доступа необходимо лишь один порт - собственно для коммуникации с сервером. Его номер следует изменить с 1433 на другой, нестандартный (т.е. вне списка известных портов), дабы сканеры уязвимостей находили его только при полном переборе портов.
· Закройте прочие порты, используемые для работы с SQL Server. В частности, необходимо закрыть порт 1434, используемый службой SQL Server Resolution Service, закрыть порт 445, служащий в Windows 2000 для работы по протоколу SMB.
· Используйте шифрование потоков данных в сети: встроенное в SQL Server (SSL) либо встроенное в операционную систему (IPSec), либо стороннее, например, SHH туннель.
· Не запускайте на машине с SQL Server никаких приложений кроме самого SQL Server. Особенно это касается Web серверов, FTP серверов и т.п.
· Не используйте машину с SQL Server в качестве контроллера домена.
· Не запускайте SQL Server под привилегированной учетной записью.
· Удалите неиспользуемые расширенные хранимые из разряда опасных (xp_cmdshell, sp_OA*, xp_reg* и т.п.) процедуры либо выдайте запрет на их исполнение рядовым пользователям.
· Не запускайте приложение под привилегированной учетной записью, разрешения на объекты БД раздавайте явно.
· Устанавливать только необходимые компоненты. Например, если Вам не потребуется репликация, то не устанавливайте соответствующий компонент SQL Server.
· Ведите аудит всех попыток соединения. Ведите аудит событий безопасности в операционной системе. Если есть возможность установить специализированную систему защиты и уведомления о нападениях (Intrusion Detection System) - установите ее.
· Корректно раздайте права на доступ к системным каталогам и файлам.
· Используйте файловую систему NTFS.
· Следите за "заплатками" и пакетами обновления и устанавливайте их немедленно. Не ждите выхода пакета обновления, устанавливайте заплатки.
· Используйте брандмауэр или другое специализированное программное обеспечение для ограничения доступа к SQL Server по диапазону IP адресов клиентов, времени доступа и так далее, если это допускают Ваши требования.
· По возможности, не соединяйте машину, где работает SQL Server, с внутренней сетью организации для снижения риска дальнейших атак.
· Никогда не используйте одни и те же пароли на разных машинах. Выбирайте "сильные" пароли.
· Удалите неиспользуемые сетевые протоколы из Server Network Utility.
· Установите отсылку уведомлений (Alerts) о событиях типа Access Denied ответственному персоналу.
· Для SQL Logins задайте сложные пароли — длинные, с различным регистром букв, содержащие не только буквы и цифры.