Что я должен делать, если кто-то пытается грубо заставить войти в нашу учетную запись SQL Server 'sa'?

9

Похоже, кто-то или что-то пытается грубой силой войти в наш производственный экземпляр SQL Server с учетной записью 'sa'. Они не увенчались успехом, потому что наша учетная запись 's' отключена, но какие шаги я должен предпринять, чтобы убедиться в безопасности?

попытки входа

Джон Эриксон
источник
1
Привет. Отметьте это как ответ, чтобы мы могли двигаться дальше в нашей жизни. :)
JohnThePro

Ответы:

29

Ваш SQL-сервер должен быть общедоступным в Интернете? Обычно это не тот случай. Если это абсолютно необходимо, вы можете ограничить доступ по IP-адресу или настроить VPN. Очевидно, сделайте пароль sa неосуществимым или узнайте об ограничении местоположений входа sa только с ваших IP-адресов локальной сети. Пожалуйста, предоставьте больше деталей, чтобы другие могли помочь вам с лучшими решениями.

jftuga
источник
3
Абсолютно это Это классический случай использования брандмауэров и минимизации поверхности атаки.
Роб Мойр
Плюс это не кто-то. Это в значительной степени червь, а не человек. SQL Server в интернете + без изменения порта по умолчанию = полное игнорирование реальности (интернет не очень хорошее место).
TomTom
5

Первое, что вы можете сделать, это начать с внесения в черный список этого IP-адреса и полного отказа от ЛЮБОГО трафика с их IP на вашем брандмауэре. Конечно, они могут просто поменять IP-адреса, но, по крайней мере, это не позволит им бомбардировать ваш сервер трафиком и журналами.

JohnThePro
источник
3

Отключите этот порт (MySQL - 3306; не вызывать порт SQL Server, может быть, 118?) Через брандмауэр. Тогда никто не сможет получить к нему доступ.
Если необходим внешний доступ к SQL, переназначьте его на порт с большим номером, например 53535. Если кто-нибудь узнает, что порт открыт, будет трудно догадаться о его значении.

wallyk
источник
1433; если это должно быть открыто для внешней стороны, измените это на что-нибудь еще; однако это повлечет за собой изменение строк подключения на клиентах.
SqlACID
А также 1434, для службы обнаружения ...
AviD
3

При входе в систему предпринимаются попытки внедрить некоторый вредоносный код. Я рекомендую заблокировать это действие с помощью постоянного черного списка, используя либо программное обеспечение брандмауэра сервера, либо сторонний внешний брандмауэр.

Кроме того, уменьшите количество допустимых сбоев входа в систему, поскольку это автоматически заблокирует IP-адрес злоумышленника.

Выше будет минимизировать это.

С.Рагавендра Ганеш
источник
2

Вероятно, это просто какой-то сценарий, который запускает сканер и не стоит тратить время на поиски. Я бы посмотрел, чтобы ваша база данных не была доступна из Интернета.

JOTN
источник
2
  • Если вы можете, отключите доступ к любой учетной записи SQL, а не только sa - т.е. включите только проверку подлинности Windows, без проверки подлинности SQL.
  • Ограничьте доступ к сети - либо через брандмауэр, либо, по крайней мере, для IP-адресов на коробке - теми серверами, которым требуется только доступ. Общедоступные пользователи не нуждаются в прямом доступе, верно?
  • Примите во внимание, что он, вероятно, попробует брутфорс локального пользователя-администратора. Хотя вы действительно не можете удалить права администратора, вы можете поместить их в определенную роль и явно заблокировать доступ.
  • Если можете, отключите службу браузера SQL Server. Нет причин делать это проще ...
  • Выполните полный анализ пользователей, разрешений и паролей в базе данных - они, вероятно, попробуют других пользователей дальше.
  • Попробуйте спросить это снова на ITSecurity.SE для получения дополнительной информации :)
алчный
источник
2

Если ваш SQL-сервер должен быть доступен за пределами вашей сети, вы можете внести в белый список внешние IP-адреса, которым требуется доступ. VPN - лучшее решение (но не всегда доступное), и лучшее решение - отсутствие внешнего доступа.

Белый список требует большего управления, но он устраняет эту глупость. Если кому-то нужен доступ и у него часто меняющийся IP-адрес, он может войти в другую систему через RDP и подключиться к SQL Server оттуда.

Переименуйте учетную запись sa, создайте поддельную учетную запись sa и отключите ее.

Аудит разрешений и запуск обновления пароля для всех учетных записей пользователей SQL Server; возможно, увеличит требования к надежности пароля.

Перенумеруйте IP-порт прослушивания SQL Server. Это означает обновление конфигурации клиента или файлов конфигурации приложения.

Я согласен с другими авторами относительно вероятных векторов следующей атаки, и, вероятно, это кто-то, кто запускает скрипт.

Роберт Миллер
источник
1

Для тех, кто ищет программу, которая создаст политику IPSEC, фильтры и т. Д. И автоматически просканирует журнал событий и добавит IP-адреса в список блокировки, я написал небольшую программу, которая делает именно это.

У меня тоже была эта проблема, когда мой журнал событий заполнялся тысячами записей для хакеров, пытающихся войти в мой экземпляр MSSQL с помощью имени «sa». После долгих поисков я решил написать свою собственную программу, чтобы она создавала необходимые элементы IPSEC, а затем каждые 60 секунд сканировал журнал событий на предмет атак с новых IP-адресов. Затем он добавляет IP-адрес в фильтр IPSEC и блокирует весь трафик с IP-адреса. Я проверял это только на Windows Server 2008, но считаю, что это будет работать и на других версиях.

Не стесняйтесь загружать программу, используя ссылку ниже. Пожертвования всегда приветствуются с помощью ссылки в контекстном меню значка менеджера задач.

http://www.cgdesign.net/programs/AutoBlockIp.zip

Обратите внимание, что это работает только для попыток входа в SQL с использованием имени входа «sa», но я мог бы изменить его, чтобы он работал и для других событий журнала. Кроме того, вы можете просматривать заблокированные IP-адреса, но вы по-прежнему будете видеть некоторые элементы в журнале событий, поскольку программа запускается каждые 60 секунд. Это связано с невозможностью удалить одну запись журнала событий, и я не думал, что удаление всего журнала было бы хорошей идеей.

ОТКАЗ ОТ ОТВЕТСТВЕННОСТИ - Загружая и устанавливая вышеупомянутую программу, вы соглашаетесь обезопасить меня от любого повреждения, потери данных, повреждения или любых других функциональных проблем, вызванных использованием указанного программного обеспечения. Я протестировал программу в меру своих возможностей и в настоящее время она работает на 2 серверах, но вы были предупреждены об использовании на свой страх и риск.

Любые вопросы или комментарии, пожалуйста, не стесняйтесь связаться со мной, используя контактную форму на моем сайте www.cgdesign.net

-Крис

cglavan
источник
Вы хорошо раскрываете свою принадлежность к продукту. Будьте осторожны, мы вообще не ценим продажи.
Скотт Пак
0

Вы должны ограничить попытки входа в систему, поэтому, если один и тот же пользователь пытается войти в систему более 5 раз, он блокируется от любых дальнейших попыток в течение нескольких часов или дня. По крайней мере, тогда они не могут перебрать логин после миллиона попыток.

И, как говорили другие, не разрешайте публичный доступ, если в этом нет необходимости. Вы можете ограничить доступ к набору известных IP-адресов, если некоторым людям нужен внешний доступ.

DisgruntledGoat
источник
1
Учетная запись уже отключена, она не может быть более отключена.
Мрденный
@mrdenny: я больше думал о не-отключенных аккаунтах для первого абзаца. Если кто-то грубо заставляет 'sa', он может легко начать с другого аккаунта. После 5 попыток заблокированной учетной записи просто заблокируйте их полностью.
Рассерженная шлюха
Сценаристы обычно атакуют только учетную запись sa, так как они уже знают имя пользователя. В противном случае им также приходится грубо форсировать имя пользователя, что занимает вдвое больше времени, и у них нет возможности узнать, существует имя пользователя или нет.
Мрденный