2009-03-20 4 views
2

У меня есть сайт asp.net на сервере и db MS SQL 2005 на другом сервере, последние несколько дней сайт показывает мне это сообщение об ошибке: «При установлении соединения произошла ошибка, связанная с сетью или экземпляром на SQL Server. Сервер не найден или недоступен. Убедитесь, что имя экземпляра верное и что SQL Server настроен на разрешение удаленных подключений. (поставщик: поставщик Named Pipes, ошибка: 40 - Не удалось открыть соединение с SQL Server) «Как остановить странных пользователей от попыток подключиться к моему SQL-серверу db?

Когда я открыл сервер БД, который я нашел в средстве просмотра событий, я обнаружил, что на сервере sql есть много логинов с ошибкой из странных IP-адресов, которые не являются нашими, я думаю, что они пытаются взломать db, Обратите внимание, что db является аутентификацией окна.

Мой вопрос: как остановить это?

+0

Есть ли причина, по которой есть внешний доступ на вашем SQL-поле? –

+0

Вы имеете в виду удаленный доступ? no –

ответ

9

Лучшее, что вы можете сделать, это запретить доступ к SQL-серверу вашего сервера на вашем брандмауэре. Запрос никогда не достигнет вашего раскола, и вам будет хорошо идти. Вы, вероятно, хотите, чтобы отрицать 1433 и 1444.

+0

, если доступ ограничен, то как вы можете получить к нему доступ, он говорит, что db находится на другом сервере. возможно, изменение значения по умолчанию –

+1

jvenema почти наверняка означало запретить доступ к внешнему брандмауэру, а не брандмауэру на машине SQL-сервера. таким образом, внутренний сетевой доступ все еще будет существовать, но более широкий Интернет не сможет подключиться к нему. – rmeador

+0

rmeador имеет это прямо на. Запретить доступ к внешнему миру; в этом вопросе явно говорится, что эти запросы поступают «от странных IP-адресов, которые не являются нашими», что означает, что существует известный допустимый диапазон IP-адресов. – jvenema

2

Ограничение IP-адресов или разрешить только некоторые Мака, искать хороший брандмауэр, который может предоставить вам эту функциональность

3

Вы хотите настроить брандмауэр, чтобы запретить любой доступ к SQL Server из внешнего мира. Вероятно, вы также захотите запретить доступ к вашему веб-серверу из внешнего мира на любом порту, отличном от 80 и 443 (используется SSL). В противном случае вы просто запрашиваете, чтобы ваши серверы были разбиты (если они еще не были).

Если ваши серверы находятся на другом сайте, чем вы или ваш офис, установите VPN-соединение между сайтами и серверами на сайт, чтобы вы могли напрямую получить доступ.

1

Звучит как компромисс или кто-то, по крайней мере, «возится» с уровнем или базой Web/Apps. Последний устраивает себя, если вы выставили экземпляр базы данных непосредственно в Интернет - я искренне надеюсь, что вы этого не сделали. Если да (отбросьте комментарий, и я буду следить за строкой) ..... кажется, что кто-то инициировал mulitple запросы на подключение к учетным записям принудительной регистрации. Если у вас есть политика паролей, которая реализует блокировку, то они, скорее всего, сбили ее. Учетные записи SQL? Хм, если бы я, я бы попробовал «са» для начала. Разве это не веб-экземпляр, который не может найти базу данных?

Оформить заказ принципов с сайта Chip Andrews http://sqlsecurity.com. Кроме того, заблокирован ли IIS Config и подсистема Windows O/S?

Следующие шаги .....

Как ваш ASP приложение/веб-уровня вклиниться в SQL фоновым? Через хранимые процедуры или SQL на лету? В любом случае все еще есть возможность для неправильного использования.

Например, в SQL2005 более интересные хранимые процедуры, такие как xp_cmdshell, отключены. Если вы не удалили DLL из системы вы можете включить их, то есть

Exec sp_configure «показать дополнительные опции», 1 Exec sp_configure перенастроить Exec sp_configure «показать дополнительные опции», 1 Exec sp_configure «xp_cmdshell», 1 exec sp_configure reconfigure

И если у вас есть SQL на лету, ознакомьтесь с Методами валидации ввода, рекомендованными на этом сайте.

Есть ли области загрузки, предоставляемые сайтом?

Если вы внедрили Windows Integrated Auth, если кто-то попал на ваш SQL-сервер с помощью интерфейса, представленного косвенно через Web/App, они могут установить себя как Администратор домена и владеть всем имуществом Windows.

Cheers. BTW На передней панели IP ..... FYI http://www.ripe.net/ в Европе и ARIN в США (также samspade.org) могут помочь определить эти IP-адреса источника изгоев. Возможно, вы не сможете много сделать с информацией, если эти IP-адреса зарегистрированы в одном из крупных поставщиков услуг, таких как BT в Великобритании, но вы никогда не знаете

Смежные вопросы